Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
charon-fan avatar

Figma Designer

  • 754 installs
  • 65 repo stars
  • Updated June 21, 2026
  • charon-fan/agent-playbook

figma-designer is a design-handoff skill that converts Figma files into implementation-ready PRDs with exact spacing, tokens, and component specs for developers implementing UI from design sources.

About

figma-designer is a skill in charon-fan/agent-playbook that connects to the Figma MCP server to analyze frames and emit detailed product requirement documents with pixel-perfect visual specifications. It extracts design tokens, component specifications, and layout measurements developers can implement without re-measuring in the Figma UI. Installation uses a symbolic link from agent-playbook/skills/figma-designer/SKILL.md into the Claude Code skills directory. Prerequisites include a running Figma MCP server the agent can query. Reach for figma-designer when a Figma file is the source of truth and you need structured PRD output with spacing, typography tokens, and component boundaries before writing React, Swift, or other frontend code.

  • Analyzes live Figma files via official MCP server
  • Extracts design tokens, typography, colors, and spacing with pixel-perfect values
  • Generates detailed component hierarchy and layout specifications
  • Outputs PRD-ready documentation developers can implement directly
  • Requires only a Figma link and connected Figma MCP server

Figma Designer by the numbers

  • 754 all-time installs (skills.sh)
  • Ranked #492 of 1,896 Design & UI/UX skills by installs in the Skillselion catalog
  • Security screen: MEDIUM risk (skills.sh audit)
  • Data as of Jul 28, 2026 (Skillselion catalog sync)
npx skills add https://github.com/charon-fan/agent-playbook --skill figma-designer

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs754
repo stars65
Security audit2 / 3 scanners passed
Last updatedJune 21, 2026
Repositorycharon-fan/agent-playbook

How do you turn Figma designs into developer PRDs?

Convert Figma files into implementation-ready product requirements with exact spacing, tokens, and component specs.

Who is it for?

Frontend developers receiving Figma handoffs who need structured specs and tokens before writing UI code.

Skip if: Teams without Figma MCP access or projects where design lives only in code with no Figma source file.

When should I use this skill?

A developer provides a Figma file or frame and needs PRD output, design tokens, or pixel-perfect component specifications.

What you get

Implementation-ready PRD with design tokens, component specs, and layout measurements extracted from Figma.

  • PRD document
  • Design token list
  • Component specification

By the numbers

  • Outputs PRDs with design tokens, component specs, and layout data

Files

SKILL.mdMarkdownGitHub ↗

Figma Designer

"Transform Figma designs into implementation-ready specifications with pixel-perfect accuracy"

Overview

This skill analyzes Figma designs through the Figma MCP server and generates detailed PRDs with precise visual specifications. It extracts design tokens, component specifications, and layout information that developers can implement directly.

Prerequisites

Figma MCP Server

Ensure the host exposes a Figma MCP server or plugin before using this skill. Tool names vary by host and plugin version, so inspect the available Figma tools in the current session instead of assuming fixed names. The required capability set is:

  • Read file or page metadata
  • Read selected nodes or node details
  • Read component and style information when available

When This Skill Activates

