I’ve tried blogging on various platforms throughout the years but I never really settled on something I really liked. My last blog was a private one that I never really shared with anyone on the free tier at write.as. While I liked it for its simplicity, it never really felt like something I wanted to maintain in the long term because it never really felt like it was “mine”. My write.as blog has been fairly dormant over the last few months and I haven’t been sure if I wanted to go back to it.
Yesterday, I had the itch to write a blog post about a recent project I went through. In the moment, I really wanted to do blogging “on my terms”; I wanted to really own it. I’d always toyed with the idea of setting up a blog through a static site generator with my own custom domain in my mind and I decided in that moment that I wanted to give it a go. Jekyll is something I’d tried in the past using the native GitHub Pages integration for non-blogging purposes but I never really “got it” probably because I depended too much on the native integration. After reading a few posts on what static site generator to use on /r/selfhosted, I thought Hugo looked pretty good.
What I like about Hugo
- It produces static webpages which are essentially hackproof.
- Formatting can be done through Markdown.
- It works on top of some technologies that I’m already famliar with (i.e. Git, go templating, YAML manipulation) which gives me another opportunity to practice them.
Some downsides?
- Apparently the documentation is really horrible? A lot of comments I found on this are from a few years ago so things may have changed. I haven’t had to look at the offiical documentation just yet.
- My setup with Hugo is largely dependent on Git which means I cannot publish easily whenever I want. I could probably build something CI/CD-related to improve this. I’ll leave that for later.
My current setup
I have two Git repositories hosted on Codeberg; blog-source and blog-static. The former has the Hugo files and the latter holds the current state of the statically generated website which I manually copy and push to. I have the blog-static repository set to use the pages
branch to activate the Codeberg Pages feature which is a similar offer to GitHub’s GitHub Pages.
Closing remarks
Overall, I quite like how my blog is set up. It’s quite manual for now and the foreseeable future but I like that it makes me sit down and do things through the tools I’d like to be using more. I really like that I can use my own domain name as it adds a real personal touch to it.