Why You Should Choose Hugo

2 minute read Updated

In a sea of choice, which static site generator will you choose?

Many are familiar with the idea of static site generators like Jekyll and why they should use them. But Jekyll isn’t the only SSG out there. In fact, there are literally hundreds of SSGs guaranteed to give you analysis paralysis. With so many to choose from it can be difficult to decide which to use.

After trying a number of static site generators myself over the years, the one I’d bet the farm on is Hugo. Here’re a few of the reasons why I feel Hugo rocks the socks off the competition:

  • It has no dependencies. Once you get a hold of the Hugo binary you’re ready to roll. Many other static site generators require a complex environment with dependencies to run. For Jekyll, that means Ruby and RubyGems. For Hexo, Node and NPM. For Hugo, all you need is Hugo.

  • It’s easy to set-up. If you’re a macOS user, simply brew install hugo and you can instantly start building a new website with the hugo new site command. Hugo pre-built binaries are available for other platforms as well, including as FreeBSD, Windows and Linux.

  • It’s extremely fast. Unlike Jekyll or Hexo, which can take hours to compile a large site, Hugo can generate 5,000 webpages in under 10 seconds.

Update 10 Feb 2017: As of Hugo v0.17, when multilingual sites were introduced, Hugo site generation speed has – wait for it – doubled!
  • It’s very flexible. Unlike Jekyll, which was blog-focused until Collections were bolted on version 3 (albeit, in a very well thought-out way), Hugo was built from the ground up with freedom of content structure in mind. Use it to create a personal blog or even the next Smashing Magazine.

  • It’s easy to get started. To prove this last point I decided to create a theme for Hugo called After Dark. The initial theme creation process took about two days, and making it reminded me of the joys of coding for the Web circa 1995 – back when flying toasters were all the rage.

There are some downsides to Hugo – don’t get me wrong. For starters Hugo is built using GoLang and Go hasn’t been around as long. As a result it doesn’t not have as large of a community around it as more established SSGs like Jekyll. Additionally, you may find a few holes in Hugo’s documentation which is otherwise pretty great.

So what are you waiting for? Give Hugo a try. And while you’re at it check out After Dark for a culture jamming take on content publishing.