Publisher is a simple command line application for rendering templates from structured data and a template.
A simple command line application for rendering templates from structured data and a template.
USAGE:
pbl [OPTIONS]
OPTIONS:
-d, --data <DATA> Path to the data file [env: PBL_DATA=] [default: data.json]
-h, --help Print help information
-o, --output <OUTPUT> Output file [env: PBL_OUTPUT=] [default: ]
-t, --template <TEMPLATE> Path to the template file [env: PBL_TEMPLATE=] [default:
template.mustache]
-v, --verbose Verbose mode for debugging
-V, --version Print version information
Given a data file, data.json
:
{
"title": "My Blog",
"body": "blah"
}
and a template, template.mustache
:
<html lang="en">
<head>
<title>{{data.title}}</title>
</head>
<body>
<p>Author: {{env.USER}}</p>
{{data.body}}
</body>
</html>
the following command will render the template:
pbl render --data data.json --template template.mustache
By default, the result is written to stdout
and will look like:
<html lang="en">
<head>
<title>My Blog</title>
</head>
<body>
blah
</body>
</html>
The first use case for pbl
was to create a templated CONTRIBUTING.md
document for a project given a data file describing the project.
- Add support for transformations.
- Add support for json-e.
- Ability to specify output path(s).
- Add support for multiple template engines.
- Add support for multiple data formats.
- Given a template, parse the data it requires and return an empty serialized data file or prompt for values.