printing-press turns OpenAPI contracts into beautiful, fast, portable API documentation for humans and agents.
- Works 100% offline. Open the generated docs straight from disk, zip them, or share them as an archive
- Publish to any static host (GitHub Pages, S3, Netlify, Cloudflare Pages, a CDN)
- AI and agent output built in.
AGENTS.md,llms.txt, per-operation and per-model markdown, plus JSON artifacts - API catalogs built from directories of OpenAPI specs, with multi-version awareness
- Integrated diagnostics via vacuum reports rendered inline with the docs
- Mermaid / UML class diagrams auto-generated for complex schemas
Need help? Have a question? Want to share your work? Join our discord and come say hi!
See all the documentation at https://pb33f.io/printing-press/
- About printing-press
- Quick start
- Installing
- Rendering modes
- Navigation
- Agentic AI
- UML & class diagrams
- Diagnostics mode
- API catalog
- Configuring
- Generated outputs
curl -fsSL https://pb33f.io/printing-press/install.sh | shFor CI environments, set GITHUB_TOKEN to avoid GitHub API rate limits:
GITHUB_TOKEN="${GITHUB_TOKEN}" curl -fsSL https://pb33f.io/printing-press/install.sh | shInstall using npm
npm i -g @pb33f/printing-pressThe npm package is the most convenient install path for Windows. Requires Node 20 or newer.
Install using Homebrew
brew install pb33f/taps/printing-pressgo install github.com/pb33f/printing-press@latestGo names the binary printing-press because it derives command names from the module path. For every other install method the binary is ppress.
Docker images are published to both Docker Hub and GitHub Container Registry:
docker run --rm pb33f/printing-press:latest version
docker run --rm ghcr.io/pb33f/printing-press:latest versionRender docs from the current directory:
docker run --rm -v "$PWD:/work" -w /work pb33f/printing-press:latest ./openapi.yaml
docker run --rm -v "$PWD:/work" -w /work ghcr.io/pb33f/printing-press:latest ./openapi.yamlSee the installing docs for the full Docker recipes (read-only mounts, serving, port mapping, Linux user mapping).
curl -fsSL https://pb33f.io/printing-press/install.sh | shcurl -o train-travel.yaml https://api.pb33f.io/bootstrap/train-travelppress ./train-travel.yamlOpen api-docs/index.html in your browser and you have static, offline OpenAPI docs with no server running.
To preview the published (web-hosted) layout locally, use --serve:
ppress --serve --output ./api-docs ./train-travel.yamlThen open http://127.0.0.1:9090.
Read the full docs at https://pb33f.io/printing-press/
printing-press is a product of Princess Beef Heavy Industries, LLC.
