Type
The letters
- Space Grotesk
- Headings and display.
- Inter
- Body copy.
- JetBrains Mono
- Code, metadata, timestamps, and anything that wants to look like a terminal.
All three are self-hosted and subset, preloaded so the first paint does not shift.
Method
Who did what
- The split
- I built this site with Claude Code, and I’d call the split even.
- My part
- I planned it and reworked the designs. I directed the sessions, and I wrote most of the content myself.
- Claude’s part
- Claude did the development.
- Tests
- We wrote the tests together, and they did most of the checking, so I only had to read some of the code.
Build
Under the hood
- Native WordPress block theme
- No page builder, and no framework underneath it.
- Custom blocks
- The components are custom blocks, each owning one job.
- PHP
- Written with Claude Code, and held to the WordPress Coding Standards.
- Syntax highlighting
- Done on the server and cached at save time, so no highlighting library ships to the browser.
- Theme modes
- Dark only, and deliberately. There was a light mode and a toggle for it; removing them meant one design to get right instead of two, and it retired every contrast exemption the site was carrying, all of which were light-mode ones.
Principles
Rules I keep
- No layout that needs JavaScript to be correct.
- Nothing animated that cannot be turned off by a reduced-motion setting.
- Every measurement checked in a browser rather than assumed from the stylesheet.
Credits
Where the debt belongs
- The design research drew on a handful of personal sites whose About pages are better than most — the debt is in the structure, not the pixels.