Home

Awesome

glayu

Build Status

What is Glayu?

Glayu is a static site generator for mid-sized sites that generate content frequently and have to deal with multiple categories, like magazines and newspapers.

What makes Glayu different from other static site generators is the way it structures the source folder: when you publish an article using Glayu, the markdown file is placed inside a subfolder of the source directory following the permalink definition.

With the default permalink definition categories/year/month/day/title your source and public directories will look like:

Workflow

The motivation of this source folder organization is to split the site content in smaller units that can be managed independently. Glayu takes advance of this folder organization to enable the concurrent and partial generation of the site.

In the previous example a complete build of the site will handle the /source/_posts/world/2017/07/11 and /source/_posts/us/2017/11 folders concurrently.

Glayu enables the partial generation of the site by using regular expressions, so if you will be interested in only generate the world articles you could use the build command like this:

$ glayu build _posts/world*

Features

Quick Start

Pre-requisites: Erlang installed on your machine.

Get the latest Glayu binary, grant execution permissions if needed, and add it to your PATH

Init the site.

$ glayu init glayu_site
šŸ¦ Your Glayu site has been created at ${PATH_TO_SITE}/glayu_site

Create your first post.

$ cd ./glayu_site
$ glayu new "My First Glayu Article"
šŸ¦ Post created at ${PATH_TO_SITE}/glayu_site/source/_drafts/my-first-glayu-article.md

Publish your post.

$ glayu publish my-first-glayu-article.md
šŸ¦ Draft published to ${PATH_TO_SITE}/glayu_site/source/_posts/software/static-sites/2017/07/11/my-first-glayu-article.md

Build the site.

$ glayu build
āœ“ Site pages generated.
ā””ā”€ā”€ 1 pages generated.
āœ“ Category pages generated.
ā””ā”€ā”€ 2 category pages generated.
āœ“ Home page generated.
āœ“ Site assets copied from theme folder to public folder.
ā””ā”€ā”€ 20 files copied.
šŸ¦ Site Generated Successfully.

The site pages are generated under ../glayu_site/public

Documentation Site

Check the docs.

Themes

Glayu Times

Glayu Bootswatch by David Gustafsson

Source Code Organization

Glayu is an Elixir umbrella project including following applications:

ApplicationDescription
glayuglayu escript binary generation
glayu_coremain Glayu logic
glayu_buildSiteTree and site pages rendering logic
glayu_preview_serverpreview server

License

This project is available under the MIT license.