Professional documents directly from the Command Line
docgen creates invoices, offers and contracts from JSON data using Typst templates – offline, in 7 languages, with 20 document types.
GitHubdocgen creates invoices, offers and contracts from JSON data using Typst templates – offline, in 7 languages, with 20 document types.
CLI Typst Rust 20 Templates 7 Languages 10 Fonts PDF Encryption AI-Friendly Homebrew Open Source
Installation
macOS
Homebrew
The easiest way on macOS. No Rust setup needed, ready to use immediately.
brew tap casoon/tap brew install docgenGitHub Releases
Rust / Cargo
Cargo
Compile directly from crates.io – for all platforms with Rust support.
cargo install docgenOpen on crates.io
Usage
# Generate an invoice docgen invoice data.json # Offer in a different language docgen offer data.json --lang de # With font and output path docgen contract data.json --font montserrat --output ./output/ # With PDF password protection docgen invoice data.json --password secret123
JSON file as the only input
PDF output in the desired folder
Features
20 Document Types
Invoice, offer, contract, concept, report and many more – all with a consistent design.
7 Languages
Generate documents in German, English, French, Spanish, Italian, Dutch and Polish.
10 Font Presets
Inter, Lato, Montserrat, Open Sans, Playfair Display, Raleway, Roboto, Source Sans Pro and more.
PDF Encryption
Password-protect documents with custom permissions – ideal for sensitive business files.
AI-Friendly Workflow
JSON input makes it easy to integrate with Claude, ChatGPT or any other AI tool.
Offline & Private
No cloud, no API calls. All data stays local on your machine.
Perfect for
Freelancers
Agencies
Startups
Consulting Firms
CI/CD Pipelines