All work

Mini Figma

A self-hostable design editor that hands its work to real Figma.

Type
Design tool, 2026
Role
Solo, design and build
Status
Private, in use
Hard part
Delivery, not automation
Screenshot of Mini Figma

Why

I was asked to automate the UX design stage of a project. The constraint was fixed before I started: whatever came out of it had to arrive as a Figma file, because that is where the designers work.

Automating the layout work turned out to be the easy half. The hard half was delivery. The obvious move, giving the team a new tool and asking them to work in it, is the one that quietly costs the most: a learning curve, a migration, and a way of working rebuilt from the ground up. That is weeks of everyone’s time spent on tooling instead of on the project.

So the real requirement was not a better editor. It was a tool that could disappear.

How

I built the editor for myself rather than for the team: a self-hostable canvas with frames, vectors, components, variables and prototyping, running on my own machine at no cost. A Rust→WASM scene engine behind WebGL2 paints the editor, the presentation player and every export, so what I see while working and what leaves the tool cannot drift apart.

An MCP endpoint sits on top, which is what makes the automation possible: an agent can author and edit documents directly, with the permissions of the signed-in user rather than its own.

The piece that mattered is the hand-off. The editor exports a real Figma project, close enough to a copy and paste that the result opens as a normal file with normal layers. Nobody downstream has to install anything, learn anything, or know the tool exists.

Outcome

Design work that used to be manual is now generated locally, for nothing, and faster than laying it out by hand.

The design team receives a Figma project they can open and work in as usual. The automation is invisible to them, which is exactly the point.

The tool stays private. Its value is in what it delivers, not in adopting it.

Built with

Next.js, TypeScript, Rust → WASM, WebGL2, PostgreSQL, WebSocket, MCP

This one stays private. Happy to walk through it in a conversation: cedrictianarabarijohn@gmail.com.