Figma To Code

SKILL开发
开发 未标注权限 许可证不明确
安装这个技能

WorkBuddy Figma 设计稿转代码技能 — 读取 Figma 设计稿,提取设计令牌,将视觉设计转化为接近生产水准的前端代码,覆盖从设计稿到可交付代码的完整链路。适合与设计师协作密切的前端团队和独立开发者。

一句话选型结论

按资料字段整理

Figma To Code是开发类的 Agent Skill,安装方式未标注,权限级别未标注,许可证不明确,有可直接复制的安装命令。技能本质是给模型读的说明书,效果取决于模型与客户端;装完先用一个小任务验证,再放进正式流程。

分类开发 安装方式未标注 权限级别未标注权限 许可证许可证不明确
累计安装 未标注 本周 未标注
GitHub 星标 未标注 仓库 未标注
下载量 未标注 技能市场下载数
权限级别 未标注权限 安装前请确认风险范围
许可证 许可证不明确 未说明

安装

未标注
在支持 Skills 的客户端里执行,装完问一句「你有哪些技能」验证
skillhub install user_24cd73cb/wb-figma-to-code
  1. 1
    确认客户端支持

    确认你的客户端支持 Skills(Claude、Codex、Cursor 等),并升级到较新的版本。

  2. 2
    拿到技能文件

    执行上面的命令安装;也可以把仓库里的 SKILL.md 手动放进客户端的 skills 目录。

  3. 3
    刷新技能列表

    重新打开客户端,或刷新技能列表,让新放进来的技能被加载。

  4. 4
    验证是否生效

    问一句「你有哪些技能」,确认列表里出现它,再拿一个小任务试跑。

技能档案

开发
字段来自技能仓库与公开索引,中文说明由本站标注
作者 / 维护方user_24cd73cb仓库 未标注 · 版本 未标注
宿主客户端未标注技能可被这些客户端加载
安装方式未标注安装包 community
权限级别未标注权限安装前请确认风险范围
许可证未说明许可证不明确,商用前请自行确认条款
仓库可用性available技能仓库当前是否可访问
最近核验未标注上游最后核验时间 · 数据更新 1791674060
正文体量11.3 KBSKILL.md 原文大小,越大说明说明书写得越细

典型使用场景

3 类
按分类整理的常见用法,具体以 SKILL.md 为准
写代码与改 bug

按需求补代码、定位并修掉报错。

读仓库与生成改动

让模型读懂项目结构,再给出可落地的改动。

跑测试与排查故障

按现象排查问题,补测试用例并复跑。

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 有可直接复制的安装命令,不用自己翻文档找入口。

先想清楚的地方

  • 没有标注权限级别,实际能做什么要装好后确认。
  • 许可证不明确,商用或二次分发前先到仓库确认条款。
  • 没有做站内核验,内容以作者仓库为准。
  • 技能只是说明书,实际效果取决于模型与客户端,装完先用小任务试一遍。

更适合

  • 需要在开发场景里给模型补一套做法的人。
  • 愿意先读一遍 SKILL.md、确认它会让模型做什么的人。

不太适合

  • 对许可证要求很严、必须明确可商用的人。
  • 只想装完就自动变强、不打算看说明书的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
技能权限级别安装方式累计安装宿主客户端安装命令
Figma To Code当前 未标注权限 未标注 未标注 未标注 有
技能审查员 浏览器控制 ClawHub 市场 877.9 万 OpenClaw 有
Vercel React 最佳实践 浏览器控制 GitHub 仓库 849.1 万 Codex、Claude、Cursor 有
GitHub 代码协作 联网访问 ClawHub 市场 763.3 万 OpenClaw 有
网页设计指南 联网访问 GitHub 仓库 668.6 万 Codex、Claude、Cursor 有
本体论 只读 ClawHub 市场 663.7 万 OpenClaw 有

SKILL.md 全文

11.3 KB
模型实际读到的说明书原文,来自技能仓库

Figma To Code — 设计稿转生产代码

概述

