New Year New Blog
This blog has had many forms over the last couple of years. I love trying out new technology and platforms but I find myself always coming back to Hugo. In 2024, this blog was hosted and published via ghost which is a fantastic platform but didn’t quite fit the bill for what I wanted. You can self-host or pay ghost to host your blog for you, each come with pros & cons. For anyone who just wants a blog with minimal effort, I recommend supporting ghost over alternatives like Medium or WordPress. In the end, I couldn’t get the best of both worlds for my use case so I am back at home with Hugo which is by far the most flexible and easily customizable out of the platforms I’ve tried:
- Markdown
- Static pages without relying on JavaScript
- Extensible without being overbearing
- Automatic deployment via GitHub
Jekyll gets an honorable mention as I’ve used that in the past, however relying on Ruby for anything always ends up with something broken. The added complexity was never justified for my needs.
It was easy exporting my old posts from ghost to json (https://[blog].ghost.io/ghost/#/settings/migration
) and use the tool ghost-to-md to convert the exported json file into individual markdown files for each post. The results required quite a bit of cleanup, but it was much better than moving translating everything over manually.
My preferred workflow for deploying static sites is to install Hugo locally for testing, deploy changes to GitHub and then tie the repository into whichever cloud provider platform I am using. Whenever I make a commit to the master branch, it automatically is deployed and live in seconds on the web.
Perhaps the most important part was finding a good theme to work off of. The great thing about Hugo and many other static site generators is the flexibility of theming. If you find a theme that resembles the general look you desire, it’s trivial to tweak it for your exact needs. I came across Sidharth R’s Hugo Blog Awesome which looked like the perfect starting point.
I made a fork of it so I could start making my modifications and then added my fork as a Git submodule to my site’s repo. This allows me to separate my work on the theming with the site’s actual content and handle branches and commits independently of each other. You can see my customized theme here: https://github.com/CynicalSignals/cynical-blog-awesome/. If you’d like to compare my customizations with the original theme’s author, you can check out Sid’s site here: https://hba.sid.one/.
I hope to keep the momentum going this year.