This blog has been up for more than two years. Although the contents and looks have changed several times, one thing remained the same all this time: It ran Wordpress

The problem with Wordpress

I started with Wordpress because it was what I knew and stayed because it was everything that I needed at the time. I was able to create themes and plugins for my needs. I had support for all these awesome plugins and everything that pretty much allows you to do anything that most other platforms provide. Whatever it did, there was something that didn’t feel right (At least to me)

Maybe I did not like the way Wordpress treats me. It made me feel more like a consumer than a creator with all its fancy plugins, email signups, and whatnots.


A few months back, I tried Gridsome. It looked amazing at first (me being a Vue person). I can’t put my finger on it, but It didn’t feel like it would suit me.

It felt the same way when I tried to cook up my own Nuxt js based solution using @nuxtjs/markdownit

I haven’t given Jekyll a try yet (for no particular reason)

Enter Hugo

I had been carefully avoiding Hugo for some time now. I’ve seen it used here and there. My good friend Subin ran his blog with Hugo. Each time Subin post something, it kept reminding me that Hugo exists.

Although the content is super rad, Subin’s blog looks like the opposite of what I want. It is not precisely the minimal tech blog design I have in mind (sorry, Subin 😆).

Knowing Subin, I thought Hugo would be something for the people who wants to experiance some pain in their life every now and then.

But boy, was I wrong! Hugo was exactly the kind of thing I would’ve built if I were to make a blog plat thing.

So here’s what happened:

  1. I install Hugo
  2. I create a Hugo project using the CLI
  3. I realize I need a theme to start
  4. I download and add the Ghostwriter theme
  5. I start tweaking the theme
  6. 2 days later, Completely switched the blog to Hugo

Everything from creating a project to creating the theme felt very “familiar.” This thing had support for a lot of cool features out of the box. And addressing the elephant in the room - It’s built with Go!

If you’ve never heard of Go, then shame on you! But Hugo doesn’t mind that. I’ve built this blog and messed with themes, custom shortcakes, and config, and I have not seen a single line of Go.

Themes and Customizations

Editing and Modifying a theme is pretty straight forward, Hugo has a built-in templating language. Everything else is just HTML and CSS

And as for themes, Hugo has a theme gallery with a long list of themes (All of them open-source).

The theme I’m using is a heavily modified version of Ghostwriter theme from the Hugo theme gallery.

Hugo has already a great collection of themes. Here are the best hugo themes I can find. And all of them are free.

Hugo might not be for everyone

And btw, did I mention? It might not be the best option for you.

Hugo might be “The world’s fastest framework for building websites” out there. But it doesn’t have nearly as much as features as something like Gatsby with all its javascript goodness.

Maybe you do not want a static site at all. You might want some server-side magic to complete your thing, or you might even hate markdown.

As I’m writing this Hugo is still only at v0.68.3