Andre Franca

Website version 4.0

Published: January 30, 2023
1103 words · 5 minutes to read
Tagged: #blogging#static-site#jekyll#ghost-cms.

I’ve been running this blog since April, and for the first time I can say I’m really happy with it in terms of functionality and appearance.

Back in September, I wrote “Ghost as my blogging platform” explaining the reasons why I was giving a shot at a CMS and leaving Jekyll as my SSG. Two of the reasons were the ability to schedule posts that Ghost provides and how easy it was to manage content.

That choice came with some drawbacks. Like everything in life, when you make a choice, you also choose to leave something behind. In my case, I was struggling with making visual modifications due to the way Ghost is developed, and saw a huge decrease in performance when loading pages, due to excess bloat, JavaScript, etc.

For the fourth time, I decided it was time to go static again. I still don’t post frequently, so I can’t justify my wish to manage content I don’t produce in a more “powerful” way. Also, I found out that I can simply write using any editor I like and push it to the web when I’m at my computer and have time available. And that is okay after all.

Moving back to Jekyll was a bit of a headache because there was no way to export my previous posts in a format that I could easily work with. Jekyll, Ruby and my MacOS were also playing tricks on me. Let me explain myself: On a beautiful day, I ran a brew update command and my Jekyll installation broke. I came to find that I wasn’t running a proper compatible version of Ruby.

I followed the exact instructions (from Jekyll website) to set up the environment again, installed chruby, and then more errors when trying to install ruby. After hours of troubleshooting1, I realized I had some CFLAGS set in my .zshrc file that were somehow breaking the build. Once I unset the CFLAGS, LDFLAGS, and LDLIBS everything went ok. I created a .ruby-version file in my working directory to make sure I won’t run into update issues again.

In the meantime, while trying to fix ruby, I installed Hugo and 11ty to see whether any og them would fit better than Jekyll.

I haven’t had a good time with Hugo, as it presented to be overcomplicated (compared to Jekyll, in my opinion);

11ty seemed to work good. I liked the idea of being able to use different template languages and the fact that it has more similarities with Jekyll, however, I have zero experience with JavaScript, and customizing its settings wasn’t friendly to me.

It meant Jekyll would be the way to go, or to stay with ghost in case I couldn’t fix my Jekyll installation.

It took me some time to fully migrate. I took advantage I was doing things patiently and tried to improve my Jekyll setup with fewer plugins as possible for future-proof. One good example is that I have a custom .html for SEO, a custom RSS and JSON feed file, and a sitemap file, all rendered by Jekyll at build without an additional plugin.

Differently from using Ghost, I regained control of what’s going on under the hood, and now I have a minimal and much faster website2.

Looking back to the beginning

Version 1.0

The first version of the blog was built upon Jekyll, using simple.css, a CSS framework created by @kev.

website v1.0

Version 2.0

Five months later, I changed things up a bit and launched the second version.

I hate to admit it, but it was horrible. As you can see, the background had a yellow-ish color, and hyperlinks had tones of orange. What I liked was the navigation that I was able to shrink.

website v2.0

Version 3.0 (Now using Ghost)

By Sep 22, I switched to Ghost.

I haven’t found any Ghost template that I like, even the paid ones. I had to choose something and end up with Attila Theme.

website v3.0
website v1.0 - Posts list

There is a large feature image, and the typography is not well sized (I mean, they don’t seem to work well together).

For the first time I had Tags on my website.

How is it going?

Version 4.0 (current - back to Jekyll)

This version is somewhat based on Bradley Taunt’s minimalist website.

Some Features:

Website Title and Navigation Simple website title and sausage links

List of recent posts List of recent posts

Posts metadata Posts metadata. Includes post date, word count, time to read and post tags

Links for previous and next post Links for previous and next post

openring Openring, a tool for generating a webring from RSS feeds

Final thoughts

I’m happy with the final result, and the 4.0 version really looks pleasant to my eyes.

I tried to organize things in a way that it’s easy to find content and read it with minimal distractions, and to reduce bloat and excess of features, yet it has some good ones.

Chris wrote a few days ago “Still wishing for a better blogging tool”, and I’d say I feel pretty much like him in this aspect. In his case, his tool of choice is Word Press; mine is the great ol’ Jekyll.

  1. I mentioned I had a problem with Jekyll on mastodon and said something about having a Jekyll container using docker for situations where an update would break a Jekyll installation.

    I found this solution to be a bit overkill, considering that a SSG was supposed to be simple and run lean. 

  2. The loading time was improved significantly by roughly 9x (checked using GTmetrix website), and the total size of the page was reduced by 25x. 

Questions, comments or concerns?
I'd love to hear your thoughts! Please share them through email or Mastodon.

<~ Previous: Switching from domain

~> Next: Using Cloudflare for Dynamic URL Redirects

Articles from blogs I follow around the world wide web

Bring Back the Humble Forum

Social media is fucking us all up. I’d love to go back to the days of forums, where there was no popularity contests, or “influencers”. I’ve been ruminating about my use of social media a lot recently and to be honest, I’m still not that …

via Kev Quirk July 26, 2023

The web I want

The web I want is powered by passion, not money. The web I want doesn't need to ask for permission to track me because they know that tracking me is not the right thing to do. The web I want doesn't make me waste bandwidth by loading pointless vid…

via Manuel Moreale RSS Feed July 25, 2023


I worked in a cafe that was a family-run business. The owner's mother would tell us, the employees, how to mop the floor. It wasn't the most efficient way to do it, but she insisted this particular set of steps was THE way to clean the floor. My c…

via Rach Smith's digital garden July 17, 2023

Generated by openring