Papermake
lastmod 2026-07-15created 2026-07-151 edits
Papermake is an HTTP-based document generation server that generates PDFs from Typst templates.
Purpose
- Centralized management of Typst templates
- PDF generation through a REST API
- Template version management
- Generation history (Audit Trail) management
- Provides a template repository similar to Docker Registry
Key features
- Templates managed as code (Templates as Code)
- Templates support immutable (Immutable) versions and mutable (Mutable) tags.
- For example, invoice:v1.0.0 never changes once created, while invoice:latest can be updated to point to the newest version.
- No need to install Typst in the client environment.
- The server renders and returns the PDF with just an HTTP API call.
- Stores templates keyed by their SHA-256 hash.
- Identical templates are not stored twice, and storage space is managed efficiently in a Git-like way.
- Records the hashes of the input data and the output for every rendering job.
- Every generated PDF can be traced exactly to the template and data it was generated from.
- Can be built and run in-house with just a single executable written in Rust, S3-compatible object storage, and ClickHouse.
See also
- Typst
- Stirling PDF - A self-hostable, web-based PDF editing tool