You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Go to file
John Otander 5726796e46
9 years ago
_includes Add optional post footer, closes #87. 9 years ago
_layouts Try to reduce whitespace around post headings 9 years ago
_posts Fixed author cite name 9 years ago
_sass Merge branch 'heading-fix' of ../testjkrb into heading-fix 9 years ago
css Convert css to scss with compression. 9 years ago
images Add optional post footer, closes #87. 9 years ago
.gitignore Add .sass-cache to .gitignore. 9 years ago Fix the Home link on 404 page 9 years ago
CNAME Create CNAME 9 years ago
LICENSE.txt Add license. 9 years ago Update 9 years ago
_config.yml Add social icon options to _config, closes #88. 9 years ago Update 9 years ago
contact.html Grab form spree email from the site config. Closes #78. 9 years ago
feed.xml Fixed build warning originating from feed.xml 9 years ago
index.html Change footer offset, hopefully fix the media query specificity. 9 years ago


Pixyll screenshot

Pixyll is a simple, beautiful theme for Jekyll that emphasizes content rather than aesthetic fluff. It's mobile first, fluidly responsive, and delightfully lightweight.

It's pretty minimal, but leverages large type and drastic contrast to make a statement, on all devices.

This Jekyll theme was crafted with <3 by John Otander (@4lpine).


Getting Started

If you're completely new to Jekyll, I recommend checking out the documentation at or there's a tutorial by Smashing Magazine.

Installing Jekyll

If you don't have Jekyll already installed, you will need to go ahead and do that.

$ gem install jekyll

Verify your Jekyll version

It's important to also check your version of Jekyll since this project uses Native Sass which is only supported by 2.0+.

$ jekyll -v
# This should be jekyll 2.0.0 or later

Fork, then clone

Fork the repo, and then clone it so you've got the code locally.

Modify the _config.yml

The _config.yml located in the root of the Pixyll directory contains all of the configuration details for the Jekyll site. The defaults are:

# Site settings
title: Pixyll
author: John Otander
description: "A simple, beautiful theme for Jekyll that emphasizes content rather than aesthetic fluff."
baseurl: ""
url: ""

# Build settings
markdown: kramdown
permalink: pretty
paginate: 3

Jekyll Serve

Then, start the Jekyll Server. I always like to give the --watch option so it updates the generated HTML when I make changes.

$ jekyll serve --watch

Now you can navigate to localhost:4000 in your browser to see the site.

Using Github Pages

You can host your Jekyll site for free with Github Pages. Click here for more information.

A configuration tweak if you're using a gh-pages sub-folder

In addition to your repo that maps to the root url, you can serve up sites by using a gh-pages branch for other repos so they're available at

This will require you to modify the _config.yml like so:

# Site settings
title: Repo Name
author: John Otander
description: "Repo description"
baseurl: "/repo-name"
url: ""

# Build settings
markdown: kramdown
permalink: pretty
paginate: 3

This will ensure that the the correct relative path is constructed for your assets and posts. Also, in order to run the project locally, you will need to specify the blank string for the baseurl: $ jekyll serve --baseurl ''.

You will also need to tweak the header include /{{ site.baseurl }}:

<header class="site-header px2 px-responsive">
  <div class="mt2 wrap">
    <div class="measure">
      <a href="{{ site.url }}/{{ site.baseurl }}">{{ site.title }}</a>
      <nav class="site-nav right">
        {% include navigation.html %}

A relevant Jekyll Github Issue:

Contact Form

If you'd like to keep the contact form, which uses, you will need to update the email address.

Currently, the has the following:

<form action="" method="POST" class="form-stacked form-light">

Where it says, you will need to change that to the email that you wish to have the form data sent to. It will require you to fill the form out when you push it live for the first time so that you can confirm your email.

Page Animation

If you would like to add a fade-in-down effect, you can add animated: true to your _config.yml.

Put in a Pixyll Plug

If you want to give credit to the Pixyll theme with a link to or my personal website somewhere, that'd be awesome. No worries if you don't.


I hope you enjoy using Pixyll. If you encounter any issues, please feel free to let me know by creating an issue. I'd love to help.

Upgrading Pixyll

Pixyll is always being improved by its users, so sometimes one may need to upgrade.

Ensure there's an upstream remote

If git remote -v doesn't have an upstream listed, you can do the following to add it:

git remote add upstream

Pull in the latest changes

git pull upstream master

There may be merge conflicts, so be sure to fix the files that git lists if they occur. That's it!


  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

Thanks to the following: