Code Layout

Find the current implementation in the runebender repository.

StatusAlpha
StabilityVerify file paths against the current source

One Application Package

The root runebender Cargo package contains the native editor, headless commands, and reusable font engine. The browser host is a separate Cargo workspace under web/ and reuses the editor sources. The complete architecture guide is the source map and change-routing guide.

Where to Start

AreaSource
Executable and CLIsrc/main.rs, src/application/cli.rs
Native application state and editingsrc/application/workspace.rs, src/application/editor/
Views, canvas, and controlssrc/application/view/, src/application/widgets/
Platform adapterssrc/application/platform/
Canonical document and persistencesrc/font/
Agent and live editing contractssrc/automation/
Outline, text, formats, and analysissrc/outline/, src/text/, src/formats/, src/analysis/
Toolkit-independent UI data and workflowssrc/ui/, src/workflows/
Browser hostweb/

The in-memory document is font::project::Project. Babelfont owns canonical glyph geometry; UFO and Designspace adapters preserve values that are not represented there.

Before Editing

Read the repository’s AGENTS.md for local working rules. For interface changes, read interface design principles and themes. Use Development for build and validation commands.