Jekyll on Github Pages, from scratch

The old solution

Last time I had web pages, it was cool to write them by hand.

That website is still up, moved to a Bytemark small VM, but mostly untouched for many years. The CVS repository never made it into Git and what I wanted to tell the world fitted OK as a contribution to some other service.

Website refresh

Here I say “choose” rather than “design” or “build”. My vapourware queue already exceeds my allotted CPU cycles.

Static is cool

Static blogs make a lot of sense, this has been clear to me for some years now. But which?

I did start researching a few of them, but nothing much to report. There are some comparisons on other blogs. Then suddenly I was prompted to start afresh (thanks Andy!).

Choose the engine

I use Github already. It has Github Pages.

Maybe I don’t want to be tied to Github forever?

  1. I will CNAME it to my own URL anyway.
  2. I could run the Jekyll generator myself, or ask Travis CI to do it for me.
  3. I could serve it off my own webserver… haven’t been Slashdotted yet, it’ll be fine.

So the only tie is convenience, or lack of some feature I don’t yet know I want. Ask again in five years?

Choose the styling

Old school angry fruit salad, what’s not to like?

I’ll start writing content. I could change the CSS later if I wanted.

Choose the markup

I can choose markup language per layout/article/inclusion, within the ghpages constraints. Markdown is good enough for now.

Choosing the markdown renderer

I took the list of renderers to try from the pages-gem source. After the first pass of evaluation I discovered that some take a list of extension flags.

This was not a comprehensive survey or a thorough test, but it is clear to me that

From the config, it looks like each article could choose the renderer, but Jekyll 2.4.0 ignores it. _config.yml sets the global choice for all .md articles in the site.

URLs are for life, not just for Christmas

It has been true since 1998 and the slogan is not new, but still one sees those 404s.

I have old content on old URLs. It is still there, for now.

Standard things a website should have

I started with a blank sheet and wrote my own page templates. I guess none of the templates I saw already looked like the kind of clothing I like to wear.

Every website is different1, but many have common features that people come to expect. Mine lacks many of them, but I might try to enumerate them as I go.

Blog about it

It’s traditional, you know? Also, can be self-referential which adds to the fun.

Notes

Github Pages hosting

At the time I tested it (2015-06),


  1. Pedantry: except the splog of course.