玩转ClaudeCode:使用Figma-MCP编写前端代码1:1还原UI设计图

玩转ClaudeCode:使用Figma-MCP编写前端代码1:1还原UI设计图

目录

本轮目标

具体实践

一、开启 Figma 的 MCP 服务器

二、Claude Code 连接 Figma MCP

三、Claude Code 代码实现 Figma 设计稿


本轮目标

本轮目标是制作数字化大屏的一个前端组件,要求和UI设计图还原度达到1:1。

本轮目标需要我们提前准备好figma客户端,且登录帐号具有开发模式的权限(没有可以去某夕)。Claude Code 就不必多说,没有安装的同学参考我的上一篇文章《玩转ClaudeCode:ClaudeCode安装教程(Windows+Linux+MacOS)》完成安装,通过专属链接注册,可以额外领取100美金的免费使用额度。

安装教程参考:玩转ClaudeCode:ClaudeCode安装教程(Windows+Linux+MacOS)_claude code安装-ZEEKLOG博客文章浏览阅读2.5w次,点赞67次,收藏86次。全网最火爆的Claude Code系列教程来了,跟着小智学AI,做新时代的Vibe Coder,几篇博客带你玩转Claude Code,本文介绍了Claude Code在Windows环境、Linux环境、MacOS环境下的安装和使用,还没有体验过Calude Code的你,快来扫盲吧,有任何问题都可以在评论区留言,期待你的互动!_claude code安装https://blog.ZEEKLOG.net/weixin_41793160/article/details/149313024


具体实践

一、开启 Figma 的 MCP 服务器

打开 Figma 桌面客户端(只支持在桌面端中设置 Figma MCP Server),如图所示选中 Preferences -> Enable Dev Mode MCP Server 启动 MCP Server。

如果访问 localhost:3845/sse 有如下页面,说明 Figma 的 MCP 服务开启成功。

Figma MCP 支持 5 个 Tool:

ToolFunction
get_code获取设计稿中的代码
get_image获取设计稿中的图片
get_variable_defs获取某个变量
get_code_connect_map获取代码连接映射
create_design_system_rules创建设计系统规则

二、Claude Code 连接 Figma MCP

首先保证电脑上已经安装 claude code,没有安装的参考:玩转ClaudeCode:ClaudeCode安装教程(Windows+Linux+MacOS)_claude code安装-ZEEKLOG博客文章浏览阅读2.5w次,点赞67次,收藏86次。全网最火爆的Claude Code系列教程来了,跟着小智学AI,做新时代的Vibe Coder,几篇博客带你玩转Claude Code,本文介绍了Claude Code在Windows环境、Linux环境、MacOS环境下的安装和使用,还没有体验过Calude Code的你,快来扫盲吧,有任何问题都可以在评论区留言,期待你的互动!_claude code安装https://blog.ZEEKLOG.net/weixin_41793160/article/details/149313024

已经安装成功的进行下面的步骤:

项目文件夹目录下 CMD 运行:

claude mcp add --transport sse figma-dev-mode-mcp-server http://127.0.0.1:3845/sse

启动 Claude Code:

claude --dangerously-skip-permissions

查看 MCP 是否安装成功:

/mcp

如果显示未连接,可以回车之后选择 Reconnect 一下,连接成功如图:

如果需要项目特定配置,可以在项目目录下新建 .mcp.json 文件,将 Figma MCP Server 和 context7 MCP Server 的配置写入:

{   "mcpServers": {     "Figma": {       "url": "http://127.0.0.1:3845/sse"     },     "context7": {       "command": "npx",       "args": ["-y", "@upstash/context7-mcp@latest"]     }   } }

三、Claude Code 代码实现 Figma 设计稿

先测试 Claude Code 能否读取到 Figma 的设计稿。

选中 Figma 设计稿中的某一块(或复制 Figma 中的图层链接)。

在 Claude Code 里提问,是否可以抓取到对应模块的 CSS:

告诉我figma里选中的模块的css

可以看到,CSS 信息被顺利抓取。

下面,我们来进行代码的整体编写,将 Figma 设计稿转换成代码实现。

根据figma 设计稿当前选中的图层,遍历里面所有的组件,对图片逐一下载,对每个子组件逐一读取,将figma设计稿转换为html代码实现,创建index.html

我创建了一个静态 html 页面来实现这个效果,如果是vue/react/angular的页面,告诉 claude code 即可。

由于元素过多,claude code 的第一版一般都和 ui 大相径庭。后续需要我们逐个组件把 css 喂给 claude code。

最终效果:

各个组件都和原型 1:1 复刻,后面再微调组件间距离即可。因为大屏太过复杂,调了很久,但是也节省了非常大的时间。

下面,我们再去复刻一个简单的移动端的 UI 案例。

还是先选中我们要实现的图层。

告诉 claude code,我们要遍历这个图层中的所有组件,创建一个 html 文件,实现这个组件。

帮我创建一个test.html,实现我选中的图层及内容,要求遍历每一个组件,获取他们的样式和svg等

初版很快就被实现了出来:

下面,我们需要依次选中figma中的每个子组件,再把它们的 css 喂给 claude code。

最终效果:

再实现一个简单的,目标如下:

初版如图:

喂给 claude code 更多 css 和 svg 信息:

最终结果如图:

