A concrete case: from Figma component to deployed component
To make this workflow tangible, here is how it played out on a recent project. I was working on the redesign of my portfolio (the one you are reading), and I needed to create a project card component: a thumbnail with cover image, title, role, period, and a one-line summary. The component had to work in light and dark mode, adapt from mobile to desktop, and respect the existing design system (color tokens, spacing, typography).
In Figma, I designed the component with auto-layout, named tokens for every color and spacing value, and two variants (light/dark). The design work took about 45 minutes, which is normal for a component with responsive constraints and two themes.
In Claude Code, I referenced the Figma frame. The agent read the structure: a vertical flex container, an image at 16:9 ratio with 12px border-radius, a text block with the title in font-semibold, subtitle in text-sm text-gray-500, and 12px spacing between image and text. It generated a functional React/Tailwind component in under two minutes.
The first render in the browser revealed two necessary adjustments. The cover image needed an object-cover treatment that the Figma component did not explicitly specify. And the spacing between cards in grid mode required a different gap value than what Figma used in auto-layout (Figma reasons in spacing between children, CSS in gap on the parent container). I corrected both points in a five-minute iteration.
The final component, tested on mobile and desktop, in light and dark mode, with real content (titles of varying lengths, images of different ratios), was deployed on Vercel less than two hours after starting the work in Figma. In a traditional handoff workflow, this sequence would have taken between two and five days, depending on developer availability and the number of QA back-and-forth cycles.
A second case illustrates behavior on more complex components. On the same project, I needed to produce a full case study page: a layout with a sidebar navigation (table of contents), an editorial body with full-width images, embedded testimonial blocks, and a lightbox system for screenshots. The whole thing had to adapt between a two-column layout on desktop and a stacked layout on mobile, with the sidebar transforming into a dropdown menu.
Here, the workflow showed its limits and strengths simultaneously. The overall page structure (sidebar plus editorial body) was generated correctly on the first pass. The sticky positioning of the sidebar, the scroll-spy calculation to highlight the active section in the table of contents, and the responsive logic for the sidebar-to-dropdown switch required three additional iterations with precise instructions. The final result was functional and faithful to the design, but it took about half a day instead of the two hours for the card component. Complexity is not linear: a component that appears twice as complex can require five times as many iterations.