Let’s try Zola

While looking for a new Hugo theme for baty.net, I realized that I don’t like how themes work in Hugo and am tired of fighting with it. I really don’t like the templating system, so I started shopping for a new SSG.

I poked a bit at Jekyll, but the whole Ruby gem ecosystem has caused me grief too many times. I could’ve gone with Eleventy, but if I never have to type “npm…” again I’ll be happier.

In walks Zola. Zola is built with Rust as a single binary with no dependencies. Yummy! Just like Hugo, but with a sane templating language. I tried Zola a few years ago but when I learned there was no support (or plans for support) for date-based permalinks, I bailed. I was getting tired of thinking about it, so I installed Zola, learned how to work around the permalink problem, found a template that might work, and got to it.

I had hundreds of posts with front matter unsuitable for Zola. Thankfully, Zola (reluctantly) supports YAML, but discourages its use. What I needed to do was change the tags format, move featured images into content, replace hundreds of “figure” shortcodes, and I don’t even remember what else. What I do know is that even with Claude’s help, it took me more than 5 hours.

I’m going to publish it, just to find where things are breaking. What’s missing so far are all the “journal” posts. I may get to those later, but maybe I won’t.

The theme is fine. It works well and I can tweak it if needed.

It was fun starting fresh with a new SSG. It forced me to clean up a boatload of inconsistencies and wonky front matter. There’s a lot left to do. Let me know if you notice anything broken. Or if you love it or hate it.