Propmate

A production Figma plugin built by two non-engineers with AI.

Context

Property naming in a design system sounds like a small problem. It isn't.

When Figma component properties don't match their code counterparts, the gap between design and engineering widens. Handoffs get messy. AI-assisted component generation, which depends on machine-readable, consistent naming, breaks down. And in a system with 72+ components and 268+ properties, catching mismatches manually isn't just tedious. It's unreliable.

The Facebook Design System needed a way to validate and fix property naming at scale. The catch: the two people who understood the problem most deeply, myself and a cross-functional Production Designer partner, weren't engineers.

So we built the tool anyway.

Approach

The workflow. Partnering cross-functionally with a Production Designer, we pioneered an AI-mediated pair programming pattern that let two non-engineers ship production code. The model was simple in principle: Claude acted as the collaborative driver, we acted as the navigators. We worked async, passing diffs back and forth, reviewing each other's changes, and using Claude to write, debug, and iterate on the codebase between sessions.

What made it work wasn't just using AI to write code, it was the structure around it. We treated each session like a design critique: clear problem statements, explicit constraints, documented decisions. The same rigor we'd apply to a design system component, we applied to the development process itself.

The plugin. Propmate is a Figma plugin that validates and fixes property names across FDS components in real time. Its core features:

  • Live validation on selection, as designers select components, Propmate checks property names against the FDS spec instantly
  • Fuzzy matching, catches near-misses, not just exact failures, so renamed or slightly off properties don't slip through
  • Match/Alias badge system, surfaces whether a property is a direct match, an acceptable alias, or a violation, at a glance
  • Figma-specific tier, accounts for properties that exist only in Figma and don't have code counterparts, so the tool doesn't flag intentional exceptions as errors
  • One-click auto-fix, corrects flagged property names automatically, without requiring designers to manually look up the right convention

The result is a tool that makes compliance the path of least resistance, you don't have to know the naming rules to follow them.

Outcome

  • 72+ components and 268+ properties covered across the Facebook Design System
  • Property naming kept in sync between Figma and code specs, reducing a key source of handoff friction
  • AI readability for component generation maintained, correctly named properties mean AI tooling can interpret and generate components reliably
  • A demonstrated new collaboration pattern: two non-engineers, working async, shipping production code through structured AI-assisted development

The broader impact of that last point is hard to quantify but worth naming: Propmate changed what felt possible. If two designers can build and ship a production plugin using AI as a development partner, the boundary between design and engineering is more permeable than most organizations assume.

Insight

The most interesting thing about this project wasn't the plugin. It was the process.

Most discussions about AI in the workplace focus on individual productivity, how much faster can one person move? Propmate was about collective capability, what can two people do together that neither could do alone, with AI as the connective tissue?

The async diff workflow we developed is something I think about a lot. It created a natural forcing function for clear communication: you can't pass a diff to a collaborator without explaining what changed and why. That discipline made us better collaborators and better developers simultaneously.

What I'd do differently: document the workflow more formally as we went. We developed something genuinely novel and captured it mostly in hindsight. A running log of decisions and patterns would have made it easier to share with others, and would have made a better case study artifact.

What this proved: AI-native doesn't mean solo. Some of the most interesting work happens when AI becomes the medium through which two people think together.

More work