Activates when you:

  • Provide a Figma link (https://www.figma.com/file/...)
  • Upload a design screenshot and mention "Figma"
  • Say "analyze this design" or "extract design specs"
  • Ask to "create PRD from Figma"

Design Analysis Workflow

Phase 1: Fetch Design Data

Input: Figma URL or File Key
  ↓
Extract File Key from URL
  ↓
Call the available Figma metadata tool
  ↓
Call the available Figma node/detail tool
  ↓
Parse frame, component, and text nodes

Phase 2: Extract Design Tokens

Create a comprehensive design token inventory:

// Design Token Structure
interface DesignTokens {
  colors: {
    primary: string[];
    secondary: string[];
    neutral: string[];
    semantic: {
      success: string;
      warning: string;
      error: string;
      info: string;
    };
  };
  typography: {
    fontFamilies: Record<string, string>;
    fontSizes: Record<string, number>;
    fontWeights: Record<string, number>;
    lineHeights: Record<string, number>;
    letterSpacing: Record<string, number>;
  };
  spacing: {
    scale: number;  // 4, 8, 12, 16, etc.
    values: Record<string, number>;
  };
  borders: {
    radii: Record<string, number>;
    widths: Record<string, number>;
  };
  shadows: Array<{
    name: string;
    values: string[];
  }>;
}

Phase 3: Analyze Component Hierarchy

File
├── Frames (Pages/Screens)
│   ├── Component Instances
│   │   ├── Primary Button
│   │   ├── Input Field
│   │   └── Card
│   └── Text Layers
│       ├── Headings
│       ├── Body
│       └── Labels

For each component, extract:

  • Props: Size, variant, state
  • Layout: Flex direction, alignment, gap, padding
  • Styles: Fill, stroke, effects
  • Content: Text content, icons, images
  • Constraints: Responsive behavior

Phase 4: Generate Visual Specifications

Use this template for each screen:

## Screen: [Screen Name]

### Layout Structure

┌─────────────────────────────────────────┐ │ [Header/Nav] │ ├─────────────────────────────────────────┤ │ │ │ [Main Content] │ │ ┌───────────┐ ┌───────────┐ │ │ │ Card 1 │ │ Card 2 │ │ │ └───────────┘ └───────────┘ │ │ │ ├─────────────────────────────────────────┤ │ [Footer] │ └─────────────────────────────────────────┘


### Design Specifications

#### Colors

| Token | Value | Usage |
|-------|-------|-------|
| Primary | `#007AFF` | Primary buttons, links |
| Background | `#FFFFFF` | Screen background |
| Surface | `#F5F5F7` | Cards, sections |
| Text Primary | `#1C1C1E` | Headings, body |
| Text Secondary | `#8E8E93` | Captions, labels |

#### Typography

| Style | Font | Size | Weight | Line Height | Letter Spacing |
|-------|------|------|--------|------------|---------------|
| Display Large | SF Pro Display | 28px | Bold (700) | 34px | -0.5px |
| Heading 1 | SF Pro Display | 24px | Bold (700) | 32px | -0.3px |
| Heading 2 | SF Pro Display | 20px | Semibold (600) | 28px | -0.2px |
| Body Large | SF Pro Text | 17px | Regular (400) | 24px | -0.4px |
| Body | SF Pro Text | 15px | Regular (400) | 22px | -0.3px |
| Caption | SF Pro Text | 13px | Regular (400) | 18px | -0.1px |

#### Spacing

| Token | Value | Usage |
|-------|-------|-------|
| xs | 4px | Icon padding |
| sm | 8px | Tight spacing |
| md | 12px | Card padding |
| lg | 16px | Section spacing |
| xl | 24px | Large gaps |
| 2xl | 32px | Page margins |

#### Component: Primary Button

interface PrimaryButtonProps { size?: 'small' | 'medium' | 'large'; variant?: 'primary' | 'secondary' | 'tertiary'; disabled?: boolean; }

// Sizes size.small = { height: 32px, paddingHorizontal: 12px, fontSize: 15, iconSize: 16, }

size.medium = { height: 40px, paddingHorizontal: 16px, fontSize: 15, iconSize: 20, }

size.large = { height: 48px, paddingHorizontal: 24px, fontSize: 17, iconSize: 24, }

// Variants variant.primary = { backgroundColor: '#007AFF', color: '#FFFFFF', }

variant.secondary = { backgroundColor: '#F5F5F7', color: '#007AFF', }

variant.tertiary = { backgroundColor: 'transparent', color: '#007AFF', }


#### Constraints & Responsive Behavior

| Element | Constraints | Responsive Behavior |
|---------|-------------|---------------------|
| Header | Left, Right, Top | Sticky on scroll |
| Sidebar | Left, Top, Bottom | Collapses to drawer on mobile |
| Content | Left, Right (16px) | Full width on mobile |

### Interaction States

| Element | Default | Hover | Pressed | Disabled |
|---------|---------|-------|--------|----------|
| Primary Button | opacity: 1 | opacity: 0.8 | opacity: 0.6 | opacity: 0.4 |
| Icon Button | opacity: 1 | background: rgba(0,0,0,0.05) | background: rgba(0,0,0,0.1) | opacity: 0.3 |
| Card | shadow: sm | shadow: md | - | opacity: 0.6 |

Output Formats

Option 1: Full PRD (Recommended)

Generates a complete 4-file PRD:

  • docs/{feature}-notes.md - Design decisions
  • docs/{feature}-task-plan.md - Implementation tasks
  • docs/{feature}-prd.md - Product requirements
  • docs/{feature}-tech.md - Technical specifications

Option 2: Visual Spec Document

Generates a design specification document:

docs/{feature}-design-spec.md

Option 3: Component Library

For design systems, generates:

src/components/
├── Button/
│   ├── Button.tsx
│   ├── Button.test.tsx
│   └── Button.stories.tsx
├── Input/
├── Card/
└── tokens.ts

Quick Reference: Design Token Categories

Always Extract These

CategoryWhat to ExtractWhy
ColorsHex/RGBA valuesTheme consistency
TypographyFont family, size, weight, spacingText hierarchy
SpacingPadding, margin, gap valuesLayout alignment
BordersRadius, width valuesShape consistency
ShadowsOffset, blur, spread, colorDepth perception
IconsName, size, colorVisual consistency
ImagesURL, dimensions, fit modeAsset management

Design Review Checklist

Before generating PRD, verify:

  • [ ] All screens are accounted for
  • [ ] Design tokens are extracted
  • [ ] Component variants are documented
  • [ ] Responsive behavior is specified
  • [ ] Interaction states are defined
  • [ ] Accessibility (WCAG) is considered
  • [ ] Color contrast ratio ≥ 4.5:1
  • [ ] Touch targets ≥ 44x44px
  • [ ] Focus indicators visible

Frame Analysis Template

For each frame/screen in the Figma file:

## Frame: {Frame Name}

### Purpose
{What this screen does}

### Elements

| Element | Type | Styles | Props |
|---------|------|--------|-------|
| {Name} | {Component/Text/Vector} | {css} | {props} |
| {Name} | {Component/Text/Vector} | {css} | {props} |

### Layout
- Container: {width, height, fill}
- Position: {absolute/relative}
- Constraints: {left, right, top, bottom}
- Auto Layout: {direction, spacing, padding, alignment}

### Content Hierarchy
1. {Primary element}
2. {Secondary element}
3. {Tertiary element}

### Notes
{Any special considerations}

Integration with Other Skills

Typical Workflow

Figma URL → figma-designer → Visual Specs
                                ↓
                           prd-planner → PRD
                                ↓
                           implementation → Code
                                ↓
                           code-reviewer → Quality Check

Handoff to Development

After generating specifications:

## Developer Handoff

### Design Files
- Figma: {url}
- Design Spec: {link}

### Design Tokens
- Generated: `tokens.ts`
- Color palette: `colors.ts`
- Typography: `typography.ts`

### Component Library
- Storybook: {url}
- Component docs: {link}

### Assets
- Icons: {folder}
- Images: {folder}
- Exports: {format}

Best Practices

DO

✅ Extract exact pixel values for critical dimensions ✅ Document component variants and states ✅ Include responsive breakpoints ✅ Note any platform differences (iOS vs Android) ✅ Include accessibility considerations ✅ Export design tokens as constants

DON'T

❌ Round spacing values (use exact 4px/8px/12px) ❌ Ignore hover/focus states ❌ Skip constraint behavior ❌ Forget about empty states ❌ Omit loading states ❌ Assume platform defaults without verification

Examples and Platform Notes

See references/example-output.md for a full sample output and platform-specific considerations.

Related skills

How it compares

Pick figma-designer when Figma is the design source and you need tokenized PRDs rather than screenshot descriptions or generic UI codegen.

FAQ

What does figma-designer require to run?

figma-designer requires the Figma MCP server connected and accessible to the agent, plus the skill installed via symbolic link into the Claude Code skills directory.

What output does figma-designer produce?

figma-designer produces detailed PRDs containing design tokens, component specifications, and layout information with pixel-perfect measurements extracted from the linked Figma file.

Is Figma Designer safe to install?

skills.sh reports 2 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.