Skip to content

Kenny's blog

How this blog was setup

1 min read

When I set out to making a blog, I had different options ahead of me. I could go for a hosted option like Wordpress or Medium. Or I could go for a static site generation framework and self host the blog. I chose the static site generation route. This is because I wanted more control over the website look and feel. I also wanted to include some React components. Finally it is easy to deploy the site on Github Pages or Netlify.

So now the next choice was - which static site generator should I use? I considered Jekyll (written in Ruby) and Hugo (written in JavaScript). Since I had less experience with Ruby and wanted to go the JavaScript path, I went for Hugo. I found a decent blog starter template, and started to personalize it to suit my style.

After spending around 2 weeks of my free time, I finally had it looking the way I wanted, and I felt very proud. It took some time to customize. In the end I had something decent. But after I deployed that, I felt that the page loading was taking time. It was, after all, a static site which meant a page reload on every request. I felt that it wasn't fast enough (pardon the perfectionist in me).

All these frameworks are awesome tools, but they didn't sync with me for my requirements. By this time I knew what I wanted out of my blog - to be fast, to look decent, and not be a pain to write blog posts. I also wanted to try out some JS packages for text proof reading :)

So, after looking around for some more time I found that Gatsby was a good option for me. It used the JavaScript ecosystem. It used React which I'm already familiar with, and I found a clean minimal blog design.

So here is how it works in the end. Gatsby handles the static site generation. Github which hosts the repository. And Netlify which handles the builds and deployment. And I should mention that Netlify was very easy to use, definitely recommend! It took care of many things, saving a lot of my time.

You can reach out to me on Twitter - @johnjacobkenny or subscribe to get notifications for new content