Some things should be boring. PDF generation is one of them.

The last PDF service you'll ever buy.

Rename the customer, break the total, or rewrite the line items. The PDF below is generated from exactly that JSON through the docfuchs API.

Trust is good, control is better. Go wild, break things.

Public demo: Do not enter real personal, confidential, or secret information. How the demo processes data

template.typ

This Typst template is rendered with the JSON on the right. Public previews always receive an injected DEMO stamp.

DEMO enforced

data.json

This payload is sent directly to the render API. Changes show up in the PDF.

PDF preview

Rendered from the JSON on the left. Not reconstructed, not painted.

Not rendered yet

PDFs you can poke

Some things should be boring. PDF generation is one of them.

docfuchs turns JSON and Typst templates into reliable PDFs through a clean API. Invoices, work orders, reports, and compliance documents - generated without document drama, printer folklore, or that one spreadsheet nobody dares to open.

Typst templatesVersioned and reviewable
JSON inputThis exact payload is rendered
PDF outputNo screenshot, no trick

Time for stats

Measured, not guessed.

Local reference run on this machine with the business invoice template, release build, and full CPU concurrency.

Hardware AMD Ryzen 9 5950X, 16 cores / 32 threads, 62 GiB RAM
37,599 PDFs in 30.02 seconds
1,252.30 PDFs per second
800 µs average per PDF
32 parallel workers

Throughput depends on template complexity, fonts, assets, hardware, and render concurrency.

API-first, boardroom-safe

Drop it behind your product, ERP, CRM, or that one internal tool everyone pretends is temporary.

Template control

Layouts live as code, can be reviewed, and stay versioned per customer or document family.

Predictable renders

JSON in, PDF out. Schema validation catches bad data before it becomes a finance incident.

Operationally boring

Bearer auth, health checks, render timeouts, and concurrency limits. The exciting part is your product.

Small surface area

Seven endpoints. API docs, obviously.

Health, templates, schema, examples, source, and render. Most PDF pipelines do not need a maze.

Open API docs
  • GET/api/health
  • GET/api/templates
  • GET/api/templates/{name}/schema
  • GET/api/templates/{name}/example
  • GET/api/templates/{name}/source
  • POST/api/render/{name}
  • POST/api/render-source

On Prem, Dockerized, or native

Run it the way your business runs software.

docfuchs is not a black-box subscription held together by hope. You get a serious PDF pipeline, with editor or without, with support, and with a deployment model that fits your organization.

On Prem

For documents and data that need to stay inside. Behind your reverse proxy, under your processes, in your environment.

Scalable, with support

Render timeouts, concurrency limits, and clear operational boundaries. Plus support when the PDFs are not just nice to have, but production-critical.

Dockerized or native

Ship it as a container or install it natively. Add the template editor for teams that want control, or run the lean API without a UI.

Make your document pipeline boring in the best possible way.

Bring your templates, compliance constraints, and the PDF that once broke production.

Book a serious demo