README.md
May 7, 2026 · View on GitHub
Database in. PDF out. Layout-as-code for high-volume, high-precision PDFs — catalogs, reports, manuals, anything where InDesign would mean fifty thousand clicks. Open source, deterministic, scriptable, in production since 2011.
Real-world performance
Three projects, same binary, same machine (M4 MacBook Air):
# Multi-level TOC, cross-references, PDF bookmarks
$ sp --data produkte.xml --layout katalog.xml
1828 pages rendered in 2m 56s
exit status 0
# Table of contents
$ sp --layout reisebroschuere.xml --data kundendaten.xml
13 pages rendered in 0.54s
exit status 0
# ZUGFeRD invoice with PDF/A-3 validation
$ sp --data facturx.xml --layout zugferd.xml
1 page rendered in 0.21s
exit status 0
Sample brochure spread — layout-driven, image cutouts, branded tables, cross-references with page numbers.
Try it in 60 seconds
Grab a ready-to-run package from https://download.speedata.de/ (extract, set PATH, done — no TeX install, no InDesign license, everything bundled including LuaTeX). Then:
sp new mycatalog && cd mycatalog
sp # → publisher.pdf
Full setup walkthrough in the installation guide.
Why speedata Publisher
- Deterministic. Same data → bit-identical PDF. Reviewable, diff-able, CI-ready.
- Scales. 1,000-page catalogs are the normal case, not the stress test.
- Layout-as-code. XML layout language with XPath. Anything that takes a thousand clicks in InDesign is one rule here.
- Open source. AGPLv3, builds from source, no closed-source dependencies.
- Battle-tested. Production use since 2011, hundreds of QA test cases, long-term-support releases.
Think of it as XSL-FO on steroids or server-side InDesign.
Documentation & examples
- Manual: https://doc.speedata.de/ — every command, every attribute, both XML parsers, HTML/CSS mode, REST server mode.
- Examples repository: https://github.com/speedata/examples
- Showcase: https://www.speedata.de/en/#showcase
- QA suite: the
qa/directory contains hundreds of self-contained test cases — small, readable, copy-paste-ready. - Architecture:
ARCHITECTURE.md - News & changelog:
News.md,news.speedata.de
Community & support
- Bugs & feature requests: GitHub issues
- Commercial support and consulting: speedata.de/imprint
- Contributing: fork, branch, PR. Build instructions in
BUILDING.md.
License
AGPLv3 — see COPYING.
speedata Publisher uses LuaTeX for PDF generation (GPLv2 or later). LuaTeX is bundled in the release packages; full third-party list in THIRD_PARTY_LICENSES.md.
Source: https://github.com/speedata/publisher/ · Web: https://www.speedata.de/