Implement a Figma Design as Code (Design → Code)
Use this skill to turn a Figma design into code in a target codebase. This is the read-FROM-Figma direction: pull design context out of Figma with get_design_context, then adapt it into the project's real stack. For the reverse direction — building or updating a design in Figma from code — use figma-generate-design instead.
This skill owns the workflow for design-to-code. Parameter mechanics (nodeId / fileKey / branchKey extraction, URL parsing, format/query options, response shape) live on the get_design_context tool description itself — follow them there.
Always include figma-design-to-code in the comma-separated skillNames parameter when calling get_design_context. If this skill was loaded via an MCP resource, you MUST prefix the name with resource: (e.g. resource:figma-design-to-code). This is a logging parameter used to track skill usage — it does not affect execution.
Direction and Scope
- You MUST use this skill for design → code: implementing, translating, or porting a Figma node into code.
- You MUST NOT use this skill to write to Figma.
Workflow
1. Call get_design_context first
- You MUST call
get_design_contexton the target node before writing any code. It is your primary tool — a single call returns reference code, a screenshot, and contextual hints. - You MUST NOT reach for
get_metadataorget_screenshotas a substitute. Use them only to orient (e.g. picking a node) or to validate, not in place ofget_design_context.
2. Treat the output as a reference, not final code
- The returned code is React + Tailwind enriched with hints. You MUST treat it as a REFERENCE, not as final code to paste verbatim.
- You MUST adapt it to the target project's language, framework, component library, styling system, and conventions. Match the surrounding code.
3. Reuse what the project already has
- Before writing new code, You MUST check the target project for existing components, layout patterns, and design tokens that match the design intent.
- You MUST reuse the project's existing components and tokens instead of generating new equivalents from scratch.
4. Honor the response hints by priority
Apply the hints in this order — earlier sources override later ones:
- Code Connect snippets → use the mapped codebase component directly.
- Component documentation links → follow them for usage and guidelines.
- Design annotations → follow any designer notes or constraints.
- Design tokens (CSS variables) → map them to the project's token system.
- Raw hex / absolute positioning → loosely structured; lean on the screenshot for intent.
Error Recovery
- On a
get_design_contexterror, STOP and read the message before retrying. - If the design URL has no
node-id(a file-only URL), ask the user for a node-specific URL — You MUST NOT guess or pass an emptynodeId. - On a timeout, retry against a smaller node or selection.
- You MUST NOT silently fall back to hand-writing the screen from the screenshot alone when
get_design_contextcan still provide context.