Figma To Code 解决的是前端开发中最耗时的问题:把设计师的视觉意图精确还原到代码中。 传统流程中,设计师在 Figma 里画好界面,前端开发者对着截图逐像素比对——间距差几个像素、颜色不够准确、字体大小偏差,反复调整,浪费大量时间。

本技能让 WorkBuddy 直接读取 Figma 设计稿的结构化数据,提取设计令牌(色彩、间距、字体),映射到组件模式,生成接近生产水准的前端代码——设计还原精度从手动实现的 70-80% 提升到 95%+。

> 建议与 frontend-design-pro 配合使用:Figma To Code 负责设计还原精度,Frontend Design Pro 负责整体视觉质量。两者互补效果显著。

工作原理

Figma 设计稿
    ↓
1. Figma API 读取节点结构和属性
    ↓
2. 提取设计令牌(色彩、间距、字体、圆角、阴影)
    ↓
3. 语义化映射(识别按钮、卡片、表单等组件模式)
    ↓
4. 生成响应式代码(React/Tailwind/Vue/Svelte)
    ↓
5. 设计还原度验证(关键视觉属性逐项比对)
    ↓
生产级前端代码

快速上手

配置 Figma API 访问

# 设置 Figma Personal Access Token
export FIGMA_ACCESS_TOKEN=figd_your_token_here

# 或者写入配置文件
# .figma-to-code.yaml
figma:
  access_token: figd_your_token_here
  default_framework: "react-tailwind"
  design_token_output: "src/styles/design-tokens.json"

获取 Token:在 Figma 中点击 Settings → Personal access tokens → Generate new token

从 Figma 链接生成代码

# 提供 Figma 文件链接
"帮我根据这个 Figma 设计实现登录页面:
https://www.figma.com/design/ABC123/MyProject?node-id=456-789"

# WorkBuddy 自动:
# 1. 调用 Figma API 获取设计数据
# 2. 提取设计令牌
# 3. 语义化分析组件结构
# 4. 生成完整前端代码

从本地设计文件生成代码

如果已有导出的 Figma 数据:

"基于 design-data/ 目录下的 Figma JSON 数据实现组件"

设计令牌提取

色彩系统

WorkBuddy 从 Figma 中提取所有使用的颜色,自动归类并生成设计令牌:

// src/styles/design-tokens.json
{
  "colors": {
    "primary": {
      "50": "#eff6ff",
      "100": "#dbeafe",
      "500": "#3b82f6",
      "600": "#2563eb",
      "700": "#1d4ed8",
      "900": "#1e3a8a"
    },
    "semantic": {
      "success": "#10b981",
      "warning": "#f59e0b",
      "error": "#ef4444",
      "info": "#3b82f6"
    },
    "neutral": {
      "50": "#f9fafb",
      "100": "#f3f4f6",
      "500": "#6b7280",
      "700": "#374151",
      "900": "#111827"
    }
  }
}

自动补色:如果 Figma 中只用了 primary-500,WorkBuddy 会自动补全完整的色阶(50-900),确保后续扩展有足够的色彩层级。

间距系统

从 Figma 中提取的间距值会自动归入 8px 基准网格:

Figma 原始值 映射到 Tailwind 类 说明
4px 4px gap-1 最小间距
8px 8px gap-2 小间距
12px 12px gap-3 紧凑间距
16px 16px gap-4 标准间距
24px 24px gap-6 大间距
32px 32px gap-8 区块间距
48px 48px gap-12 章节间距

不规则值处理:如果 Figma 中有 13px 或 7px 等不规则间距,WorkBuddy 会提示并建议归入最近的网格值(如 13px → 12px 或 16px),保持间距系统的整洁。

字体排版

{
  "typography": {
    "fontFamily": {
      "primary": "Inter",
      "display": "Inter Tight"
    },
    "heading": {
      "h1": { "size": "36px", "weight": 700, "lineHeight": 1.2 },
      "h2": { "size": "30px", "weight": 700, "lineHeight": 1.25 },
      "h3": { "size": "20px", "weight": 600, "lineHeight": 1.4 },
      "body": { "size": "16px", "weight": 400, "lineHeight": 1.6 },
      "small": { "size": "14px", "weight": 400, "lineHeight": 1.5 },
      "caption": { "size": "12px", "weight": 500, "lineHeight": 1.4 }
    }
  }
}

