zapata

1.1.5 • Public • Published

zapata

Extremely minimal static site generator: handlebars + markdown + frontmatter

Installation

npm install -g zapata

Getting started

To create yourself a simple starting point:

zapata create mysite

You write posts (articles, pages) as markdown .md files in the posts directory. A single template.html file (in Handlebars format) is used to convert each post into an HTML page.

To generate the site as plain HTML, run this from anywhere inside mysite

zapata generate

Optionally you can pass the path to your site's source directory.

This creates (or replaces) a sub-directory called generated. Everything is copied into generated (apart from the raw template.html and posts), so you can include images and .css resources and other pages required by your template.

Posts are converted to .html files at the root level.

The generated index.html file is just a redirector that switches to the latest post.

So in summary:

  • Customise the template.html file to get the look you want.
  • Write posts in the posts directory.
  • Run zapata generate to produce the generated sub-directory that is ready to be deployed.

Structure of a post

A post must start with a frontmatter section, which is a YAML object inside --- lines:

---
title: The introductory page of this site
posted: 2019-12-14
author: Octavia Optimism
---

The title and posted properties are mandatory. Posts are sorted by the posted data (most recent first).

Any other properties you define are exposed to the template as an object called data. The example demonstrates every feature of the template data model.

License

MIT

Readme

Keywords

none

Package Sidebar

Install

npm i zapata

Weekly Downloads

0

Version

1.1.5

License

MIT

Unpacked Size

962 kB

Total Files

98

Last publish

Collaborators

  • danielearwicker