经过这几个例子,我们可以看到 claude code 结合 figma 的 mcp 之后,功能变得多么的强大,期待使用 claude code 做出更多出色的作品!!


加入社区

Claude Code 开发者交流社区

福利多多,立即加入 👇 👇 👇 

Claude Code 中国开发者交流社区

期待与你的思维碰撞,共同奔赴AI开发的浪潮!

Read more

Web足球青训俱乐部管理后台系统信息管理系统源码-SpringBoot后端+Vue前端+MySQL【可直接运行】

Web足球青训俱乐部管理后台系统信息管理系统源码-SpringBoot后端+Vue前端+MySQL【可直接运行】

摘要 随着足球运动的普及和青少年体育教育的重视,足球青训俱乐部在培养年轻球员方面发挥着越来越重要的作用。然而,传统的俱乐部管理方式往往依赖手工操作和纸质记录,效率低下且容易出错。信息技术的快速发展为俱乐部管理提供了新的解决方案,通过数字化手段提升管理效率和数据准确性成为迫切需求。该系统旨在为足球青训俱乐部提供一个高效、便捷的管理平台,涵盖学员信息、训练计划、赛事安排等核心功能,帮助俱乐部实现规范化、智能化管理。关键词:足球青训、俱乐部管理、数字化、效率提升、规范化。 本系统采用前后端分离架构,后端基于SpringBoot框架实现,提供稳定高效的API接口;前端使用Vue.js构建,确保用户界面的流畅性和交互体验;数据库采用MySQL,保证数据存储的安全性和可扩展性。系统功能模块包括学员信息管理、训练计划制定、赛事记录统计、教练员管理等,支持数据的增删改查和多条件筛选。通过权限控制实现不同角色的差异化操作,确保数据安全性。系统源码可直接运行,便于二次开发和部署。关键词:SpringBoot、Vue.js、MySQL、权限控制、数据管理。 数据表 学员信息数据表 学员信息数据表中

Flutter 三方库 shelf_web_socket 的鸿蒙化适配指南 - 实现具备高性能全双工长连接与协议协商能力的端侧服务端架构、支持分布式实时信令与多端协同实战

Flutter 三方库 shelf_web_socket 的鸿蒙化适配指南 - 实现具备高性能全双工长连接与协议协商能力的端侧服务端架构、支持分布式实时信令与多端协同实战

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net Flutter 三方库 shelf_web_socket 的鸿蒙化适配指南 - 实现具备高性能全双工长连接与协议协商能力的端侧服务端架构、支持分布式实时信令与多端协同实战 前言 在进行 Flutter for OpenHarmony 开发时,当我们的鸿蒙应用需要充当“控制中心”角色(如控制智能家居、开启本地调试服务或实现 P2P 实时对抗脚本时),如何在端侧直接拉起一个支持 WebSocket 协议的高性能微服务端?shelf_web_socket 是针对 shelf 后端框架封装的一款官方级 WebSocket 处理器。本文将探讨如何在鸿蒙端构建极致、透明的长连接交互引擎。 一、原直观解析 / 概念介绍 1.1 基础原理 该库本质上是一个 shelf 处理函数(Handler)

不用AList也能挂载115网盘?飞牛NAS原生WebDAV配置全攻略

飞牛NAS原生WebDAV直连115网盘全流程解析 在私有云存储领域,飞牛NAS凭借其简洁易用的特性赢得了不少用户的青睐。对于拥有115网盘资源的用户来说,如何在不依赖第三方工具的情况下实现高效挂载,成为提升使用体验的关键。本文将深入探讨飞牛NAS原生支持WebDAV协议挂载115网盘的全套方案,从原理分析到实操细节,帮助用户构建更稳定的私有云存储架构。 1. WebDAV协议与飞牛NAS的兼容性解析 WebDAV(Web Distributed Authoring and Versioning)作为一种基于HTTP/HTTPS的扩展协议,早已成为跨平台文件管理的通用标准。飞牛NAS在系统层面原生集成WebDAV服务,这为直接挂载各类云存储提供了技术基础。相比需要通过AList等第三方工具中转的方案,原生WebDAV连接具有明显的优势: * 性能提升:省去中间层处理,传输效率提高30%以上 * 稳定性增强:减少因第三方服务更新导致的兼容性问题 * 资源占用降低:无需额外安装维护应用,节省系统资源 在实际测试中,原生WebDAV挂载的响应速度比AList方案快1.5-2

WebSocket:告别轮询,实现Web实时通信 WebRTC:无需插件,实现浏览器端实时音视频通信

WebSocket:告别轮询,实现Web实时通信 WebRTC:无需插件,实现浏览器端实时音视频通信

目录 一、HTTP 协议的缺点和解决方案 二、如何实现服务器主动发数据 ①:HTTP定时轮询 ②:HTTP长轮询机制 三、WeSocket的由来 四、如何建立websocket链接 五、websocket的实现方式 六、关于WebRTC(Web Real-Time Communication) 七、流程设计 核心原理: 八、WebRTC项目搭建与依赖配置 步骤1: 服务端开发(一)—— 项目搭建与依赖配置 步骤2: 服务端开发(二)—— 核心实体类与消息处理器 步骤3: Netty 服务启动类与 SpringBoot 启动类 步骤 4: Vue前端开发 1.编辑模版template 2.编写核心脚本(script setup),实现交互逻辑 步骤5: 补充 “挂断”