Skip to content

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.

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 engine image (cosign)
make clean                # remove build artifacts
make help                 # list commands

The first build pulls the image from the registry; later builds reuse it. Add using=<config> to publish/all to select a build edition — see Conditional content.

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 to core

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.