Rebuilding the blog

This is me upholding the web developer meme of rebuilding my personal site, and writing about rebuilding my personal site!

My main motivation was to add a micro blog with tags, so I’d be incentivised to write short posts instead of long ones. But along the way I did achieve some secondary goals too:

Designing the URLs:

I spent way too long thinking about URLs. Previously, it was just:

/ → homepage
/blog → list of posts
/blog/:post-slug → a single post

I wanted to separate my “long reads” which are less time-oriented, from my new microblog which is more timely. So I ended up with:

/ → homepage
/:article-slug → just straight into an article
/:year → full content of microblog posts in year
/:year/:post-slug → a single post which happened in year

I like this because:

I also added tag pages at /topic/:tag-slug so I can share the whole story of a single topic on one page.

Hosting:

I stayed with CloudFlare Pages because of their green hosting and very snappy deployment pipeline.

Migrating content to 11ty:

Getting my existing blog content into Eleventy was pretty straightforward. There were a few small hiccups, like configuring a different markdown processor to linkify my headings correctly.

Working with Eleventy’s content system was different to the very post-centric workflow I was used to. It seems good though! I’m interested to see if I can bend it to more shapes, like adding book reviews and a sketchbook, like Tom MacWright’s site.

To be done:

Thoughts so far:

Learning Nunjucks to create HTML templates was… let me just say, it’s been a long time since I used a templating engine that wasn’t Blade, and I much prefer it when they just let you embed the host language instead of coming up with their own expression language. “Filters” for everything feels very 2005.

I think I’ve abused the content system frightfully to create a collection of years to generate my blog post year pages from. That may need to be revised…

or, I could just write more blog posts and not worry about it!