Jekyll Theme Nix

A barebones theme for Jekyll, which doesn't need any dependencies except jekyll-redirect-from, if you want to redirect pages. It is optimized for fast build speeds as well.

Its purpose is to be a minimalistic, single-author theme. Because there is no menu, pages can be manually linked in the body of index.md.

It also changes as little as possible from the default browser settings to improve legibility.

Demo

If this theme feels to bloated to you, you can try “Nixer”, the ultra-minimalistic version of “Nix”.

Limited Features

  • Dark mode, because we want to be respectful
  • Posts
  • Pages, including custom error pages
  • No visible authors, categories, or tags
  • No header or footer
  • No pagination for the home page
  • A feed.xml containing an Atom feed, but no JSON or outdated RSS feeds
  • A sitemap.xml, because search engines should index us
  • No semantic info like Open Graph, Twitter cards, or JSON-LD, but inline Microdata

Minutiae

Default Colors

The default browser link colors don't look great, if they're inverted in dark mode, just like white is inverted to black for the background:

  • Link:  #0000ee  =>  #ffff11 
  • Link visited:  #551a8b  =>  #aae574 

Therefore, they're set to somewhat lighter versions of the default colors:

  • Link:  #0000ee  =>  lightskyblue 
  • Link visited:  #551a8b  =>  plum 

Favicon

The favicon is currently icon.webp for the light mode, and there's also a dark variant icon-dark.webp.

Nix?

“Nix” is the grammatically incorrect form of the German “nichts”, which in English means “nothing”. It's colloquially used to stress the nothingness.

Or, if you will, it could be UNIX without the “U”, because of the theme's somewhat archaic properties.

Installation

Installation from Gem is recommended, but using a remote theme is also possible, even though it will increase build time a little, depending on your internet connection.

Installation from Gem

Add this line to your Jekyll site's Gemfile:

gem "jekyll-theme-nix"

And add this line to your Jekyll site's _config.yml:

theme: jekyll-theme-nix

Make sure that this is the only theme: in _config.yml. Afterwards run bundle install.

Installation as Remote Theme

Add this line to your Jekyll site's Gemfile:

gem "jekyll-remote-theme"

And add this line to your Jekyll site's _config.yml:

remote_theme: michaelnordmeyer/jekyll-theme-nix

Make sure that this is the only remote_theme: in _config.yml, and that there are no other theme:.

Finally, add jekyll-remote-theme to your plugin section in _config.yml as well.

Feed.xml and Sitemap.xml

Both are included in the theme and don't need dependencies to jekyll-feed or jekyll-sitemap. For a standard Jekyll installation, they work out-of-the-box.

If hosted with the Github pages plugin, those plugins are already included and will automatically be used instead. To overwrite this, both files have to be copied manually from the theme's repository root to the site's repository root.