Jekyll-base

What is it?

Jekyll-base is a structure to help start maintaining a website with jekyll, possibly hosting it on github.

What is it not?

It is not aiming to help maintain a blog.

Why develop it?

I was looking for a fast and simple way to maintain documentation for Dedomenon, the information storage engine behind MyOwnDB.Com. I was looking for a hosted system I didn’t have to maintain, but that would still give me full control of the content so I can move it to another system later if I want to.

Features?
Here are some features:

  • cross-browser layout thanks to YUI Grids
  • FreshPick based CSS
  • use of Yahoo’s CDN for delivery of YUI Grids files
  • Google Analytics activated by putting site id in config file
  • Google Ajax Search activated by putting your API key in the config file
  • Listing of documents in current section
  • List of subsections
  • Breadcrumbs to help in navigation

You can see them in action on the Dedomenon Documentation website.

Getting it

git clone git://github.com/raphinou/jekyll-base.git

Configuration

Edit the file _config.yml:

  • base_dir: prefix added to all links generated. Usefull if you host your website as Github pages in a repository.
  • ga_id: Google Analytics web property id for this website. Setting this settings enables Google Analytics Tracking
  • google_search_api_key: your Google Ajax Search API key, needed to activate search on your website ( inpired by jrmili.com )
  • google_search_site_url: Website covered by search functionality.
  • title_prefix: Prefix for every the title of every page of the website

How to create content?

To add a new section, use the add_section.sh script. It takes two arguments: the path to the parent section and the name of the new section to be created:

bin/add_section.sh . section_name

or to add a subsection to an existing section:

bin/add_section.sh ./parent_section section_name

To add a new post in a section:

bin/add_new_post.sh ./path/to/section title

If you host your website on Github Pages, you might be interested in the base_dir option in _config.yaml: just set it to

base_dir: /project_name

Contributing

Fork on github and send your pull requests! See http://github.com/raphinou/jekyll-base