Web
Article

6 Static Blog Generators That Aren’t Jekyll

By David Turnbull

In a previous article, I compared WordPress, the world’s most popular blogging platform, with Jekyll, a less-conventional approach to blogging whereby you create all of your content inside local text files before running a command to generate a purely static version of your blog. Jekyll has a range of benefits:

  1. You have far more control over every aspect of your blog.
  2. Since there’s no database involved, the performance is unbeatable.
  3. Many find blogging from their desktop to be more intuitive.

But while Jekyll is by far the most popular static blog generator, and it’s the one I recommend for first-timers, there are many to choose from.

Let’s talk about some of the most interesting alternatives.

1. Middleman

middleman

Jekyll has become increasingly flexible with each release but, at its core, it encourages bloggers to follow a precise set of conventions. This is a big part of its user friendliness but some might find it limiting.

If, after playing around with Jekyll, you find yourself wishing that it had feature X or Y, check out Middleman. It’s built upon the same language — Ruby — but, right out of the box, it’s far more flexible.

Here are a few reasons to love Middleman:

  1. While there’s a “Blog” module, you’re not confined to sticking with the basic structure of a blog. You can build much more complex websites.
  2. There are plenty of great plugins available, like sitemap generation, image optimization, local gzipping, and all sorts of deployment solutions.
  3. An incredible amount of functionality and flexibility can be found within the main configuration file.

But since Middleman can do a lot more, it’s also trickier to get a handle on, compared to Jekyll. It’s not overtly difficult, but you will have to spare a little extra time and attention to manipulating it to your will.

2. Hugo

hugo

A common problem amongst static blog generators is the time it takes to actually generate the static files. Because while dynamic blogs are generated on the fly, a static blog is generated all at once. For a small blog, this is fine. The bigger a blog becomes though, the more frustrating it can become.

Some generators, like Middleman, offer incremental generation. This stops the entire blog from being generated every time. Instead, only the parts that have changed are generated. (Unfortunately, Jekyll doesn’t have this intelligence.)

If you’re looking for sheer performance though, Hugo is your best bet. It’s no slouch in terms of features, but its biggest draw is that it’s built with Go — a language famous for its speed. If I were starting a blog with a frequent publishing schedule and the expectation of thousands of pages, I’d choose Hugo.

3. Hexo

hexo

When I’m not writing for SitePoint, I’m working on a blog about the Meteor JavaScript framework, and when putting together that blog, I decided it would be nice to maintain a consistent tool-chain. If I was to be writing code with JavaScript, and writing about JavaScript, then perhaps I should generate my blog with a JavaScript-based tool?

Ultimately, the Ruby-based Middleman generator proved to be the better fit, but of the JavaScript-based options, Hexo was a strong contender. It’s quite fast (although not as fast as Hugo) and a great choice for fans of JavaScript.

4. Pelican

pelican

I’m a Ruby enthusiast, so tools like Jekyll and Middleman are attractive to me. If, however, you’re a Python aficionado, then your preferences are well-catered for in the form of Pelican — the most popular static blog generator built with Python and the third most popular overall.

It comes with all the standard features:

  • Generation of Markdown-based blog articles and pages.
  • Syntax highlighting for code snippets inside your posts.
  • Automatic creation of an RSS feed.

But because of my leanings toward Jekyll, the only significant reason I’d recommend Pelican is for people who already develop with Python.

5. Metalsmith

metalsmith

Metalsmith is easily the “weirdest” blog generator on this list but I mean that as a compliment. Here’s a basic idea of how it works:

  1. The core of Metalsmith itself manipulates files within a folder.
  2. Various plugins are used to define how these files are manipulated.
  3. Plugins can be chained together to create different results.

Since it’s a little tricky to explain without a number of examples, looking through the official website is the best way to “get” how cool this approach is. It won’t be what everyone needs, but it’s certainly clever.

6. Octopress

Octopress

Okay, to suggest that Octopress is distinct from Jekyll is a little disingenuous. In reality, Octopress is based on Jekyll. Out of the box, it simply has a range of extra functionality and a different default theme.

Personally, I prefer working from scratch with vanilla Jekyll. That way, my blog will have nothing more than exactly what it needs. If you’re looking for a quick-start option though, Octopress has you covered.

Conclusion

Obviously, people looking for a static blog generator are not starved for choice. This isn’t even an exhaustive list, either. There’s dozens of other options I haven’t covered. These six, however, are the most interesting to me, and they’re a great place to start. Feel free to make your own suggestions in the comments though. I’m always curious to play around with other software.

More:
Comments
cpradio

I've actually started using Pelican for a few of my blogs and I must say, I love it over WordPress. There are a couple of things I want to build into it, but so far it has served me very well.

rduinmayer

What about Bolt.cm ?

I am running it on a few sites. And i think it's awesome. Focus on content and forget about the rest.

It works splendid and you don't need that, ruby, gem scr*p wink

Just drag the files to a server, login and done.
- no db. no gems. etc

cpradio

Except Bolt doesn't seem to be a static site generator. It seems every request will hit the database where your content is stored... (unless I missed something on their website).

railto

Maybe you need to do a bit more research, Octopress is based on and uses Jekyll for generation, it is simply a framework built on top of Jekyll. You should also have a look at sculpin.io which is built in PHP. I use it for my personal site and found it much easier to work with compared to Octopress.

ralphm

This was pointed out in the article. smile

That's included in the comprehensive list of other options provided at the end of the article.

ladislavsulc

What about assemble.io + www.ghost.org? A very important one that should be in the list. Either way thanks for the article! Github for OS Ghost Blogging platform: https://github.com/tryghost/Ghost

Recommended

Learn Coding Online
Learn Web Development

Start learning web development and design for free with SitePoint Premium!

Instant Website Review

Use Woorank to analyze and optimize your website to improve your website to improve your ranking!

Run a review to see how your site can improve across 70+ metrics!

Get the latest in Front-end, once a week, for free.