Welcome to the build system demo. This deck walks through the template-gen harness: how presentations are authored in sections, how themes work, what the build pipeline does, and how Claude Code skills tie it all together.
Four main sections today. We start with how slide content is organized, then cover themes, the build pipeline, and finally Claude Code integration.
Let's start with the core authoring model.
A single slides.md works fine for short decks, but anything past 20 slides becomes painful. Splitting by topic means you can reorder sections by renaming files, and multiple people can edit different sections without conflicts.
The frontmatter file is special: it contains only YAML configuration and must use the 00- prefix so the assembler knows not to insert an extra separator after it. Everything else is content files with standard Marp slide separators.
Next, how themes are structured and how they stay portable.
Each theme is fully self-contained. If two themes need the same logo, we copy it into both rather than sharing. This keeps themes portable and independent. The merge script handles combining the base theme with any per-presentation overrides.
Now let's look at what happens when you run make html.
Four stages, all orchestrated by the Makefile. The assemble step is why slides.md lives at the presentation root, next to the images folder: Marp resolves image paths relative to the source file. The post-process step makes the output fully portable, no external file dependencies.
DIR must be an absolute path or relative to your current working directory. THEME defaults to bai-flat if omitted. The clean target removes both the output directory and the assembled slides.md build artifact.
Finally, how Claude Code skills accelerate the workflow.
Each skill maps to a step in the workflow. Scaffold with /new-presentation, write a synopsis, generate with /generate-slides, build with /build, and verify with /inspect. The skills read the same guide.md and writing rules that a human author would reference.
That wraps up the build system demo. Happy to take questions about the harness, the build pipeline, or how to set up your own presentations.