I’ve been a blogger since 2002. I originally started blogging on Blogger but quickly outgrew the limited customization options it had at the time. I moved to a self-hosted version of Wordpress and haven’t looked back since. There have been moments where I wanted to switch to a CMS or platform that was less bulky but never found a suitable replacement. That is, until I found Jekyll.
Jekyll is a static site generator and it uses Ruby to generate the HTML for the website. Template pages are based off of the Liquid templating system and all of my blog posts are written in Markdown. When I want to update my site, I just create a new file.
Instead of going with another host (I started on Dreamhost, moved to Digital Ocean) I decided to try Github Pages. Their version of Jekyll does all the hardwork for me. When I want to update my site I just create a file and commit and sync to update the site. Plus, Github Pages is free. Yeah, like, $0.
So what you see is Jekyll, hosted on Github Pages. That minimal theme? Lanyon. Instead of creating a Jekyll site from scratch, I was able to fork Lanyon’s Github repository. It comes with all of the files needed to create a complete site and all of them are easy to tweak to customize.
Getting started with Github pages is super simple. Like I said, I just forked the Lanyon repository. Once you fork it and create a repository of your own, you need to name it
username.github.io where username is your github username, otherwise Github won’t recognize that it needs to host your site. For example, my repository is
janastasia.github.io. If you want to use a custom domain, no problem, we can change those settings later.
Configuring a Custom Domain
In your repository, you’ll see a file called CNAME. If you want to use a custom domain, like
jessanastasia.co then you need to update your CNAME file.
Once your CNAME is updated, you need to update your DNS settings with your domain registrar. In your DNS settings, add two A records. Host will be blank for both records. In the Answers box for your first A record, put
18.104.22.168 and in the second Answers box put
22.214.171.124. The TTL box defaults to
300 on name.com but I always change it to
1800. See this exchange for my reasoning (also, I’m not an expert, I just listen to them).
I use name.com to register and manage my domains so this is specific to them. If you use another domain registrar just Google how to set up Github Pages with them. This also only covers using an APEX domain, like
jessanastasia.co. If you are using a subdomain, including
www, then the instructions will be different. Your first stop should be the GitHub Pages help page about custom domains.
If you feel like venturing off and creating your own site using Jekyll and Github pages but need some help, reach out to me via Twitter. I am extremely busy with both work and school so if I am presented with an opportunity to procrastinate I will.
I’ve had this domain for awhile now, holding onto it so that I could eventually use it as a portfolio of sorts. I figured that now would be the perfect time to launch it since I headed back to school. I can showcase my coursework here as well as whatever else I decide should end up in my portfolio. There will be a blogging component to this, of course, but I will mainly try to focus on things that are relevant to my coursework (programming, political science, data) as well as photography.