圆角和阴影

{
  "borderRadius": {
    "sm": "4px",
    "default": "8px",
    "lg": "12px",
    "xl": "16px",
    "full": "9999px"
  },
  "shadows": {
    "sm": "0 1px 2px rgba(0,0,0,0.05)",
    "default": "0 1px 3px rgba(0,0,0,0.1)",
    "md": "0 4px 6px rgba(0,0,0,0.1)",
    "lg": "0 10px 15px rgba(0,0,0,0.1)"
  }
}

组件映射

语义化识别

WorkBuddy 自动将 Figma 节点映射为语义化组件:

Figma 节点特征 识别为 组件模式
圆角矩形 + 文字 + 背景色 按钮 Button 组件
卡片形矩形 + 标题 + 内容 卡片 Card 组件
矩形框 + 标签 + 输入区域 输入框 Input 组件
表格形网格 + 标题行 + 数据行 数据表格 Table 组件
顶部横条 + Logo + 导航链接 导航栏 Navbar 组件
侧边竖条 + 图标 + 链接列表 侧边栏 Sidebar 组件

映射配置

# .figma-to-code.yaml
mapping:
  # 自定义组件映射
  components:
    - figma_name: "CustomButton"
      component: "Button"
      variants:
        - figma_name: "CustomButton/Primary"
          variant: "primary"
        - figma_name: "CustomButton/Secondary"
          variant: "secondary"

  # 强制映射(当自动识别不准确时)
  force:
    - figma_name: "HeroBanner"
      component: "HeroSection"

组件变体处理

Figma 的组件变体(Variants)会被映射为代码中的变体系统:

// Figma 变体:Button { Primary, Secondary, Danger }
// 代码映射
function Button({ variant = "primary", size = "md", children }) {
  const variants = {
    primary: "bg-blue-600 text-white hover:bg-blue-700",
    secondary: "border border-gray-300 bg-white text-gray-700",
    danger: "bg-red-600 text-white hover:bg-red-700",
  };

  return (
    <button className={`${variants[variant]} rounded-lg px-4 py-2.5 ...`}>
      {children}
    </button>
  );
}

代码生成

框架选择

框架组合 适用场景 默认推荐
React + Tailwind 快速交付、主流项目 ✅
React + CSS Modules 需要 CSS 隔离的团队
Vue + Tailwind Vue 项目
Svelte + Tailwind 轻量级项目
Next.js + Tailwind SSR/SSG 项目

生成的代码结构

src/
├── styles/
│   ├── design-tokens.json       # 从 Figma 提取的设计令牌
│   └── globals.css              # 全局样式(基于令牌)
├── components/
│   ├── ui/
│   │   ├── Button.tsx           # 基础 UI 组件
│   │   ├── Card.tsx
│   │   ├── Input.tsx
│   │   └── Table.tsx
│   │   └── Navbar.tsx
│   ├── sections/
│   │   ├── HeroSection.tsx      # 页面区块组件
│   │   ├── FeatureSection.tsx
│   │   └── PricingSection.tsx
│   └── pages/
│       ├── LoginPage.tsx        # 页面组件
│       └── DashboardPage.tsx
├── hooks/
│   └── useDesignTokens.ts       # 设计令牌 Hook
└── App.tsx                      # 页面组装

设计还原度验证

WorkBuddy 生成代码后,会自动执行设计还原度验证:

$figma-verify

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 设计还原度报告:登录页面
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

## 关键视觉属性
✅ 主色 blue-600:Figma #2563eb → 代码 #2563eb(100% 匹配)
✅ 标题字号 36px:Figma 36 → 代码 text-4xl/36px(100% 匹配)
✅ 圆角 8px:Figma 8 → 代码 rounded-lg/8px(100% 匹配)
⚠️ 间距 card-padding:Figma 20px → 代码 p-5/20px(100% 匹配)
     建议:归入 24px(p-6)以保持间距网格一致性
