Moving to Jekyll

Fed up to the back teeth with Drupal as a blogging system so decided to move to a new one: Jekyll

I’ve written before on the problems with big complex software like Drupal before and the attempt to lessen the complexity via a JAMstack. Rather than storing the content in a database systems like Jekyll convert content held in ordinary files into the required website. Layout and style is held in familiar HTML and CSS files. So in theory it’s a lot simpler than a full CMS (content management system) such as Drupal with all the components made of easily changeable files using common technologies such as HTML,CSS and markdown.

However that simplicity comes with a price as some abilities now require a bit of work either with plugins or with the templating language.

First task was to get a simple Jekyll example running following the quickstart instructions. As usual I did this inside a separated virtual machine to avoid messing around with my existing development environment.

Next is to extract all the content from that Drupal database into suitably formatted files. This proved hard work and needed a custom PHP script based on this offering. It wasn’t perfect and the exported files needed some manual modifications (with linux tools like sed) but the process was way better than trying to hand copy each post across.

Copy the exported files into an empty Jekyll site and we are basically up and going.

The final step was to customise the layout and style. Jekyll can apply ready-made themes but none available were exactly as wanted so I started with “basically-basic” a simple close-enough theme and started to modify it. One very nice ability of Jekyll is to selectively override aspects by simply placing your own versions into the website structure.

As usual with these technical things it’s simple once you’ve done it but the process has been awkward involving more coding and customising than I might have hoped for. The site is working but still has some features such as image galleries and posts in a connected series missing. However compared to Drupal these features feel logical to implement with some HTML/javascript/CSS coding. Which handily are very familiar to me, it all feels under control. Overall I think I’m liking Jekyll.