xyzzy
Xyzzy is a geeky Jekyll theme for bloggers.
Installation
Add this line to your Jekyll site's Gemfile
:
gem "xyzzy"
And add this line to your Jekyll site's _config.yml
:
theme: xyzzy
And then execute:
$ bundle
Or install it yourself as:
$ gem install jekyll-theme-xyzzy
Usage
Like Jekyll's default theme, minima, Xyzzy has been scaffolded by the jekyll new-theme
command. You can have a new Jekyll site up and running with zero-configuration.
Layouts
Refers to .html
files within the _layouts
directory.
-
default.html
— The base layout that lays the foundation for subsequent layouts. -
home.html
— The layout for your index-page. -
page.html
— The layout for your documents that contain FrontMatter, but are not posts. -
post.html
— The layout for your posts.
Includes
Refers to the .html
files within the _includes
directory.
-
footer.html
— Defines the site's footer section. -
github-link.html
— Inserts GitHub link with icon -
google-analytics.html
— Inserts Google Analytics (active only in production environment). -
head.html
— Defines the<head></head>
in default layout. -
header.html
— Defines the site's main header section. -
twitter-link.html
— Inserts Twitter link with icon
Sass
Refers to .scss
files within the _sass
directory.
-
xyzzy.scss
— The core file imported by preprocessedstyles.scss
; it defines the variable defaults and imports Sass partials. -
xyzzy/_base.scss
— Resets and defines base styles. -
xyzzy/_components.scss
— Defines component styles. -
xyzzy/_syntax.scss
— Defines syntax highlighting styles. -
xyzzy/_utility.scss
— Defines utility styles. -
xyzzy/layout/_article.scss
— Definesarticle
layout styles. -
xyzzy/layout/_footer.scss
— Definesfooter
layout styles. -
xyzzy/layout/_header.scss
— Definesheader
layout styles. -
xyzzy/layout/_main.scss
— Definesmain
layout styles. -
xyzzy/layout/_nav.scss
— Definesnav
layout styles.
Assets
Refers to various asset files within the assets
directory.
Contains the styles.scss
that imports sass files from within the _sass
directory. This styles.scss
is what gets processed into the theme's main stylesheet styles.css
called by _layouts/default.html
via _includes/head.html
.
TODO: Write usage instructions here. Describe your available layouts, includes, sass and/or assets.
Enabling Google Analytics
To enable Google Anaytics, add the following lines to _config.yml
:
google_analytics: UA-NNNNNNNN-N
Google Analytics will only appear in production, i.e., JEKYLL_ENV=production
Contributing
Bug reports and pull requests are welcome on GitHub at https://github.com/jonaskay/jekyll-theme-xyzzy. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.
Development
To set up your environment to develop this theme, run bundle install
.
Your theme is setup just like a normal Jekyll site! To test your theme, run bundle exec jekyll serve
and open your browser at http://localhost:4000
. This starts a Jekyll server using your theme. Add pages, documents, data, etc. like normal to test your theme's contents. As you make modifications to your theme and to your content, your site will regenerate and you should see the changes in the browser after a refresh, just like normal.
When your theme is released, only the files in _layouts
, _includes
, _sass
and assets
tracked with Git will be bundled.
To add a custom directory to your theme-gem, please edit the regexp in jekyll-theme-xyzzy.gemspec
accordingly.
License
The theme is available as open source under the terms of the MIT License.