Taming dr. Jekyll

After too many painful migrations from drupal and wordpress, I decided I wanted to stay in control of my content.

Text files. Version control. No fuss about design.

GitHub’s jekyll support seemed just what I needed. Getting a spartan site up was easy, but making it look half-decent (I’m no designer) was a little daunting. I couldn’t find any reusable themes. They had all liberally sprinkled their personal details over their templates. Why is it still so hard to apply the elementary concepts of modular software development to websites?

So I decided to steal the bare minimum template from some other jekyll deployment, cobbled together an ‘index.markdown’ that iterated over posts in various categories, and put some actual content in ‘_posts/’, where the YAML header in a post decides in which categories it ends up.

When I finally discovered jekyll-base, the wonders of git allowed me to pretend I started by cloning jekyll-base all along. Here’s how I adapted someone’s advice to my repository:

cd ~/git
git clone http://github.com/raphinou/jekyll-base.git
cd adriaanm.github.com/
git fetch ../jekyll-base master:jekyll-base
git merge jekyll-base 
git diff
# solve conflicts
git commit -a

Maybe I should have fetched directly from github instead of my local clone. No matter, though, even with the roundabout start, git still lets me do the fetch directly from jekyll-base on github.

You can check out the flip side of this website on GitHub.

So far so good. But does it scale?