DrawCraft

Vector illustration, reimagined in pure Rust.
A fast, open-source, clean-room take on the Adobe Illustrator workflow — native on macOS, Windows and Linux, and in the browser via WebAssembly.
By the artcraft team.

DrawCraft editing the Dusk poster example: categorized toolbar, canvas with a selected sun, and the Layers panel

Dusk — an example poster made in DrawCraft

examples/dusk-poster.drawcraft — built entirely through DrawCraft's command API

### Why DrawCraft - **Familiar.** Illustrator's layout, tools, menus, panels and shortcuts — the Pen, Direct Selection, Pathfinder, Smart Guides, Appearance, Swatches, Layers… you already know how to use it. - **Fast.** Multithreaded SIMD rendering off the UI thread; 20,000 shapes render in ~27 ms at full retina resolution while the interface stays at 120 fps. - **Robust.** Exact curve booleans (no "cannot perform operation"), unlimited undo via structural sharing, property-tested file round trips. - **Open.** A documented native format (`.drawcraft`, JSON), first-class SVG, PDF (and PDF-compatible `.ai`) import/export, PNG/JPEG/WebP and Export for Screens. - **Agent-native.** Every menu item, tool gesture, panel and dialog is drivable over a JSON control channel and an **MCP server** — Claude and other agents can draw, edit and export like a human. - **Everywhere.** One codebase: desktop apps and the same UI in the browser.
## Quick start ```sh cargo run --release -p drawcraft # desktop app cargo run --release -p drawcraft -- examples/dusk-poster.drawcraft cargo run --release -p drawcraft -- --control 7979 # + JSON control channel cargo run --release -p drawcraft-cli -- mcp # MCP server (stdio) cargo xtask bundle # dist/DrawCraft.app (macOS) cd apps/drawcraft-web && trunk build --release # web build → dist/web cargo xtask ci # fmt, clippy, tests, layering, wasm ``` Register with Claude Code: `claude mcp add drawcraft -- /path/to/drawcraft-cli mcp` — see [`docs/mcp.md`](docs/mcp.md) and [`docs/control-protocol.md`](docs/control-protocol.md). ## Status DrawCraft is under active development. See **[ROADMAP.md](ROADMAP.md)** for what ships today, milestones, and honest time-to-parity estimates. Workspace: `crates/{geom, color, doc, pathops, text, effects, trace, brush, render, svg, pdf, format, tools, engine, ui-egui, mcp, testkit}`, `apps/{drawcraft, drawcraft-cli, drawcraft-web}`. The egui frontend is a separate crate, so the UI can be swapped without touching the engine. Agent guide: [`CLAUDE.md`](CLAUDE.md). ## The Craft suite Open-source, pure-Rust, clean-room creative tools — each engine-first, cross-platform, WASM-ready and fully agent-drivable.
PhotoCraft Layered raster image editor in the spirit of Photoshop — high-bit-depth pipeline, adjustment layers, brushes, PSD round-trip.
DrawCraft Vector illustration in the spirit of Illustrator — Pen, Pathfinder, live effects, type, SVG/PDF. (you are here)
FilmCraft Non-linear video editor in the spirit of Premiere Pro — timeline editing, effects, and export.
LightCraft Photo library and non-destructive raw developer in the spirit of Lightroom — local-first catalog, wide-gamut float pipeline.
PrintCraft PDF viewer and editor in the spirit of Acrobat — rendering, forms, annotations, and document tools.
## License MIT OR Apache-2.0. Bundled fonts are OFL; Lucide icons are ISC; all other icons and art are original. Per-asset attribution: [`ASSETS.md`](ASSETS.md) (see also [`NOTICE`](NOTICE)). DrawCraft is an independent project and is not affiliated with or endorsed by Adobe. "Adobe", "Illustrator", "Photoshop", "Premiere Pro", "Lightroom" and "Acrobat" are trademarks of Adobe Inc., used here only to describe compatibility and workflow familiarity.