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.
In short editor is the commercial app — full document editing on top of the
engine. A React shell talks to the engine wasm
running in a Web Worker that renders to an OffscreenCanvas, with a
SharedArrayBuffer carrying camera and gesture state for real-time interaction.
What it does
- Full editing: insert/delete frames, edit text, apply paragraph/character/object styles, transform with gestures (translate, rotate, scale, shear).
- A panel system (properties, styles, swatches, layers, pathfinder, …), a command
palette, and a
paged.*script editor + REPL. - Hosts the content plugins — draw, image, sheets, web, data — through the Plugin SDK.
How it's organized
A pnpm workspace: apps/canvas (the app), packages/client (the wasm boundary —
the CanvasClient, the wire protocol + PROTOCOL_VERSION, the SAB primitives),
packages/shell (state, registries, dockview substrate, theme), packages/catalog
(declarative commands/panels), and packages/ui (input primitives).
How it consumes the engine
It pins the published @paged-media/canvas-wasm + introspect-wasm at a wire
protocol version — pnpm install is enough to build, no core checkout. The
render architecture and fidelity suite are covered under
testing.
Recent activity
- 2026-10-18README: moved to paged-media/paged (apps/editor) [skip ci]e673996
- 2026-10-18Merge pull request #55 from paged-media/w0/park-local-library5497f52
- 2026-10-18Park the local library until repo-wasm ships; back to engine 0.73.x3ad5596
- 2026-10-18Merge remote-tracking branch 'origin/main' into feat/local-repository1b7075f
- 2026-10-18Merge pull request #53 from paged-media/fix/showcase-ledger-selection117f00c
- 2026-10-18Merge pull request #54 from paged-media/pin/sheet-canary-24f5dcf84
- 2026-10-18Library: datasets and paged:// references9642bc1
- 2026-10-18Library: Claude in this tab — the live relay's editor end8489ebb
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.
editor-server — the backend
The TypeScript REST backend for the editor — Fastify + SQLite/Drizzle + better-auth + Stripe — handling accounts, storage, billing, asset proxies, and headless document automation.