This Site

A personal site with an unusually narrow set of goals: load instantly, stay readable for a decade, and be completely legible to anything that crawls it — search engines, feed readers, and the retrieval pipelines behind AI assistants alike.

How it is built

Astro, generating static HTML. No client-side framework, no hydration, and no JavaScript at all except on the search page, which loads none of it until you arrive there. Type is set in Georgia with a Times fallback, so there is not a single webfont request on any page.

Essays live as Markdown files with typed frontmatter, which means a malformed date fails the build instead of quietly shipping a broken page.

What it emits

Every build produces, alongside the pages themselves:

  • a sitemap and a full-text RSS feed — complete essay bodies, not excerpts
  • an llms.txt map of the whole site, generated from the content rather than maintained by hand
  • Person, WebSite, BlogPosting and BreadcrumbList JSON-LD, linked into one graph
  • a Pagefind index, so search runs in the browser with no backend and no query ever leaving the device

Hosting

Cloudflare Pages, chosen mostly for what cannot happen: bandwidth is unmetered on every tier, so an essay finding an audience — or getting scraped hard — can never produce a bill.

Edit notes

2026-08-18. Added a set of design spells, all of them pure CSS.

Pages now crossfade instead of blinking white, and an essay title morphs from its spot in the list into the headline on the page itself, using native View Transitions.

Dark mode is automatic. The Ink palette inverts when the reader’s OS asks for dark, so the site matches the machine it is being read on without a toggle, a cookie, or a flash of the wrong theme.

There is a scroll-driven reading progress line at the top of every essay, and list items rise into place as they enter the viewport. Both are driven by scroll timelines in CSS.

The rule for all of it: zero JavaScript, zero new requests, nothing a crawler can see or trip over, and everything switched off under prefers-reduced-motion.

2026