core — the render engine
The Rust render engine that parses and renders IDML — the parse→scene→text→compose→GPU pipeline, the wasm boundary, and the dual rasterization backends.
In short core is the heart of paged — a Rust workspace that reads an IDML
package and renders it pixel-faithfully. It's public (dual-licensed) and is the
only repo every other consumer depends on, across a wasm/package boundary.
What it does
- Parses full Adobe IDML — the design map, spreads, frames, stories with threading, cascade-resolved styles, gradients, and placed images.
- Lays out text with an InDesign-calibrated Knuth–Plass composer (hyphenation, tab stops, multi-font runs).
- Renders through WebGPU (Vello) for forward output, with a tiny-skia CPU backend kept for headless fidelity testing.
- Offers a mutation layer (insert/delete/edit, all undoable), a headless
ViewerSession, PDF export, and byte-faithful round-trip serialization.
How it's organized
A multi-crate workspace following the pipeline: paged-parse → paged-scene →
paged-text → paged-compose → paged-gpu, with paged-renderer orchestrating
and paged-fidelity running the ΔE2000/SSIM diff harness. The scripting surface
lives in paged-script (Boa) + paged-run (headless CLI), and the public
scripting catalog in paged-introspect.
How you consume it
Published to npm as @paged-media/canvas-wasm, introspect-wasm, and
idml-viewer (versioned 0.<protocol>.<patch>). No consumer takes a source
dependency. The renderer reference documents its behavior;
the scripting layer documents its paged.* surface.
Recent activity
- 2026-06-22ci(cla): allowlist the maintainer (drietsch)14890d9
- 2026-06-22ci(cla): add CLA Assistant check (sign once, org-wide)a41a21f
- 2026-06-22docs(license): update stale "closed/private editor" references30128fa
- 2026-06-21ci(notify-docs): ping docs.paged.media to rebuild on source changed6db58e
- 2026-06-19refactor(catalog): relocate to paged-introspect + publish via introspect-wasm + catalog.json artifact (#10)d9bb94a
- 2026-06-19feat(paged-script): capability catalog as a single source of truth + paged-run describe (#9)b845165
- 2026-06-19feat: paged-run headless engine + paged-script authoring host fns (#8)13c60ee
- 2026-06-19paged-write: round-trip nested tables byte-identically (engine fix)4a51f71
Repositories
A tour of the repositories that make up paged — the engine, the editor and its server, the viewer, the registry, the docs, and the brand kit.
editor — the editing frontend
The commercial desktop-publishing frontend — a React shell driving the engine wasm in a Web Worker on an OffscreenCanvas, with panels, gestures, scripting, and plugin integration.