Getting Started With Jekyll

I have been told that it’s good to write a blog. Something about self-promotion and helping other people…

I originally wanted to create something through rails, but, having thought about it, it would have taken a while to set everything up correctly. No need to reinvent the wheel…

Jekyll is a blogging / website platform built with Ruby. It’s what I would have aimed to build, only simpler, more efficient, pre-built and with an active community behind it.

Jekyll’s main selling point is that it integrates text files well into a static site.

It’s simple to use and set up out of the box:

~ $ gem install jekyll
~ $ jekyll new my-awesome-site
~ $ cd my-awesome-site
~/my-awesome-site $ jekyll serve
# => Now browse to http://localhost:4000

If you’re lazy, I’d recommend not doing this, though. Jekyll Bootstrap, discussed below, has a few more features that may be useful.

Jekyll Bootstrap#

Jekyll Bootstrap uses Twitter’s bootstrap and includes a number of extra in-build functionality including clever rake tasks, themes and comments.

Here’s a really good starting point: Jekyll Bootstrap Quick Start Guide

One of the great things about Jekyll Bootstrap is that it integrates well with Github Pages . This lets you host your own site for FREE! You get the custom domain of your_github_username.github.io.

The only tweak that I had to make with the current version of Jekyll Bootstrap was to change the default github.com to github.io

Updating Your Settings#

Go to _config.yml to update your settings:

  • Github Username
  • Twitter Username
  • Analytics Tracking ID
  • Disqus shortname

You’ll probably have to go to Disqus to create a shortname and Google Analytics to get your tracking code.

Generating New Posts#

Once you have everything set up, you’ll be able to run

$ rake post title="Hello World"

To create new posts or

$ rake page name="about.md"

To create new pages.

There you have it - a free, fully functioning static blog set up in only a few minutes!#



Here are a few more tips I recommend to make it even easier to use Jekyll and Markdown.

Using Jekyll with Vim

There’s a great vim plugin for jekyll. This lets you, anywhere in the file structure, to access your current posts or to create a new one.

map <Leader>jb  :JekyllBuild<CR>
map <Leader>jn  :JekyllPost<CR>
map <Leader>jl  :JekyllList<CR>.

Ultra fancy Markdown editing.

I use Marked 2 , which is a fairly slick markdown live previewer. You can call it straight from vim using this mapping in your .vimrc:

noremap <leader>md :!open -a 'Marked 2' %<cr><cr>

(Assuming you’re on OS X)


I hope this’ll help some people get started with Jekyll. Good luck with it!