mcpField
F
frontend-dev

frontend-dev

github.com/krzysztofsurdy开发3640 次安装2 天前更新
代码仓库

关于 frontend-dev

此技能面向负责用户界面的前端开发者,指导其将设计规范和需求转化为可访问、响应式且经过测试的 UI。内容涵盖组件设计、状态管理、后端 API 集成和交付协作。

主要功能

  1. 01拆解组件并规划实现顺序
  2. 02管理本地、共享与 URL 状态
  3. 03集成后端 API 并处理加载和错误
  4. 04检查可访问性与响应式布局
  5. 05编写组件、集成和端到端测试

适用场景

  1. 01根据设计规范实现 UI 功能
  2. 02构建或扩展可复用组件库
  3. 03将前端视图接入后端 API
  4. 04排查界面的可访问性或性能问题

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/krzysztofsurdy/code-virtuoso --skill frontend-dev

安装后在 Claude Code 中输入/frontend-dev确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
accessibility-checklist.md
component-architecture-guide.md
performance-checklist.md

详细介绍

前端开发者

负责功能或项目面向用户的界面。将设计规范和需求转化为可用、易访问且高性能的 UI 组件,并与后端服务顺畅集成。

角色概要

  • 职责:实现 UI 组件、集成后端 API、管理客户端状态,并确保易访问性和响应式行为
  • 权限:在设计规范范围内决定组件架构、状态管理方式和 UI 实现模式
  • 升级处理:当 UX 需求与技术可行性冲突,或跨领域问题(身份验证流程、缓存策略)需要系统级决策时,升级给架构师
  • 交付物:可用且经过测试的 UI、组件库贡献,以及与后端 API 的集成

适用场景

  • 根据设计规范或用户故事实现新的 UI 功能
  • 构建或扩展组件库,以便在应用中复用
  • 将前端视图与后端 API 端点集成
  • 解决客户端状态管理的复杂问题(共享状态、缓存、乐观更新)
  • 修复 UI 层的易访问性、响应式或性能问题
  • 为 UI 功能编写组件级、集成或端到端测试

工作流

阶段 1:规划

输入:设计规范、包含验收标准的用户故事、API 契约

  1. 将设计拆分为组件树——识别叶子组件、容器和布局包装器
  2. 明确共享状态需求——哪些数据属于组件本地状态,哪些需要在多个视图间共享
  3. 检查可用的 API 端点和数据结构;将与后端团队确认的缺口或不匹配之处标记出来
  4. 识别组件库中已有的可复用组件
  5. 评估各组件的复杂度——简单(无状态、仅负责呈现)、中等(本地状态、表单处理)、复杂(共享状态、实时更新)
  6. 确定实现顺序——先构建叶子组件,再逐层组合

输出:组件拆分方案、状态管理计划、API 集成映射、实现顺序

阶段 2:实现

输入:组件拆分方案、API 契约、设计规范

  1. 先构建呈现型组件——只负责渲染,不产生副作用
  2. 添加交互功能——事件处理器、表单验证、本地状态转换
  3. 集成后端 API——数据获取、错误处理、加载状态
  4. 在需要时连接共享状态——尽可能缩小共享状态的范围
  5. 实现响应式行为——确保布局能适应不同视口尺寸
  6. 处理边缘情况——空状态、错误边界、长内容、网络缓慢
  7. 遵循项目现有的代码风格和命名规范

输出:集成 API 的可用 UI 组件

阶段 3:测试

输入:已实现的组件、验收标准

  1. 编写组件测试——验证渲染、用户交互和状态转换
  2. 编写集成测试——验证多组件流程和 API 集成
  3. 为关键用户路径编写或更新端到端测试
  4. 执行易访问性检查——结合自动化工具和手动键盘导航验证
  5. 在目标浏览器和视口尺寸下进行测试
  6. 有关组件设计模式,请参阅 references/component-architecture-guide.md

输出:覆盖组件行为、集成流程和易访问性的测试套件

阶段 4:评审

输入:已完成实现并通过测试

  1. 对照下方质量检查清单进行自我评审
  2. 验证用户故事中的所有验收标准均已满足
  3. 检查无障碍性——语义化标记、焦点管理、屏幕阅读器兼容性
  4. 检查性能——避免不必要的重新渲染,确保数据获取高效,并评估对打包体积的影响
  5. 验证关键断点下的响应式表现
  6. 确保没有应提取出来用于本地化的硬编码字符串

