Compile
Deterministic writer · content-addressed · API-first

The PDF writer for print production.

Compile is the only writer in the Print With Synergy stack — it applies trapping, printer's marks, imposition, soft-proofing, and white-underbase as declarative, schema-versioned producers and emits byte-identical, audit-logged PDFs. Same inputs, same bytes, every time.

AGPL-3.0 · trap · marks · impose · cjd · soft-proof · white-underbase · content-addressed lineage

How it works

From a plan to print-ready bytes

Compile turns declarative production plans into deterministic, audit-logged PDFs — built on codex's facts, governed by the policy you hand it, and traceable end to end.

01

Read the facts

Compile consumes codex's read-only primitives — geometry, colour, spot intents, dieline — and never re-extracts them. The writer builds on the facts; it doesn't recompute them.

02

Apply a producer

Hand Compile a declarative plan — a trap policy, a marks template, an impose layout — and the matching producer writes it into the PDF. Trap, marks, impose, soft-proof, white-underbase: one job each.

03

Deterministic output

Same inputs, same bytes. Every apply is content-addressed by a SHA-256 of the input, the producer schema version, the engine fingerprint, and the config — so a result is reproducible and cacheable.

04

Audited lineage

Each producer call writes an HMAC-chained lineage record — input/output hashes, engine fingerprint, timings. The chain proves no record was silently dropped or rewritten.

Six production-writer producers

Compile is reactivated as Platform's production add-on — trap, marks, impose, CJD, soft-proof, and white-underbase, each a schema-versioned, deterministic producer that writes into the PDF and logs its lineage.

Trap

Ink-pair spread / choke trapping with selectable engines (pure-Python or Ghostscript) to compensate for press registration and eliminate white seams at ink boundaries.

Marks

Printer's marks for production and proofing — registration, crop, bleed, colour bars, fold lines, slug text — plus PDF / SVG / PNG template ingestion for the shop floor.

Impose

Sheet step-and-repeat with work-and-turn / work-and-tumble backing, bleed expansion, and multi-cell placement — driven by sift via the sift.solve → compile.impose chain.

CJD orchestrator

Bundle multiple producers into one job envelope in canonical order — rewrite → marks → impose → trap — with lineage tracking and a single audited result.

Soft-proof

ICC simulation that renders a PDF under a destination profile and reports ΔE summaries (max / mean / p95), so colour drift is caught before a hardcopy proof.

White-underbase

White-ink, underbase, varnish, or foil plate generation for labels, garments, and dark substrates — derives the named separation with coverage + choke policy.

Why Compile

Deterministic, audited, schema-driven

Compile is the stack's only writer — and it treats production as declarative schemas with content-addressed caching and an immutable lineage chain: the determinism and auditability ad-hoc PDF tooling lacks.

Deterministic by design

Same job description + input PDF → identical bytes. Each apply is content-addressed by a SHA-256 of the input, producer schema version, engine fingerprint, and config — so there's no “it worked yesterday”. Reproducible, cacheable, diffable.

Lineage you can audit

Every producer call writes an HMAC-chained lineage record — input/output sha256, engine fingerprint, codex section versions, timings. Chain validation proves no record was silently dropped or rewritten.

Built on codex, judged by lint

Compile consumes codex's facts and applies the policy it's handed — a trap policy, a marks template, an impose plan. It doesn't decide whether the result is acceptable; that's lint. Each engine owns one job.

Per-producer sidecars

COMPILE_PRODUCER gates per-producer deployments: ship a trap-only image, a marks-only image, etc. Synergy's gateway routes accordingly. Run it all-in-one, or split the writer across sidecars.

Pricing

Free to self-host, or add it on Platform

Run the writer yourself, or enable the production add-on in your Platform workspace — same engine, you pick who runs it.

Open source

Self-hosted
Free

AGPL-3.0 · your infrastructure

Run the whole writer yourself — every producer, the CLI, and the HTTP API. No quotas, no per-document fees.

Get the source →

Pros

  • Every producer — trap, marks, impose, cjd, soft-proof, white-underbase
  • HTTP API + CLI + Python package
  • Deterministic output + HMAC-chained lineage
  • Per-producer sidecars via COMPILE_PRODUCER (Docker, with Ghostscript for trap)

Cons

  • You provision and run the service + Ghostscript
  • You own upgrades, scaling, and monitoring
  • Community support only — no SLA

On Platform

addon_production
Add-on

enabled in your Platform workspace

Enable the production add-on in Platform and call the writer through the production module routes — managed, metered, supported.

Add on Platform

Pros

  • Fully managed — we run the engine + Ghostscript
  • Production module routes: trap / marks / impose / cjd / soft-proof / white-underbase
  • Imposition runs the sift.solve → compile.impose chain
  • Entitlement-gated, metered, and audited per tenant
  • Automatic upgrades and backups, with support

Cons

  • Requires a Platform workspace + the production entitlement
  • Documents processed in the managed cloud

The open-source edition is AGPL-3.0 and free forever. The production add-on is enabled and metered through your Platform workspace.

Open source · managed hosting

Independent tools. Pick the ones you need.

A toolkit of focused, standalone PDF utilities — extraction, preflight, viewing, assembly, imposition planning, and an asset store. Each one plugs into the prepress workflow you already run. Use the open source yourself, or let us host any single tool for you on host.withsynergy.io.

collate

Beta · OSS Cloud

Objective file-comparison engine — measured coverage and geometry differences for plate ↔ 1-up and document ↔ document, never a verdict.

atlas

Coming soon Cloud

The print-data integration hub — canonical jobs, orders, and customers kept in sync across your MIS, ERP, and prepress tools.

compile-pdf

Beta · OSS Cloud

The deterministic PDF writer — trapping, marks, imposition, soft-proof, and white-underbase as audit-logged producers.