When I first built this website as a high school project, publishing anything longer than a heading involved editing layout code by hand. That works exactly once, after which it becomes the reason nothing ever gets published.
So now there is a real system. Each post is a single TypeScript file in src/lib/blog/posts/, exporting a typed object with a title, a date, an excerpt, and body paragraphs. The feed on the home page, this article page, and the previous/next links at the bottom are all generated from those files at build time, so the site stays fully static.
The structure is borrowed from a timeline site I liked. It's been trimmed down to the essentials but I think I nailed the layout