Building a Blog with Astro

Recently I rebuilt this blog with Astro, and the experience has been smooth. The default zero-JavaScript output keeps pages light, while content collections make Markdown posts feel structured without adding a database.

Why Astro

I have tried a few frameworks for personal sites, and Astro’s content collections are the part that fits this blog best. Markdown files stay in src/content/posts/, but the site can still query them with type safety.

Details That Help

Static generation makes the pages naturally fast. Code highlighting uses Shiki, and the default setup is already enough for a clean writing workflow.

import { getCollection } from "astro:content";

const posts = await getCollection("posts");

If you want a small personal blog with good performance, Astro is worth trying.