All projects
Personal project · open source (MIT) · 2026

Designotron – Design Tool with a Rust Engine

An open-source, Figma-style design editor whose document engine is written in Rust and compiled to WebAssembly, with Claude able to edit the canvas and export designs as React code.

  • Rust
  • WebAssembly
  • React
  • TypeScript
  • MCP

What it is

A browser-based design editor in the spirit of Figma: frames, vector and pen tools, auto layout, constraints, components and variants, styles and variables, prototyping with a presenter, and PNG, JPG and SVG export. It can also import HTML pages and Figma files as editable layers.

Architecture

  • Engine (Rust): the document model, commands with undo and redo, layout, components, rendering, code generation and the tool layer used by the AI. It is compiled to WebAssembly for the editor.
  • Bridge (Rust): a small local server that links the same engine natively. It relays between the editor and Claude Code, serves an MCP endpoint, and can edit a design file headlessly when no editor is open.
  • Editor (React + TypeScript): canvas, layers and properties panels, and a chat panel.
  • Multiplayer (Rust): a rooms crate shared by the bridge, for local-network sessions, and by a small internet relay, for online sharing, with live cursors and selections.

Working with Claude

Through the bridge, the editor runs the user’s own Claude Code install, or it can call the Anthropic API directly with the user’s key. Claude creates and updates layers, takes screenshots of the canvas to check its work, and can build the design into a running app in a local workspace.

Tech

About 15,500 lines of Rust in the engine and 2,200 in the bridge, plus about 15,000 lines of TypeScript and CSS in the editor. cargo test runs 113 tests across the engine, bridge and multiplayer crates, and browser end-to-end scripts cover drawing, components, export, the AI tools and multiplayer. Tagged releases build a single binary with the editor embedded for macOS, Linux and Windows.