How to use this theme

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:

gem "sparrow-jekyll-theme"

And add this line site’s _config.yml:

theme: sparrow-jekyll-theme

And then do bundle install.

To run your site locally, do bundle exec jekyll serve.

For customization, see below.

General configuration

Customize these values in the _config.yml file:

title                    : "Sparrow"
title_separator          : "-"
description              : "A clean and minimal theme for writers."
favicon                  : "/assets/images/bird.png"
avatar                   : "/assets/images/bird.png"
url                      : "" # the base hostname & protocol for your site e.g. ""
baseurl                  : "/sparrow" 

# Site 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
  shortname              : your_shortname

Google analytics

Enable google analytics by filling in your tracking ID:

    tracking_id          : # add your google tracking id here


If you are using collections, be sure to replace this with your collection name:

    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: #

You can change the navigation links in _data/navigation.yml.

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
  # _pages
  - scope:
      path: ""
      type: pages
      layout: page
      comments: false
  # _posts
  - scope:
      path: ""
      type: posts
      layout: post
      comments: true
      share: true
  # _poetry
  - scope:
      path: ""
      type: poetry
      layout: post
      share: false


To enhance SEO, you can add your twitter username to _config.yml.

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.

There are also helper classes for ease of inserting image and their captions, adapted from the Minimal Mistakes theme by Michael Rose. You can find a sample post with images on the demo site.

The color schemes and fonts can also be customized through scss, by editing the relevant variable in _variables.scss.