All posts

My Third Blog

On this page

My first blog template: Swallow

My first blog took inspiration from a blog I found abroad. I built it with Gatsby 2.0, and it lived at yuzhouu.github.io/swallow/blog.

It was a real pain to work with, largely because of Gatsby's architecture. Even a little customization meant learning its plugin system, GraphQL, and more. I wasn't familiar with GraphQL at the time, and I also wanted to customize how Markdown worked, so there were plenty of hurdles. Still, something good came out of it: I made a swallow logo in SVG and even got it to move. 👏🏻

I eventually abandoned this template for two reasons: Gatsby was too complicated, and the upgrade to Gatsby 3.0 brought breaking changes and errors everywhere. I couldn't get the migration to work.

Now, whenever I build a new blog, I bring the swallow along to make its nest. Haha.

My second blog template: b2

Later, I came across @markdoc/markdoc, which made customizing Markdown syntax much easier. I put my Markdown files in a post folder, used JavaScript to read the directory structure and turn it into a list of data (much like Astro's collections), and rendered the blog with Next.js.

I never open-sourced this template, mostly because the UI was so difficult to get right. I wanted something flashy, but I didn't have much content, the look didn't really suit a blog, and I wasn't much of a designer either.

The main thing this blog left behind was probably automatic deployment with GitHub Actions. 🤦🏻‍♀️

And then came this blog

This blog was adapted from AstroPaper.

After using it, I can say that Astro is a really good fit for content-focused sites.

Looking back

I've come a long way over the years. It took me ages to figure out how to customize Gatsby back then (though Gatsby's complexity probably had something to do with that). Building this blog, including reading through the Astro docs, took less than a day.

Back to archive