KK

Jekyll: Wordpress light for geeks

July 1, 2017

A lightweight website generator perfect for a narrow use-case


Wordpress is a web pillar

Wordpress.com sites have the fifth most unique visitors in aggregate. This success is thanks to how easy it makes standing up a static website, blog or storefront. With thousands of themes and plugins you can go from concept to production without hiring a developer.

It’s not all sunshine and rainbows

Content management systems (CMS) like Wordpress have drawbacks out of the box.

Insecure80% of hacked websites were running Wordpress due to outdated plugins, default admin URLs, weak passwords and an unencrypted connection (to name a few).

Slow – Pages are dynamically generated and involve querying a database. This creates a perceivable page load lag.

Messy – Projects are managed through a user-interface and don’t lend themselves to versioning (e.g. in GitHub).

Jekyll - Templated static sites without baggage

Jekyll is a static site generator, and as the name implies, using its templating system you define all of your site’s pages and blog postings. Then, before deployment, Jekyll converts your content into plain HTML files ready to be served.

This is completely different than Wordpress which generates pages dynamically after they are requested. Jekyll is just a generator of dumb web pages with no database, server-side scripting or user sessions.

No CMS issues

There are benefits to jettisoning the bloat of CMS:

Secure – There’s nothing to hack. Your site isn’t an application, it’s just a set of static pages being served with no server-side scripting.

Fast – Since the pages being requested are pre-generated, they are delivered quickly.

Clean – A Jekyll project is a Ruby project and it fits neatly into source control:

Give it a try

There are plenty of good tutorials to get you started. For version compatibility (explicit support for Ruby 2.0.x was dropped), be sure to use rvm.

If you have a GitHub account, you already have a free hosting provider. When you create a Jekyll GitHub project called <yourusername>.github.io, you site will automatically be hosted at http://<yourusername>.github.io.

Conclusion

Wordpress plugins give you the power to build full-blown web apps. With Jekyll you can’t have things like users, a shopping cart or an admin portal. The point is Wordpress is a CMS and Jekyll is not a CMS.

Developers will love Jekyll and similar static site generators for simple use-cases. If you don’t program or your site needs dynamic content, stick with something like Wordpress, just keep it secure.