TL;DR - Anyone can use Jekyll on Github pages just like anyone can post content on Tumblr. You just need to know about the add and edit button on Github.
It has become quite difficult to find a reliable and sustainable blogging platform. Posterous has been shut down by Twitter in April 2013 and Google Reader has been discontinued by Google in July 2013 (which in my opinion let people think that you can only read content on social networks), not to mention Yahoo!’s habit to shut down everything they buy (which might threaten Tumblr in the long run).
Online blogging platforms have suffered from these recent events, and people are now trying to find alternate solutions that can’t be shut down by FYGT (Facebook/Yahoo/Google/Twitter). This is why the word forever is now the number one keyword for blogging platform marketing. Forever means either install it yourself like in the old days, or pay 5 dollars per month.
A powerful solution that fits people requirements are Github pages powered by Jekyll. Jekyll is an amazing CMS because it is simple in its conception and does not have a back-office as you just create static pages. Not relying on a back-office is an excellent benefit against time erosion. It will never make you feel like you are using a CMS from the previous decade (Tumblr interface is ugly). However, Jekyll does have powerfull posting features. You just need to create a new markdown file in the _posts
directory and once deployed it is going to generate a new article, available in your blog and in the generated RSS feed.
In terms of performance, Github Pages are just static pages so you can't do better (Jekyll builds your website when you push it to Github) and these pages are eventually served by a CDN to minimize latency.
If you are concerned about the sustainability issue, Github won't be acquired and shut down by FYGT anytime soon, since they raised $100 million back in 2012 and have been profitable for years.
With Jekyll on Github Pages, you have a long term free online solution (forever available) powered by on open source technology (forever available even if Github pages are shut down).
The main disadvantage of Jekyll is that it relies on you creating new files in the file system to create new posts. Part of the buzz around Jekyll amongst developers is that they can git push
a new article and write it using their favorite text editor without a browser. Just visit Jekyll’s website that shows a terminal screenshot or some tutorial as a non developer and you will directly think this is not for you:
Jekyll, while an extremely promising platform, is mainly targeted at tech-savvy bloggers and web masters.
I disagree. Jekyll is not only for developers.
It turns out you can use Jekyll without using a terminal, git, amazon S3 or anything like that. Everthing happens on github.com. The only things you need are:
Of course, having some knowledge html/css/javascript can help, but it is not mandatory. Anyway, many blogs are actually bootstrapped by developers and content is then managed by non technical people.
Once you have your Jekyll website hosted on Github pages, you can create articles, write content (as of July 2014, you can’t upload pictures in Github without a terminal or other external tools) :
_posts
directory and create a new file using the discrete + button as explained here.
You need to format the name of this file using the current date, like 2014-07-30-my-new-article.md
to make it work, which is not a big deal.Jekyll on github pages is great, but don't expect it to have all possible CMS features you could think of. First of all, you can see it as a limitation or not, but you need to learn the basics of the Markdown language. Markdown is the contrary of html. It does not look like code, because it does not have any markup, and you write it naturally like you write a simple text email. You only need to know how to format text as titles, bold, italic, and links, and you can be up and running. Also github does not allow uploading non text files directly from github.com website. So if you want to add files like photos you can't do that with this. A simple way around is to use imgur, which allows you to upload images and get the markdown version to paste it to your Github page.
🧑💻 I'm Romain, software engineer, ex co-founder and CTO at Yeeld and Eventmaker.
You may be interested in ways I help or simply want to follow me on Twitter / LinkedIn / Github.