Open source 2026
This site
A hand-built personal site with two personas, a command palette, and no framework on the client.
The brief I gave myself: a site that feels designed, loads instantly, and never needs a client-side framework.
Decisions
One accent per persona. The site has a Work mode and a Life mode. Everything stays near-monochrome, and the only thing that changes between them is a single accent colour and a few lines of copy. The switch is a real view transition, so the whole page crossfades rather than flashing.
Type does the heavy lifting. Geist for text, Geist Mono for metadata, Instrument Serif for display. Motion is limited to entrances: letters blur in, hairlines draw across, annotations sketch themselves under words. Everything respects prefers-reduced-motion.
Navigation for keyboard people. Press ⌘K anywhere to jump to a page, a post, a project, or to flip the theme. It is a few hundred lines of plain TypeScript, not a dependency.
Content is files. Posts and case studies are Markdown with a typed frontmatter schema. Adding a project is adding a file.
Stack
Astro 4 with static output, zero client JavaScript beyond the palette, theme logic, and scroll reveals. Deployed on push.