Colophon
How this site is built.
Updated
Built with
- Astro, as a static site: every page is HTML built ahead of time, with small scripts for the parts that move or respond.
- Hosted on Vercel. The only code that runs on a server is a small function that sends a first visit from a browser set to Japanese to the Japanese pages.
- Search on Writing uses Pagefind, which builds its index along with the site.
- The link-preview images are generated when the site is built, with Satori and resvg.
- Email for new articles goes through Buttondown.
- Visits are counted with Vercel Web Analytics, which reports aggregate figures without third-party cookies, and page speed with Vercel Speed Insights.
Type and colour
- English text is set in Geist, with Fraunces for headings, Geist Mono for code and Caveat for the odd handwritten note.
- Japanese text is set in Zen Kaku Gothic New, with Shippori Mincho B1 for headings and Klee One for handwritten notes.
- All seven are open-source fonts (SIL Open Font License), served from this site.
- The palette is called “Ai & Sand”: indigo (藍, ai) and warm sand, with persimmon (柿, kaki) and vermilion (朱, shu) for accents.
How it’s made
I built it with AI coding agents (mainly Claude Code), working from a written specification that I drafted myself and refined with AI before handing it over for implementation. Each milestone was a pull request: the agents built it, automated checks ran (tests in two browsers, accessibility and speed audits, and scans for broken links and exposed secrets), and I reviewed, tested and merged it. It’s a similar process to what I use on client work.