Colophon

A large collection of tools laid out on a surface.

My web site is one of my favorite yaks. There are many like it, but it is mine.

I build it as a static site published on a small machine hosted by Tornado and ultimately served by Bunny CDN. Content & compiler source in Git with assets tracked by git-lfs, hosted via soft-serve (a lovely, self-contained Git + git-lfs self-hosting solution).

Text type is set in Inter and headings in Space Grotesk, both variable fonts to improve typographic flexibility and decrease page weight. I use Fira Math for MathML (some pages render math with KaTeX, which uses its fonts) and Hack for code / monospace text. The color scheme is my own scheme inspired by Flexoki and developed with Atmos. Assets are tracked by git-lfs, hosted via soft-serve (a lovely, self-contained Git + git-lfs self-hosting solution).

The compilation process is a pile of custom TypeScript running on Node.js. The major libraries I use include:

One of the particularly cool features of this setup is my publication pages: each publication has a page written in Markdown; YAML metadata in the page serves as single-source-of-truth for my publications across the whole site. My CV is updated from this data, as is my publication list and other places where publications show up (project pages, blog posts, etc.). Citation statistics are automatically updated nightly.

I use Typst to generate my CV, using citation data extracted from publication pages. Those pages serve as single-source-of-truth for publication data across my entire website and CV.

Icons are from the excellent Noun Project.

I don’t make the Git repository and history of my website public, but am happy to share upon request with people interested in seeing the code.