2 minute read

I first started playing with Jekyll and Minimal Mistakes something like four or five years ago when I wanted to setup a simple website for my work as a freelance software engineer.

I was looking for a cheap (free if possible) solution that was easy to maintain. Also, I wanted a good looking UI out of the box as I am pretty comfortable with backend stuff, but I am certainly no UX designer.

While looking around at what others were using, I found that Jonas Bonér’s personal website[1] was really cool. That’s how I discovered Jekyll and Minimal Mistakes. Jonas mentioned them in his “about” page and also mentioned the fact that it is hosted on GitHub Pages. Exactly what I needed, so that’s how I ended up using this solution for my personal website https://pf80.ch.

I am not going to explain in details how to setup Jekyll with GitHub pages as there is extensive documentation about this already (the official documentation to start with), but I am just going to recommend you to consider this solution if you are:

  • comfortable working with Git / GitHub
  • comfortable writing posts in Markdown format
  • capable of setting up some DNS records at your domain name registrar in case you want to access your website with a custom domain name like pf80.ch

Right, it’s not a given for everyone. But if you can do this and you are not after highly sophisiticated editing and publishing capabilities, then you will most likely be very happy with the Jekyll + Minimal Mistakes + GitHub Pages combo. Some of the nice features this provides:

  • Responsive layout
  • 100% free (although you should consider sponsoring Jekyll or Minimal Mistakes)
  • Native support for blog posts and standard pages
  • Taxonomy (tags, categories)
  • Highly customizable
  • Support for comments through third-party comment providers (e.g. Disqus, Discourse,…)
  • Site-wide search so visitors can easily find content in your website

The only thing that was not ideal for me was when I wanted to publish my website in multiple languages a few years ago. I eventually managed to do what I wanted with a few hacks, but this was not supported natively at the time. Maybe it is today, or some plugin exist, but if you need to localize your website, I recommend you double-check that first.

I am back to English only now, so everything’s fine!


[1] Jonas Bonér is a distributed systems thought leader who greatly inspired me. He is notably know as the creator of the Akka reactive distributed systems platform. Maybe more on this another time.