core-slim — the everyday template
core-slim is the template most authors should use. The Keystone engine lives
in a prebuilt, signed Docker image; your project carries only your content and
config. Builds are fast, the project stays small, and there's nothing about the
engine to maintain.
Get it from the core-slim template repository via Use this template, then follow the Quickstart.
What you get
A project with manuscript/, assets/, fonts/, and the config files you edit
(pandoc.yaml, project.conf, publish.txt, shortcuts.yaml) — see
Project anatomy. The engine is referenced,
not included — the same one every template runs.
Commands
make publish # build a PDF (default)
make publish format=epub # build a specific format (pdf | epub | docx | odt)
make all # PDF, EPUB, and DOCX
make import artifact=draft.docx # convert an existing document to Markdown
make verify # verify the signed runtime image (cosign)
make clean # remove build artifacts
make ps # show this project's containers
make down # stop this project's containers
make reset # stop them and drop the volumes they shared
make help # list commands
The first build pulls the image from the registry; later builds reuse it. Every
project.conf setting that takes a one-run override is listed under
How settings are applied.
Each build runs sandboxed, making it reproducible and safe to run on a manuscript you didn't write.
When a newer Keystone release lands, moving a slim project onto it is usually just bumping the pinned image tag — see Upgrading your project, or hand the AI-assisted procedure to an assistant.
When to switch
You don't modify the engine here — that's the point. If you need to add a
handler, change a filter, or study the internals, switch to
core, which ships the engine in your project.
For diagrams, core-diagrams is this template with a
renderer already wired in, or
wire that hook into this one.