The tiny static site generator written in lisphp.
The tiny static site generator written in lisphp.
To start a new site, just add the dependency via composer:
$ composer init --require igorw/balrog:dev-master -n
Now you can add the following directories:
assets: All of these files will be copied to the web directory. You can
add JavaScript, CSS and images in here.
layouts: The layouts are used to render the pages. They have a
.html.twig
suffix. You can create base templates and have more specific
ones that extend them using the extends
tag.
Layouts get access to following variables:
post: Contains the data of the current post (it is not set on the index
page). A post has title
, body
and any additional front-matter meta data.
body
contains the markdown body rendered as html.
posts: A listing of all posts in reverse order of publication.
Filenames that follow the index.$format.twig
naming scheme will get compiled
to an index.$format
file.
posts: Markdown files representing blog posts. Must be in the format of
YYYY-mm-dd-slug.md
, e.g. 2012-09-20-like-a-hacker.md
. Each one must begin
with a YAML front matter. Here is a sample blog post:
---
layout: post
title: Blogging Like a Hacker
---
# Blogging Like a Hacker
* I’m bloggin yo!
* ORLY?
* YARLY!
The following fields are defined:
default
,layouts/default.html.twig
is rendered unless specifiedOther fields can be defined at will and used in the template.
In order to build the site, you can use the balrog build
command:
$ vendor/bin/balrog build
This will populate the static
directory with a set of files that can be
deployed onto any static web server.
“Fly, you fools!” - Gandalf