Why Build a Blog from Scratch

This post was machine-translated from Chinese. Read the original
There are plenty of off-the-shelf blogging systems. With Hugo, Astro, or even a Notion page, you can go live in ten minutes. But the goal of this blog isn't "to have a blog." It's to walk through the entire Web stack, end to end.
There Is Only One Rule
If a feature can be outsourced, deliberately build it yourself:
- Comments: stored and moderated by me, with commenters signing in through GitHub OAuth
- Auth: admin login uses a session system I implement myself, rather than a third-party service
- Search: full-text search with Postgres
tsvector - Counting: view counts live in Redis

Roadmap
The project is split into six phases, and each one must be deployable by the time it ends:
- Frontend: design tokens, layout, homepage list, article page
- API: Hono + Drizzle + PostgreSQL
- Admin dashboard: login, editor, drafts and publishing
- Rendering and caching: ISR, notifying the frontend to revalidate on publish
- Comments, view counts, full-text search
- Engineering: Docker, CI, VPS deployment, logging and monitoring
The blog is the vehicle; learning is the goal.
What you're looking at now is the output of phase one: all the articles are still local mock data.

Comments