Baudelaire
A static site generator that speaks Typst. Write your pages as .typ files and get incremental builds, clean URLs, taxonomies, pagination, feeds, and search. There is no template language to learn, because the template language is Typst.
Why Typst instead of Markdown?
Markdown runs out of road quickly. It has no variables, no functions, no math, and no way to load a CSV and build a table from it. The moment you want any of that, you reach for a template engine and a pile of plugins.
Typst already has all of it: functions, imports, data loading, math, code highlighting. So a page is a small program, and a layout is just a function that takes content and returns markup. Baudelaire adds what a compiler leaves out: a content model, clean URLs, feeds, and a build cache.
Explore
- QuickstartScaffold, build, and serve in three commands.
- SearchA flat index and a command palette, from one config block.
- Asset pipelineMinify CSS, bundle JS, and fingerprint filenames.
- TaxonomiesGroup pages by tag with generated index pages.
- Feeds & sitemapRSS, Atom, and sitemap.xml from your dated pages.
- ConfigurationEverything the build reads, in one KDL file.
Latest writing
This entire site is built with Baudelaire. The source lives in the repository under docs/.