A clean minimal Jekyll theme for writers.
- Why the name?
- Fully compatible with Github Pages
- Configurable and responsive multi layer menu, adapted from slimmenu
- Disqus integration
- Font Awesome icons included
- Google analytics
- Social sharing using rrssb
- 404 page included
- Typographic optimization for Chinese fonts
- Atom feed generated with jekyll-feed
- Pagination enabled for blog using jekyll-paginate
- Basic SEO with Facebook Open Graph tags and Twitter cards
Why the name?
In Chinese there's a saying that goes 麻雀虽小，五脏俱全。It roughly translates to: small though a sparrow is, it possesses all internal organs. Small but complete is what this theme aspires to be. Minimal but includes all the essential aspects to building a blog.
Just fork this repo and replace the posts with your own. Also rename the sample poetry collection to replace it with your own collection, or just delete it if you don't need to use collections. The example is poetry, but you can easily revamp this into essays, short stories, portfolio, or whatever your creative work is.
OR you can also install this theme as a theme gem. To do that, add to your Gemfile:
And add this line site's
And then do
To run your site locally, do
bundle exec jekyll serve.
For customization, see below.
Customize these values in the
title : "Sparrow" title_separator : "-" description : "A clean and minimal theme for writers." favicon : "/assets/images/bird.png" avatar : "/assets/images/bird.png" url : "https://theconfused.me" # the base hostname & protocol for your site e.g. "https://mmistakes.github.io" baseurl : "/sparrow" # Site Author author: name : "Lingyi" # appears in the footer and atom feed
To activate Disqus, fill in your disqus shortname:
comments : true # set it to false to disable comments disqus: shortname : your_shortname
Enable google analytics by filling in your tracking ID:
analytics: google: tracking_id : # add your google tracking id here
If you are using collections, be sure to replace this with your collection name:
collections: poetry: output: true permalink: /:collection/:title/
Currently, pagination is set to a the blog page. Unfortunately Jekyll does not yet support pagination on multiple pages.
If you want to paginate on a different page, simply change the
paginate_path value in the config file and create the relevant page.
paginate: 5 # amount of posts to show paginate_path: "/blog/page:num/" timezone: # http://en.wikipedia.org/wiki/List_of_tz_database_time_zones
You can change the navigation links in
Front matter defaults
At the bottom of the config file, you can also set front matter defaults so that you don't have to repeat the same front matter for every post. This is an example:
# Front matter defaults defaults: # _pages - scope: path: "" type: pages values: layout: page comments: false # _posts - scope: path: "" type: posts values: layout: post comments: true share: true # _poetry - scope: path: "" type: poetry values: layout: post share: false
To enhance SEO, you can add your twitter username to
You can also add a image path for the
og_image value in the config file, for a default open graph sharing image. This value can be overridden in individual posts.
For the various config options see the sample config file for the demo site
The color schemes and fonts can also be customized through scss, by editing the relevant variable in