Skip to content
← Home

Colophon

How this site is built.

Next.js and MDX, deployed on Vercel, with the articles kept as Markdown files in the repository rather than in a CMS. Code samples are highlighted at build time, so nothing has to boot a syntax highlighter in your browser to show you ten lines of YAML.

Diagrams are written as D2 source and compiled to SVG ahead of time, one file for the light theme and one for the dark, which is what lets them match the surrounding typeface and respect the theme toggle rather than your operating system. They render as plain images and ship no JavaScript. The article covers are drawn, not generated, which is a slower way to do it and a better one.

Every page has a plain Markdown twin. Add .md to any article URL, or send an Accept: text/markdown header, and you get the source instead of the markup. There is an llms.txt mapping the site and an llms-full.txt carrying the full text of everything in one file. Some of that is for agents and some of it is for me: writing worth reading should be readable without a browser in the way, and a page that an agent can parse is usually a page that a screen reader can parse too.

There is no database. Posts are files on disk, the feed is generated when it is asked for, and the only piece holding state is the newsletter list. Contrast, focus states and heading structure are held to WCAG AA, which is partly principle and partly the same observation as above: the structure that helps a screen reader is the structure that makes a page legible to anything else reading it. If something here is broken in your browser or your reader, I would rather hear about it than not.

The terms the articles lean on are collected in the glossary.