statigen
v0.5.2
Published
A static site generator that supports html, ejs, and markdown source files
Downloads
272
Readme
statigen
A static site generator with built-in support for ejs templates and markdown-to-html transformations.
NOTE: This is still a work in progress, but please feel free to open github issues with any problems you encounter.
Installation
npm install statigen
Usage
#generate using the default `src` and `dist` folders
npx statigen
#generate using custom source and out directories
npx statigen --sourceDir source --outDir docs
Init
You can create a new project by running the init
command. This will create a new directory and copy the default statigen template project.
npx statigen init path/to/new/folder
Templates
By default, html and markdown files will look for a file called _template
at their level or above.
HTML templates
Place this comment somewhere in your html file, and that's where the other files will have their content embedded
<!--content-->
For example,
src/file1.md
# Cool title
_src/template.html
<html>
<body>
<!--content-->
</body>
</html>
Produces
__dist/file1.html
<html>
<body>
<h1 id="cool-title">Cool title</h1>
</body>
</html>
Frontmatter
You can add frontmatter to your markdown files which can be used to override certain items. Here are the currently supported values:
priority
- a number specifying the priority of a fileparentPriority
- a number to reorder the parent folder for a filetitle
- a title to use instead of the filenameparentTitle
- a title to use for the parent folder instead of the folder nametemplate
- a path to a custom template to use for the current file
Here's how you use it:
some-folder/some-file.md
---
priority: 1
parentPriority: 3
title: Some File
parentTitle: Some Folder
template: custom-template.ejs
---
Actual content