Are Jekyll and Static Site Generators Easier to Use?

jekyll logo white

While researching my article on Healthcare.gov, I had the chance to dig deeper into the open source technology behind the site.

I tested Jekyll, which created most of the pages for the Healthcare.gov site.

Jekyll creates “flat sites” that don’t use a database.

In theory, database-free sites should be easier to use. Without a database there’s less to set-up and less to manage.

In practice, is it really easier to use Jekyll than a database-driven software such as Joomla, Drupal or WordPress? Read on and find out.

What is Jekyll?

Jekyll is, by some counts, the most popular way to generate static sites.

Certainly, according to http://staticgen.com, Jekyll is the most actively developed generator on Github. It almost certainly helps that Jekyll drives http://pages.github.com.

media_1381258705477.png

What does a Jekyll site look like? It can be as simple as this:

media_1381265097221.png

The whole site is built around that _config.yml. It’s similar to Drupal’s settings.php, Joomla’s configuration.php and WordPress’ wp-config.php. Everything from permalinks to the site title are placed in that _config.yml file.

Because there’s no database, all of the content is also stored in files. Inside the /_posts/ folder. Your content is strored inside markdown files with the .md file type. You can write this files at a different location and publish the posts by simply uploading the file.

media_1381265208970.png

Here’s what a simple post looks like:

media_1381265302349.png

Here’s a more complex example taken from Healthcare.gov:

media_1381265373075.png

How simple was Jekyll to use?

For me at least, getting started with Jekyll was not easy.

I tried to install Jekyll on my Mac which runs Mountain Lion. All told, it probably took me a day of effort to produce a broken site on my computer.

The first problem was the lack of clear documentation.

The whole Jekyll site is than 40 pages in size and the documentation was too short to be useful: http://jekyllrb.com/docs/home/

There are no books on Jekyll. The best I could find was a $15 and 55 page e-book by Andrew Munsell.

Andrew does also have one of the best tutorials I could find online, “Learning Jekyll By Example“. That was about the only clearly explained set-up guide that I could find.

However, that tutorial still left me short of a finished website. To get a (broken) Jekyll website live, I relied on downloading the source files from this Nettuts tutorial. Even that site mainly consisted of broken pages.

Part of the difficultly with Jekyll is that there are at least 4 skills you need to learn first, before you can tackle Jekyll:

  1. Using the command line
  2. Installing Ruby
  3. Installing RubyGems
  4. Using a package manger such as http://bundler.io

I admit to having a mediocre command of all four, so that put me behind the curve with Jekyll. My job is figure out how things work and explain them to people, but I’d need a lot more time to wrap my head around Jekyll.

If the technology stack was complicated, I did really enjoy the editing. The Healthcare.gov team used Prose.io to write content.

If you visit Prose.io and authorize it to use your Github profile, you’ll be able to browse your Github project using the Prose.io editor.

media_1381265559306.png

The Prose.io editor is actually a beautiful experience, available directly in the browser. It’s the best markdown editor I’ve ever tried and of course, it connects directly to Github.

media_1381265626769.png

What’s the future for static site generators?

So will Jekyll, or any similar system, become a popular alternative to WordPress, Joomla or Drupal?

No, not with the installation process as it is now. Jekyll won’t provide simplicity for anyone except serious, experienced developers.

I suspect the same is true for all of these static site generators.

Even Ghost, which is perhaps the most famous static site generator, has been criticized for being too hard to use. Ghost relies on Node.js which isn’t an option provided by most hosting companies. “Not ready for prime time” is the verdict from my friends who have tried it.

There is a real, pent-up demand for simpler web software.

However, the only static site generator I’ve seen that currently provides simplicity for ordinary users is Dropplets.

What’s your experience been with static site generators? Have you found any that you can strongly recommend?

Instructor

  • Steve is the founder of OSTraining. Originally from the UK, he now lives in Sarasota in the USA. Steve's work straddles the line between teaching and web development.

0 0 votes
Blog Rating
Subscribe
Notify of
10 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Dan Knauss

