Wiring GPT-3 into Figma

PopulatorAIdesign, development

Over the course of a few months I built PopulatorAI, a Figma plugin that put GPT-3 to work inside the canvas, years before Figma shipped its own AI features. Designers selected text layers, described what they wanted, and watched the layers populate.

GPT-3 didn't have affordances like JSON mode or function calling yet. But every response had to come back in a parseable shape so the plugin could map each generated string to the right layer, and the model broke the format every few calls. I added schema validation, and anything that failed it was retried automatically, which made it reliable enough to ship. In the end it could fill placeholders with realistic data, write copy, and translate whole designs.

Every request went through an API I built, which checked subscriptions and logged everything to Humanloop, along with what users kept, regenerated, or rated, so I could see where the output was letting them down. Every failure became a test case, and the prompts got tightened against whatever kept breaking.

PopulatorAI banner — 'Bye lorem ipsum! Select text layers and generate AI content with a single click' beside a playlist design whose placeholders turn into real song titles
Community banner
Two PopulatorAI plugin panels — a welcome screen behind, and the Populate tab in front where prompts like 'Populate this music app with real songs' return generated content
Prompting the plugin
Populating a playlist

PopulatorAI started as a side project to find the edges of what the models of the time could do, and it sold a few subscriptions along the way. Figma's own agents have since made the whole thing redundant, which felt like the right way for it to end.