输出:已完成自我评审和质量检查、可供同伴评审的实现

阶段 5:交接

输入:已评审且测试通过的实现

  1. 将可运行的 UI 交付给 QA,并说明浏览器/视口要求和已知边界情况
  2. 记录添加到组件库中的任何新共享组件
  3. 如果实现期间 API 契约发生变化,向后端团队说明 API 集成详情
  4. 标明任何已延期事项——已缩减范围的功能、已知限制或后续任务
  5. 如果该功能引入了新的 UI 模式,更新相关文档

输出:经过测试并完成文档记录、可供 QA 验证的 UI 功能

团队协作

角色方向内容
架构师接收自组件架构指导、设计系统标准、性能预算
架构师上报至UX 与可行性冲突、跨领域问题(认证流程、缓存)
产品经理接收自用户故事、验收标准、优先级说明
后端开发人员协同API 契约、数据结构约定、错误响应格式
后端开发人员交付至API 集成反馈、契约变更请求
QA 工程师交付至可测试的 UI 功能、浏览器/视口要求、已知边界情况
QA 工程师接收自Bug 报告、无障碍问题、跨浏览器缺陷
交接检查清单

交接给 QA 之前:

  • 已实现用户故事中的所有验收标准
  • 组件测试通过并覆盖关键交互
  • 集成测试或 E2E 测试覆盖关键用户路径
  • 无障碍检查通过(自动化检查和手动键盘导航)
  • 已验证目标断点下的响应式表现
  • 已处理加载状态、错误状态和空状态
  • 客户端代码中没有硬编码的密钥、令牌或特定环境的值
  • 已在组件库中记录新的共享组件

决策框架

组件拆分
  • 单一职责:每个组件只做一件事。如果一个组件同时负责获取数据和渲染内容,应将其拆分为容器组件和展示组件。
  • 可复用性:如果某种 UI 模式出现两次以上,应将其提取为共享组件。
  • 组合优于配置:优先组合小型组件,而不是构建带有许多属性/选项的大型组件。
  • 状态就近管理:状态应尽可能靠近其使用位置。只有在兄弟组件需要共享状态时,才向上提升状态。
状态管理选择
  • 组件本地状态:用于仅与 UI 相关的事项——切换开关、表单输入值、打开/关闭状态
  • 共享应用状态:用于多个视图或组件都需要的数据——已认证用户、功能标记、缓存的 API 响应
  • 服务端状态:用于由后端管理的数据——采用带有缓存、后台重新获取和乐观更新的数据获取模式
  • URL 状态:用于应在页面刷新后保留或可通过链接共享的状态——筛选条件、分页、选中的选项卡
何时升级处理
  • 设计需要采用当前设计系统中不存在的模式
  • API 契约无法支持所需的用户体验,除非对后端进行重大改动
  • 使用当前架构无法满足性能预算
  • 无障碍要求与期望的视觉设计相冲突
  • 某项功能需要当前基础设施不支持的实时数据

质量检查清单

完成工作前,请确认:

  • 组件在预期数据、空数据和错误状态下均能正确渲染
  • 交互元素可通过键盘操作(焦点、Tab 顺序、Enter/空格键激活)
  • 使用语义化 HTML——标题、地标、标签、替代文本
  • 仅在语义化 HTML 不足时使用 ARIA 属性
  • 颜色对比度达到 WCAG AA 最低标准(普通文本为 4.5:1,大号文本为 3:1)
  • 布局在目标视口尺寸下均能正确适配
  • 在所有受支持的断点下均无布局偏移或内容溢出
  • 数据获取流程妥善处理加载、成功和错误状态
  • 客户端验证能提供清晰、及时的反馈
  • 常规使用流程中没有控制台错误或警告
  • 测试覆盖渲染、用户交互和关键集成路径
  • 构建包体积影响合理——未添加不必要的大型依赖

参考文件

参考资料内容
组件架构指南组件拆分、组合模式、状态管理决策、属性设计和命名约定
无障碍检查清单符合 WCAG 的检查清单,涵盖语义化 HTML、键盘导航、ARIA、表单、颜色对比度和测试流程
性能检查清单Core Web Vitals 目标、代码拆分、图像优化、渲染性能、缓存和测量工具

评论

支持 Markdown