This repository has been archived by the owner. It is now read-only.
A static website generator made with Bash & co.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
archetypes
config
content
functions
lib
public_html
static
templates
.gitignore
.gitmodules
README.md
fakestache

README.md

FakeStache SSG

Yep! An Other Static Website Generator!

Made with Bash >= 4 (& coreutils), Pandoc and Mustache.

The documentation is a WIP.

Installation

  1. git clone git@github.com:hs0ucy/fakestache-ssg.git && cd fakestache-ssg
  2. git submodule init
  3. git submodule update

Usage

  • To simply build the web site:
    • ./fakestache
  • To build the site in development mode:
    • ./fakestache -d
  • You can force the complete reset of the web site before building it:
    • ./fakestache -r

Content

All the content of your site should be markdown (*.md) file and belongs in the content/ repository. That folder must contains at least an index.md file.

Archetypes

Archetypes are presets files for writing content faster. When you create a content through an archetype, the basic metadatas of your markdown file are prefilled and it is put in the right place of the content tree.

Create a content from an archetype

  1. The first argument is the name (whithout the *.md extension) of an existing archetype.
  2. The second (and the last) argument is the title you want to give to your content.
  • ./fakestache nameofthearchetype "The title you want for your content"

So if i'm using the sample.md archetype to create a new content it will look like this :

  • ./fakestache sample "This is my first content made from an archetype"

If it is a success FakeStache will output something like this :

  • - The file '/home/hs0ucy/Documents/fakestache-ssg/content/sample/2017/03/this-is-my-first-content-made-from-an-archetype.md' hab been created.

Now you can open the file you have created and start to write right away whithout the need of filling the metadatas.

Templates

FakeStache uses the mustache template engine (for bash) to give more flexibility to build your theme. When you build your project FakeStache converts mustache templates to pandoc HTML templates.

A lot of params in config/site.cfg are includes by mustache during the creation of the pandoc's templates.

  • ./templates
    • mustache/
      • partials/
        • head.mustache
      • feed/
        • feed-entry.mustache
        • feed.mustache
      • default-index.inc.mustache
      • default-index.mustache
      • default.mustache
      • index.mustache
    • pandoc
      • empty: dynamically created