How this site is put together
I wanted this site to be fast, simple and mine to maintain for years without babysitting a server. Here’s the short version of how it works.
The stack
It’s built with Astro and compiles down to plain static HTML, CSS and a sprinkle of JavaScript. There’s no server runtime and no database — just files. That makes it cheap to host and quick to load.
Writing in Markdown
Every post — including this one — is a Markdown file. The site reads a folder of
.md files at build time and turns each one into a page. To publish, I write a
file and rebuild. That’s the whole workflow.
src/content/blog/
welcome-to-my-site.md
building-this-site.md ← you are here
Design notes
A few things I cared about:
- Typography first — one characterful heading font, one readable body font.
- A restrained palette with a proper light/dark mode.
- Gentle motion — content fades in as you scroll, and nothing more.
- Accessibility and speed — semantic HTML, keyboard-friendly, tiny JS.
If you’re reading this on the live site, that’s all of the above doing its job quietly in the background.