I've been building fullbleed for a while and just shipped v0.2.5. It's a PDF generation engine written in Rust, distributed as a Python wheel.
The short version: HTML/CSS in, PDF out. No headless browser. No cloud. No Chromium. Works fully offline. *Why fullbleed:
Full Bleed is a term that means printed on the edge, or end to end of a page. Thats what I wanted, a full end to end solution that didn't require sys dependencies and unlike browsers, I could ACTUALLY do a print layout full bleed. Some other reasons: -Deterministic, fixed point as the base measurement (.000035mm~) so that things are where I want them to be -Composition and authoring, so I can put templates and the variable data in the same place without 200 lines of glue code -vendored assets- Tired of handling system fonts etc -HTML/CSS layout engine so that I could take advantage of the most commonly used document description convention, but still abstract away from it. -Agent-first design. I was honestly annoyed with how bad agents were at composing PDFS, and wanted an agent-friendly loop. *What makes it different from WeasyPrint / wkhtmltopdf / Prince:*
- *Deterministic output*: SHA-256 hashing on every render. `--repro-record` / `--repro-check` for CI pipelines. Same inputs always produce the exact same PDF bytes. I don't know of any other open-source PDF engine that does this. - *Structured page data*: The engine returns structured JSON alongside PDF bytes — running totals, per-page sums, grand totals. Useful for financial statements where you want to reconcile programmatically before the PDF even lands. - *Rayon-backed parallel batch*: `render_pdf_batch_parallel()` with Python bindings that release the GIL. You can generate 10,000 statements while your Python process does other work. - *VDP / transactional compose*: Overlay variable data onto source PDF templates with feature-driven page binding. Built-in, not bolted on. - *Agent-safe JSON CLI*: Every command emits a versioned schema. `--json-only` mode for CI and LLM agent workflows. `--schema` for introspection.
*The pricing angle:* Prince costs $3,800+/year per server. DocRaptor starts at $15/month but quickly hits $600/month for real volume — and it's cloud-only. fullbleed is AGPL-3.0 free for OSS, and commercial licenses start at $20/month per org with no usage caps.
*Quick start:* ``` pip install fullbleed fullbleed init . python report.py ```
That scaffolds a full project with Bootstrap 5, Inter font, and component-first Python helpers — all vendored and hash-pinned offline.
GitHub: https://github.com/fullbleed-engine/fullbleed-official
Happy to answer questions about the rendering pipeline, the determinism model, or the Python/Rust binding design.