FigCraft: interface design and prototyping; an open-source, clean-room reimplementation of collaborative design workflows in pure Rust
翻訳待ち
Loading the full README.
Read the full README ↗[!NOTE] ArtCraft is a community of artists from all walks of life. Designers, illustrators, developers, musicians, game makers — if you make things, you're one of us. Come say hi on Discord.
Every design below was built entirely through FigCraft's command API, the same one the MCP server
exposes to agents, and exported at 2x by FigCraft's own renderer. The source files are in
examples/.
Every menu item, tool and gesture runs a command from one registry of 400+ commands. The UI, the CLI, the JSON control channel and the MCP server all call the same commands, so anything you can click, a script or an AI agent can do too.
# Headless: render and export
figcraft-cli render landing.figcraft -o landing.png --scale 2
figcraft-cli export landing.figcraft -o out/ --format svg
# Run a script of commands without a window
figcraft-cli run build-card.json --out card.figcraft
# Every command, with its parameters
figcraft-cli commands --filter autoLayout
# Let an agent drive it over MCP (headless, or attached to the running app)
figcraft-cli mcp
figcraft-cli mcp --attach 47800
The desktop app also offers a loopback-only control channel (figcraft --control <port>) for inspecting UI state, driving tools with pointer and key events, and taking screenshots. See docs/control-protocol.md, docs/mcp.md and docs/cli.md.
cargo xtask layers).docs/translating.md).plugins/; see docs/plugins.md.docs/collab-protocol.md.git clone https://github.com/storytold/figcraft
cd figcraft
cargo run --release -p figcraft # the desktop app
cargo run --release -p figcraft-server # the collaboration server (docs/server.md)
cargo test --workspace # the test suite
cargo xtask ci # fmt, clippy, tests, layering and asset checks
Fonts for the UI and the Text tool come from craft-fonts, cloned next to this repository (../craft-fonts); without it FigCraft falls back to your system fonts.
git clone https://github.com/storytold/craft-fonts ../craft-fonts
If you clone it after a first build, run cargo clean -p figcraft-text once so the next build embeds the fonts.
Start from a template. The home screen's Templates tab has eight starter files (a mobile app, a landing page, a dashboard, a design system starter, a wireframe kit, social post sizes, presentation slides and an icon set starter), also under File ▸ New from template…. They are built in code from original, synthetic content, so scripts and agents can open them too: file.newFromTemplate {template} (docs/mcp.md).
This is the beginning of the README. Read the rest at the original. Read the full README ↗
figcraft-serverwss://unwrap, expect or panic in shipped code, enforced by clippy; commands run behind a guard so a bug fails one action, not your session.