[url=http://Staticgen.com]Staticgen.com[/url] doesn’t list any PHP-based flat file CMS even thought they exist in Github too. Dropplets and Leeflets are both good ones suitable mainly for small sites at this point. For larger projects Statamic or Kirby are the ones you should look at since you won’t have the problems you ran into with Jekyll and heard about with Ghost. Ruby and Node.js do take them out of the reach of the common user. Kirby is on Github and so are Statamic-related projects but not the core product. Dropplets and Leeflets may still be closed projects. All you have to do is ask to get into them.

steve

Thanks Dan.
Dropplets and Leeflets were very impressive but I’ve not tested Statamic or Kirby. They’ll be coming to a blog post soon …
Certainly documentation like this is appealing:

[url=http://www.statamic.com/learn/installing-and-updating/installing]http://www.statamic.com/lea…[/url]

Copy the files to the web root and Statamic is installed.

Dan Knauss

Yes, exactly! I should make it clear that Statamic is currently an inexpensive, extensible commercial CMS with per-site licensing much like Expression Engine but considerably cheaper. It’s PHP and stores content, settings, etc in YAML files. Their first commercial extension (Raven, for custom forms) is licensed and sold separately. A store for free and commercial add-ons and other stuff is still in development. They have really great teaching resources. It is NOT open source, but I think they are content to enforce their license by denying updates to sites without a valid license key as opposed to source code encryption and other intrusive nonsense.

steve

Thanks. Interesting stuff and all new to me.
I wonder if at some point, after the store is ready, they’ll switch to a free core with commercial add-ons.

Dan Knauss

They seem to be developing their business model improvisationally, so this may be a possibility. Right now it would make sense for them to stop selling a “license for life” and sell monthly/annual subscriptions with the first month free. Even if they had a live demo (which they don’t) they need a limited time license that allows people to get a first impression and then take it further. That would give them a great sales funnel and contact point with new users too, plus a definite monthly/annual revenue figure that will tell them constantly how pleased the customers are. Shifting to a free core product would only make sense if their goal is to fuel growth of their userbase once they feel confident it will pay off in the extension market. They’d also have to be content with the prospect of competing with their third party developers and/or monetizing them too which can make for a lot of fractious politics if rules and expectations aren’t clear from the start and remain fairly stable over time.

wafiq

Ghost is not a static site generator as it uses a database, sqlite if im not mistaken. Also i believe the term generator refers to actual generators i.e Jekll, Middleman, Hyde, Harp … and the list goes on. As of Dropplets i think it falls under being a flat file CMS like Statamic and leeflets used for creating and managing static websites (without the extra generating and the command line) please correct me if im wrong.

Dan Knauss

Right, I was just mentioning Ghost in relation to its installation difficulty level — sorry it was a bit confusing to bring it up in the context of the flat file CMSs.
Just happened to be testing out [url=http://brace.io]brace.io[/url] now — seems to be a flat file hosting system providing a staging to production interface for your Dropbox account cloned to Amazon’s cloud.

Guest

Ghost is not a static site generator as it uses a database, sqlite if im not mistaken. Also i believe the term generator refers to actual generators i.e Jekll, Middleman, Hyde, Harp … and the list goes on. As of Dropplets i think it falls under being a flat file CMS like Statamic and leeflets used for creating and managing static websites (without the extra generating and the command line) please correct me if im wrong.

andrew-eddie

A year on and the answer to the original question is, yes, they, well Jekyll is still hard to use, but Github pages are getting better. It’s not unlike using a CMS in that there’s an off-the-shelf path to follow, and there’s an under-the-hood path which inevitably turns into a rabbit hole.
As for myself, I’ve just about completed moving my two Joomla sites to Jekyll (see [url=http://eddify.me]http://eddify.me[/url]) and I’m more than happy with the result. The site is light, blazingly fast, reliable and most importantly immune from hacking (at least the kind you are used to with Joomla). Initial setup took a significant investment of time (it’s very hands-on), but new articles are now a breeze – write some stuff in Markdown, commit and it’s there.
Two big road-blocks I hit were the contact form and search. I solve the first with Wufoo. I’ve still not really resolved the second although GCSE does provide “something” that works.
I think there’s an interesting opportunity for a business to put an layer over the top of Github to allow a Github pages site to be managed more like how you’d do a traditional CMS, basically replacing the MySQL database of content with a git repository. Such things would hopefully give the Jekyll theme market a very necessary boost.

David Silverman

I just had my first Jekyll site built for me. It’s many years since some of the comments on this post and site speed is now more relevant than ever given 50%+ of web use is now on mobiles. Speed really is the “killer reason” to try a Jekyll solution for your next web development. WordPress, which designer after designer kept pitching to me, really is bloated and slow compared to what the web really needs right now. Web.dev makes this issue very transparent. I doubt many WordPress websites will get near to 80 on performance, whereas my new Jekyll site scored 96 and achieves a first contentful paint in 1.3s. Rock on Jekyll and it static site generator cousins!

10
0
Would love your thoughts, please comment.x
()
x