paul le

The Ultimate Guide to Managing a Personal Website or Blog with Jekyll and GitHub Pages

I first discovered Jekyll and GitHub Pages in my second last year of university. During that time, I was looking to learn how to code in order to pursue a career in software development. I read that Jekyll and GitHub pages were a good platform to start your personal website or blog on. However, being new to this, I was intimidated and confused by all the resources that I came across.

Several years later, now that I work in the software industry and have even created a few Jekyll themes of my own, I realize that the confusion that I had in the beginning was unnecessary. Using Jekyll and GitHub Pages as a platform for starting your personal website or blog is actually very simple.

This series will walk you through everything you need to know in order to become a master at Jekyll and GitHub Pages, from starting your personal website or blog to creating your own Jekyll themes.

  1. How to Start a Blog or Personal Website Using Jekyll and GitHub Pages: This guide will walk you through the process of starting a personal website or blog using Jekyll and hosting your site on GitHub pages.

  2. How to Customize a Jekyll Theme: This guide will walk you through common changes that can be done to personalize your Jekyll Theme.

What is Jekyll?

The official Jekyll site states that Jekyll is “a simple, blog-aware, static site generator for personal, project, or organization sites”. This is actually a good summary of what Jekyll is, but for a beginner can be confusing. Let’s break down what each part means.


Contrary to the initial introduction that I had with Jekyll, it is very simple to use. Posts are stored as text files that are formatted using Markdown. Once set up, adding new pages or posts is a matter of adding Markdown text files to a directory. Jekyll handles the rest with building your site. There are no bloated user interfaces to work with, and you have complete control over your site.


Jekyll was developed with blogging as the main use case. Typical features of blogs such as pages, posts, categories, and custom layouts are supported. There is also a massive community of Jekyll users for support and plenty of free Jekyll themes to choose from.

Static Site Generator

A static site is a site that consists of only text files. There are no databases that are required for the site to operate. Jekyll will take your text files containing your blog content, and generate a static site that is served as your personal website or blog.

For Personal, Project, or Organization Sites

Jekyll is suitable for sites that don’t require databases or complicated backends. This is perfect for managing personal websites and blogs, as static sites are simple to set up and maintain, among other benefits.

What is GitHub Pages?

GitHub Pages is powered by Jekyll, which means GitHub offers the ability to host Jekyll sites. You can put your Jekyll site in a GitHub repository, and GitHub will serve your Jekyll site as a public website. This is a great way to get started with your personal website or blog completely free, especially if you are not immediately expecting high volumes of traffic to your site. Combined with your own custom domain name, you can get started with your online presence for a very affordable cost.

Why You Should Use Jekyll

Jekyll is an open-sourced platform used by many companies that provides you complete control over the look of your site and how you publish your content. Serving static websites offers performance and security benefits. Since your posts are Markdown text files, your content is portable and easily managed without having to deal with bloated user interfaces. Combined with using GitHub to host your sites, your entire site will be backed up and versioned, allowing you to easily roll back to previous versions of your site.

Why You Should Start a Personal Website or Blog

Having an online presence is important, regardless of whether or not you are a full-time blogger or software developer. A personal website or blog under your own domain name is something that you completely own, and is not subject to the whims of any social media platform. It can be a place to showcase your work, or it can be a place for people to find more information about who you are and what you offer. Keeping a blog also has many benefits. Overall, having a personal site or blog will allow you to build your personal brand, which is more important than ever with the rise of the internet.

Get Started Today

If you have an interest in creating your own personal website or blog, I would strongly recommend that you check out the first post in this series, How to Start a Blog or Personal Website Using Jekyll and GitHub Pages. It will walk you through the steps for creating your first site using Jekyll and GitHub Pages - no programming experience is required.

February 16th, 2021