Neige
Neige is a minimalist and lightweight Jekyll blog theme :snowflake:
Table of content
Features
- Made for blogging
- Minimalist
- Fast: no JS
- Accessible
- Easy configuration
- Siteleaf ready
- Meta tags ready
- Works on any browser
- Mobile ready
- Pixel perfect
Installation
- Gem based
- GH pages
Configuration
Everythings happens in the _config.yml file.
title: set the main title (used for meta tags).description: set the main description (used for meta tags).favicon: set the favicon (located atassets/img/favicon.png).icon: set the logo on the header (located atassets/img/icon.png).og_image: set the default Open Graph image (located atassets/img/og.jpg).lang: set the language of your website. Used aslangattribute on the<html>tag.baseurl: set the root URL of your website (example:https://neige-theme.com).twitter: the main Twitter account of the website (example:@twitter).navigation: set the navigation of your website. Add items with the following properties:
navigation:
- name: About
url: "/about"
title: About me
external: false
- name: Contact
url: "/contact"
title: Contact me
external: false
The
titleproperty is used as thetitleattribute on the link. Setexternalto "true" if the link should open in a new tab.
authors: Add authors to your blog with the following properties:
- id: bilbo
name: Bilbo Baggins
twitter: "@bilbo"
Then you can link a blog post to an author with its id.
footer: set custom content for the<footer>tag.paginate: define the number of posts displayed on the page.paginate_path: define the path of pagination pages (example:"/blog/page:num/"would result in/blog/2/).
How to
Add new post
To create a new blog post, follow these steps:
- Create a
.mdfile in the_postsfolder (example:YYYY-MM-DD-post.md). - Add the following properties in the YAML Front Matter:
---
layout: post
date: YYYY-MM-DD
title: "Your post title"
description: "Your post description"
author: jack
---
The
titleanddescriptionare used on the post but also for the meta tags. Theauthormust be a existing authoridin your_config.ymlfile.
- Write with blog post content.
Add new page
To create new static pages, follow these steps:
- Create a
.mdfile at the root of your project (example:page.md). - Add the following properties in the YAML Front Matter:
---
layout: page
title: "Your page title"
description: "Your page description"
---
The
titleanddescriptionare used on the page but also for the meta tags.
- Write the content of your page.
Add meta tags
Meta tags for all kind of page (home, page, post and error) are already configured based on the content you're filling in _config.yml for the homepage and in the front-matter for the others.
If you wish to modify the behavior of already existing meta tags settings or to add new ones, head over the head.html partial in _includes folder.
Edit error page
Simply edit the content of the 404.md page.
Update styles
All the .scss files are in the _sass folder arranged by components (header, pagination, footer...). They are called by the main stylesheet /assets/css/style.scss.
Feel free to modify styles the way you want (SASS variables are located in _sass/vars.scss).
To do
- [ ] Add syntax highlighting
- [ ] Add Google analytics config
- Write default posts:
- [ ] Neige Features
- [ ] Page elements
- [ ] Install Neige to your Jekyll website
- [ ] Make Neige your own
- Write default pages:
- [ ] About page
Questions
- Gems: in
.gemspecorGemfile? - Difference between GH pages remote theme and classic Jekyll theme
- Versioning configuration (master branch // dev branch)
Development
Launch local web server with live reloading (port = 4000):
bundle exec jekyll serve --livereload