✅ 阴影 card-shadow:Figma shadow-default → 代码 shadow-sm(95% 匹配)

## 总体还原度
精确匹配:92%
近似匹配:8%
不匹配:0%

## 建议
- 将 20px padding 调整为 24px 以对齐间距系统
- 深色模式缺少 Figma 变体映射

设计稿规范建议

Figma 设计稿越规范,生成的代码质量越高:

✅ 好的设计稿特征

  • 组件使用了 Figma 的 Components 和 Variants 功能
  • 使用了 Auto Layout(而非手动定位)
  • 图层命名清晰(Button/Primary 而非 Rectangle 42)
  • 设计令牌使用了 Figma Variables 或 Styles
  • 所有文字节点都有明确的样式定义

❌ 常见问题

  • 大量手动定位元素(WorkBuddy 会提示改为 Auto Layout)
  • 图层命名混乱(WorkBuddy 会推断语义但精度降低)
  • 未使用 Figma 组件(生成的代码可能有重复模式)
  • 间距值不在网格系统上(WorkBuddy 会建议归入网格)

最佳实践

1. 先提取令牌再生成组件

不要直接从设计稿跳到代码。先提取设计令牌,确认令牌系统合理,再基于令牌生成组件——这样保证了全局一致性。

2. 逐步还原

先实现页面骨架和布局,再填充细节样式。一次性还原整个页面容易出错。

3. 保留设计意图

如果 Figma 中有不规则值(如 13px 间距),不要简单地"修正"为网格值。先确认设计师的意图——有时不规则值是有设计理由的。

4. 组件库优先

如果设计稿中有大量重复的组件模式,先构建组件库(Button, Card, Input...),再用组件库组装页面。

5. 交由设计师验证

代码生成后,邀请设计师在浏览器中对比 Figma 原稿。WorkBuddy 的还原度报告可以作为沟通依据。

常见问题

Q: 没有设计稿,只有截图怎么办?

A: 可以提供截图,WorkBuddy 会通过视觉分析推断设计意图并生成代码,但还原度会低于直接读取 Figma API 数据。建议优先使用 Figma 链接。

Q: 支持哪些框架?

A: 目前优先支持 React + Tailwind CSS。也支持 Vue + Tailwind、Svelte + Tailwind、React + CSS Modules。如有其他框架需求,告知 WorkBuddy 即可适配。

Q: 设计稿更新后如何同步代码?

A: 使用 $figma-sync 命令重新提取设计数据,WorkBuddy 会自动对比差异并更新代码。建议在 CI 中配置自动同步检查。

Q: 生成的代码能直接用于生产吗?

A: 接近生产水准,但建议在上线前:1)人工 Review 业务逻辑部分;2)补充缺失的交互状态(loading/error);3)补充无障碍属性;4)运行设计还原度验证。

Q: 如何处理 Figma 中的动画?

A: WorkBuddy 会提取 Figma 中的 Smart Animate 信息,转化为 CSS transition 或 Framer Motion 配置。但复杂动画建议手动微调。


Figma To Code — 从设计稿到生产代码,精确还原每一像素的意图。

常见问题

5 问
答案由本站依据条目字段整理
Figma To Code怎么安装?

在支持 Skills 的客户端里执行:skillhub install user_24cd73cb/wb-figma-to-code。安装方式为未标注。装完刷新技能列表或重开客户端。

Figma To Code支持哪些客户端?

资料没有标注宿主客户端,但只要客户端支持 Skills(Claude、Codex、Cursor 等),一般都能加载。

Figma To Code权限高吗,安全吗?

权限级别为未标注权限。安装前先看它会读取或写入哪些内容。

Figma To Code收费吗?

本站不代收费用,也没有标注具体价格。是否收费取决于技能本身和所用的模型或客户端,正式使用前按作者说明确认。

Figma To Code用什么许可证?

许可证标注为 未说明(许可证不明确)。商用或二次分发前请到仓库确认条款原文。

热门专题

按场景挑技能
全部专题 →

技能内容以作者仓库为准;分类、权限级别与许可证状态的中文说明为中文整理,最近核验 未标注。