This blog runs on Jekyll. Here’s the steps we took to get it up and running.

Step One - Make your repo

Go to Github and make a new organisation. Make a new repo, named like orgname.github.io. For us, that’s twilblog.github.io.

Step Two - Clone it

On your computer, clone your new repo:

git clone git@github.com:orgname/orgname.github.io.git

cd into the new folder that was created.

Step Three - Jekyll

Get Jekyll installed, then start a new Jekyll blog:

jekyll new .

Test it works with :

jekyll serve

Then visit http://localhost:4000 in your browser.

You’ve now got a Jekyll site, woo!

Step Four - Commit it

Commit your blog and push it up to Github:

git add -A
git commit -m "I heart Jekyll"
git push -u origin master

Now, your blog’s been pushed to Github.

“But wait!” you say, “I didn’t run jekyll build or anything, so Github’s just going to have the un-compiled source, what’s the deal with that?” you continue.

Don’t worry. Github is pretty cool with this stuff - it detects you’ve got a Jekyll blog, runs the build process for you, then serves up the compiled _site/ directory on root path of https://orgname.github.io (which is why _site is in your .gitignore).

Now go to your newly created github.io page and try it:

http://orgname.github.io

Note: that this only works on the master branch. The whole setup is pretty cool because Github is essentially acting like a CI server that builds and pushes your code live automatically.

Step Five - Make it less boilerplatey

At this point your site is still just the default Jekyll site. The Jekyll docs have plenty of info about how to change it to suit you.

(hint: blog posts are stored in the _posts/ directory and can be written in markdown.)