Skip to content
Back to skills

Design To Code

ASecurity

Pixel-perfect Figma to React conversion using coderio. Generates production-ready code (TypeScript, Vite, TailwindCSS V4) with high visual fidelity. Features robust error handling, checkpoint recovery, and streamlined execution via helper script.

  • 30,495 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added May 29, 2026
ai-agentstypescriptbashreactnodeapi

Works with

  • api

Security analysis

A96/100
  • mediumInstalls packages at runtime which could introduce malicious dependencies

Pro scans all 4 files and shows the line behind each finding

Scanned May 29, 2026

npx -y skills add davila7/claude-code-templates --skill design-to-code --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Design To Code?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Design To Code
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/davila7-design-to-code/badge)](https://www.skillsdirectory.com/skills/davila7-design-to-code)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: design-to-code
description: Pixel-perfect Figma to React conversion using coderio. Generates production-ready code (TypeScript, Vite, TailwindCSS V4) with high visual fidelity. Features robust error handling, checkpoint recovery, and streamlined execution via helper script.
---

# Design to Code

High-fidelity UI restoration from Figma designs to production-ready React + TypeScript components.
This SKILL uses a **robust helper script** to minimize manual errors and ensure pixel-perfect results.

## Prerequisites

1.  **Figma API Token**: Get from Figma → Settings → Personal Access Tokens
2.  **Node.js**: Version 18+
3.  **coderio**: Installed in `scripts/` folder (handled by Setup phase)

## Workflow Overview

```
Phase 0: SETUP    → Create helper script and script environment
Phase 1: PROTOCOL → Generate design protocol (Structure & Props)
Phase 2: CODE     → Generate components and assets
```

---

# Phase 0: Setup

## Step 0.1: Initialize Helper Script

**User Action**: Run these commands to create the execution helper and isolate its dependencies.

```bash
mkdir -p scripts

# 1. Copy script files
# Note: Ensure you have the 'skills/design-to-code/scripts' directory available
cp skills/design-to-code/scripts/package.json scripts/package.json
cp skills/design-to-code/scripts/coderio-skill.mjs scripts/coderio-skill.mjs

# 2. Install coderio in scripts directory (adjust version if needed)
cd scripts && pnpm install && cd ..
```

## Step 0.2: Scaffold Project (Optional)

If starting a new project:

1.  Run: `node scripts/coderio-skill.mjs scaffold-prompt "MyApp"`
2.  **AI Task**: Follow the instructions output by the command to create files.

---

# Phase 1: Protocol Generation

## Step 1.1: Fetch Data

```bash
# Replace with your URL and Token
node scripts/coderio-skill.mjs fetch-figma "https://figma.com/file/..." "figd_..."
```

**Verify**: `process/thumbnail.png` should exist.

## Step 1.2: Generate Structure

1.  **Generate Prompt**:

    ```bash
    node scripts/coderio-skill.mjs structure-prompt > scripts/structure-prompt.md
    ```

2.  **AI Task (Structure)**:
    - **ATTACH**: `process/thumbnail.png` (MANDATORY)
    - **READ**: `scripts/structure-prompt.md`
    - **INSTRUCTION**: "Generate the component structure JSON based on the prompt and the attached thumbnail. Focus on visual grouping. **Use text content to name components accurately (e.g. 'SafeProducts', not 'FAQ').**"
    - **SAVE**: Paste the JSON result into `scripts/structure-output.json`.

3.  **Process Result**:
    ```bash
    node scripts/coderio-skill.mjs save-structure
    ```

## Step 1.3: Extract Props (Iterative)

1.  **List Components**:

    ```bash
    node scripts/coderio-skill.mjs list-components
    ```

2.  **For EACH component in the list**:

    a. **Generate Prompt**:

    ```bash
    node scripts/coderio-skill.mjs props-prompt "ComponentName" > scripts/current-props-prompt.md
    ```

    b. **AI Task (Props)**:
    - **ATTACH**: `process/thumbnail.png` (MANDATORY)
    - **READ**: `scripts/current-props-prompt.md`
    - **INSTRUCTION**: "Extract props and state data. Be pixel-perfect with text and image paths."
    - **SAVE**: Paste the JSON result into `scripts/ComponentName-props.json`.

    c. **Save & Validate**:

    ```bash
    node scripts/coderio-skill.mjs save-props "ComponentName"
    # If this fails, re-do step 'b' with better attention to the thumbnail
    ```

---

# Phase 2: Code Generation

## Step 2.1: Plan Tasks

```bash
node scripts/coderio-skill.mjs list-gen-tasks
```

This outputs a list of tasks with indices (0, 1, 2...).

## Step 2.2: Generate Components (Iterative)

**For EACH task index (starting from 0)**:

1.  **Generate Prompt**:

    ```bash
    node scripts/coderio-skill.mjs code-prompt 0 > scripts/code-prompt.md
    # Replace '0' with current task index
    ```

2.  **AI Task (Code)**:
    - **ATTACH**: `process/thumbnail.png` (MANDATORY)
    - **READ**: `scripts/code-prompt.md`
    - **INSTRUCTION**: "Generate the React component code. Match the thumbnail EXACTLY. **Use STRICT text content from input data, do not hallucinate.**"
    - **SAVE**: Paste the code block into `scripts/code-output.txt`.

3.  **Save Code**:
    ```bash
    node scripts/coderio-skill.mjs save-code 0
    # Replace '0' with current task index
    ```

## Step 2.3: Final Integration

Inject the root component into `App.tsx`. Use the path found in the last task of Phase 2.1.

---

# Troubleshooting

- **"Props validation failed"**: The AI generated empty props. Check if `process/thumbnail.png` was attached and visible to the AI. Retry the props generation step.
- **"Module not found"**: Ensure `node scripts/coderio-skill.mjs save-code` was run for the child component before the parent component. Phase 2 must be done in order (0, 1, 2...).
- **"Visuals don't match"**: Did you attach the thumbnail? The AI relies on it for spacing and layout nuances not present in the raw data.

Files in this skill

  • LICENSE.txt10.6 KB
  • SKILL.md4.9 KB
  • scripts/coderio-skill.mjs12.8 KB
  • scripts/package.json122 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…