When my shared hosting plan was coming up for renewal I struggled to find a hosting service that I liked. I was hoping for good uptime, something that didn’t break the bank, and preferably something with a decent UI. (Maybe I was asking to much.) Webfaction was a great option for a while but $9.50 a month for a few small sites was more than I wanted to spend. That said, the UI and features make Webfactions my favourite shared hosting option.
In the end I went for something a little different. Between Jekyll and Github Pages I now host this site for free.
Launching a not-so-static ‘static site’
But obviously this wouldn’t work for a most blog platforms which rely on databases and server-side scripting to store and serve pages. This is where Jekyll comes in. You setup your includes, layouts, variables, pages, and blog posts, and Jekyll will generate a static site from them. The added bonus is that you can write your posts and pages in markdown and Jekyll renders them as html.
What’s also fun, is that Github pages will build your Jekyll site for you each time you push a change. So that’s what I’m doing. My site is Jekyll generated and hosted on Github, and I love it. No database, great uptime, really fast, and free.
But it’s not for everything
The catch with Github pages is that A) for it to be free you have to use a public repo, and B) it’s intended purpose is for “you and your projects”. As far as I can tell there aren’t any actual restrictions on content, but I wouldn’t feel comfortable using Github pages for Cafe van Zoen, which is more of a personal blog.
For Cafe van Zoen I ended up using Amazon S3. It took longer to setup than Github pages, but I figured out a pretty good workflow for setting up sites on S3. I’ll write more about that in another post soon.
In the meantime, here are some links:
- Setting up your Github Pages repo.
- Using Jekyll with Github Pages
- The Web Ahead: Jekyll and CMS-less websites with Young Hahn and Dave Cole. A great interview with a couple folks from Development Seed about Jekyll.