A site’s main configuration is held in the _config.yaml file in the root directory of the site. Everything from this file is available in layouts and templates via the $site variable.

How you use the various configuration variables in your site is up to you and you can configure your layout templates as you wish. However, the example site tends to use the stuff in _config.yaml for site-wide configuration.

One of the first things you’ll probably want to do is open the _config.yaml file and define your site.

You can put anything you like in the _config.yaml file but to match the example site’s structure the following fields are used:

Basic Site Details

titleThe title of your site (as it may appear in the header).
orgNameThe name of the organisation or person that has created the site.
descriptionThe description of the site as it will appear in the home page’s meta description HTML tag. This is the description search engines will see.
disambDescJust a further description for disambiguation. It’s used in head-section meta tags.
logohis is absolute path (minus the URL domain) to the logo for your site.
timezoneThe timezone for date and times on your site.
copyrStartThe start year for the copyright notice in the footer.
plainDomainJust the plain domain name of your production site, without and ‘http//‘ prefix.
devportThe port you want to serve the development build from. It defaults to 8081.


Your site should have at least one author but can have as many as you like. Authors should at lease have a name defined but can also have things like a logo, email address, twitter username or whatever.

default_authorThis points to the default author for the site. This author will be used if no specific author is specified for a page or a post.


produrlThis is the production URL for your live site.
devurlIf you’re using the in-built server to view your development site, the ‘devurl’ setting is not used. It is only used if you were serving the development site from your local machine in another way, like for example via a MAMP or WAMP installation.
assetsurlThis is the URL where you keep your assets, which are things like images and stylesheets. You only really need to change this if you’re serving assets from something like a CDN. Leaving it as null means assets will be served from the assets subdirectory of your own site.


postsPerHomePageThis is as it says really. It’s the number of posts you want on each home page.
useFileExtsThis indicates whether or not you want to use file extensions. If you want posts to be http:://yourdomain.com/this-is-a-post.html then set this to true, if you don’t want the ‘.html’ file extension on the end then set this to false and your posts will appear as http:://yourdomain.com/this-is-a-post. You probably want false unless you have a burning desire to do otherwise.