Custom widgets let teams turn a simple prompt into interactive tools on the Miro canvas. From candidate scorecards to playful team check-ins, they give teams new ways to work together.
Miro – Custom widgets
I helped shape the experience through working prototypes, production interface design, and the instructions behind widget generation. My work moved between exploring what custom widgets could become and refining the details that make them useful in practice.
I started by turning an existing canvas prototype into a conversational widget builder. Users could describe an idea, try the result, and keep adjusting it through chat. I explored how they could move between the builder and the board, revisit earlier versions, and apply their company's visual style. Building these interactions as functioning prototypes made it possible to test the whole experience and quickly change direction when something wasn't working.
The generated widget needed as much design attention as the builder around it. I also led the work on the style system prompt, defining the visual guidance for generated widgets. The goal was to make the results look considered and well designed from the first prompt. I tested dozens of widgets against Miro's widget SDK, using the problems I found to improve the generation instructions. I also built a side-by-side testing tool to compare different prompts with the same request. The aim was to make a simple request like “Make a team poll widget” a useful starting point, without expecting people to write a detailed brief.
Working with the custom-widgets team, I brought that attention into the production interface. I refined the example cards, loading animation, dark mode, spacing, and resizable chat panel, with changes delivered through reviewed pull requests. These details helped connect the open-ended process of generating something new with the familiar experience of working in Miro.
At Canvas 26, Jake Reed demonstrated a candidate scorecard built from a prompt, connected to company data and used collaboratively on the board. Jeff Chow showed a more playful side: a tug-of-war vote, a hand-raising limit, a weather report for team mood, and a shared approval button. Together, the demos showed how custom widgets could support both the practical work of making decisions and the small interactions that give a team its personality.
This case in progress
The following are snapshots of the project. Ideas that shaped it. Experiments that may never be live, but explore the widths and depths of the concept.
Simple landing page for building widgets.
Creating your own multiplayer widgets directly on the canvas