I've been poking around at running my blog(s) for a while, and I've tried various approaches with limited success.
I've used Wordpress in the past, and I while I love having lots of knobs to tune and plugins to install, that's not what I want to spend my time doing.
I want to keep it simple this time -- no databases, no comments, no plugins. Just a blog engine that's lightweight, fast, and simple to use.
I spent a lot of time getting something working using
pandocomatic, as it was appealing to write my blog articles once in Markdown and then be able to generate many types of content -- HTML, PDF, LaTeX, and so on. I had a crazy idea that every blog post/article would have an automatic "view as PDF" link because I could.
But it was too much to learn, with too many moving parts (
pandoc-sidenote), and required having a terminal window open to regenerate the website after every edit.
I'd read about people a lot of success using
pandoc for their scientific papers for publishing, and while I do think it's well suited for that, that's a much different type of writing than blogging.
Yes, you can use various tools to simplify things, like
entr to automatically detect file changes and regenerate the website. But the point is that you're still having to do those things even after you've wrapped them in various homegrown scripts and digital-duct tape. And that doesn't include all the effort to then publish to your website.
Why not let someone else take care of the publishing, and static-site generation, so I can focus on content?
Nope. I was still working in a terminal, writing Markdown (which isn't a problem), and then doing
git add -A && git commit -m "added blog entry" && git push.
I realized I didn't like the constraint of only being able to blog when "working" at my computer. I already do plenty of Git for my normal job, I don't need to add it to my writing.
And it's not self-hosted anymore, which is scary to give up that much control of your website. All it takes is Github not liking something I do and my account becomes suspended and my website is gone.
zola is a very lightweight and fast static-site generator. It's written in Rust, which compiles into a single binary so it's trivial to install. I was going to commit it directly into my websites' Git repo so it would always be available to build the website no matter where I cloned the repo to.
But then I realized, no matter how awesome
zola may be, I was still doing what I hated -- working in a terminal, doing
git commands, and using homegrown scripts to publish.