Choosing a template
You don't install Keystone directly — you start from a template. A template
is a ready-made project skeleton: the directory layout, a Makefile, the Docker
wiring, and the config files you fill in. It's what turns the Keystone engine
into something you can write a book in.
Two templates ship today. Both produce identical output from the same manuscript — the difference is whether the engine is a sealed black box or sitting in your project for you to read and change.
core-slim |
core |
|
|---|---|---|
| Engine | Prebuilt image, out of sight | Shipped in your project (.pandoc/) |
| First build | Fast — pulls the image | Slower — builds the image locally |
| Customize the engine | No | Yes |
| Verify image signature | make verify |
(you build it yourself) |
| Best for | Writing your book | Understanding or customizing the engine |
How to choose
Start with core-slim. It's the everyday template: you write Markdown, edit
pandoc.yaml, and run make publish. The engine stays out of your way, builds
are fast, and you can verify the signed image you're pulling.
Reach for core only when you need to see inside the engine or change it —
add a handler, adjust a filter, study how a build actually runs. It ships the
entire runtime in your project and builds the image locally, so nothing is hidden
and there's nothing to reverse-engineer. Its engine guide
documents what you now have in front of you.
Either way the authoring experience is the same: the Writing and Configuration sections of this manual apply unchanged to both.
Getting a template
The quickest start is GitHub's Use this template button on a template's repository, which gives you your own copy as a new repository. You don't need GitHub, though: download the repository's source (Code → Download ZIP, or any clone) and start from those files under whatever version control you prefer — or none. Git and a hosted repository are conventions Keystone leans on, not requirements.
The Keystone CLI will make this smoother still, scaffolding a new project without tying you to git or GitHub. Until it ships, using the template or downloading its source is how you begin.