SuperAPI AI 工具集

smoothui-component-craft

前端与建站

查看项目

更新于 10-16 07:12

技能介绍

用途

SmoothUI Component Craft 用于创建、改进、修复或审查 SmoothUI 组件,强调生产级动画、无障碍性与性能。它通过一个严格的分阶段工作流,编排多个质量技能,最终产出打磨完善、可访问且性能良好的 SmoothUI 组件。

严格工作流

每个组件任务都按以下阶段依次执行,不得跳过任何阶段。

阶段 1:头脑风暴与调研

首先调用 superpowers:brainstorming,在编写任何代码之前探索意图、需求和设计。头脑风暴期间需要:明确组件功能及其交互模式;识别动画需求(进入、退出、悬停、状态过渡);决定使用 Motion 还是 GSAP(除非需要复杂的形变或时间线,否则优先 Motion);识别受控/非受控状态需求;列出变体和 props。头脑风暴之后,在 packages/smoothui/components/ 中调研现有组件,寻找可遵循的相似模式。

阶段 2:使用 Interface Craft 进行设计

调用 interface-craft 设计动画与交互层:定义动画阶段与顺序;规划弹簧配置(duration: 0.25,UI 的 bounce ≤0.1);设计悬停/聚焦/激活状态;如有需要规划布局动画。输出为包含具体 Motion/GSAP 数值的动画规格。

阶段 3:实现

从 references/scaffolding.md 读取脚手架模板。创建所有必需文件:

  • 组件 — packages/smoothui/components/[name]/index.tsx:交互时添加 "use client" 指令;以 [ComponentName]Props 导出类型;使用来自 @repo/shadcn-ui/lib/utils 的 cn();从 motion/react 导入 useReducedMotion。
  • package.json — packages/smoothui/components/[name]/package.json:内部依赖使用 workspace:*。
  • tsconfig.json — packages/smoothui/components/[name]/tsconfig.json。
  • 导出 — 添加到 packages/smoothui/components/index.ts。
  • 示例 — apps/docs/examples/[name].tsx:默认导出命名为 [ComponentName]Demo;展示所有变体。
  • 文档 — apps/docs/content/docs/components/[name].mdx:frontmatter 包含 title、description、icon、dependencies、installer;使用 <AutoTypeTable> 展示 props。
  • 导航 — 按字母顺序添加到 apps/docs/content/docs/components/meta.json 的正确分区。

动画要求(不可协商):从 motion/react 导入并使用 useReducedMotion;当 shouldReduceMotion 为 true 时,使用即时过渡(duration: 0)或静态状态;只动画 transform 和 opacity;弹簧使用 { type: "spring", duration: 0.25, bounce: 0.1 };进入缓动使用 cubic-bezier(.23, 1, .32, 1);移动缓动使用 cubic-bezier(0.645, 0.045, 0.355, 1);绝不使用 "easeInOut" 这类字符串缓动;悬停动画需通过 matchMedia("(hover: hover) and (pointer: fine)") 检测支持悬停的设备。

无障碍要求(不可协商):使用语义化 HTML(<button>、<nav>,而非带 role 的 <div>);使用 ARIA 属性(aria-label、aria-expanded、role 等);支持键盘导航(方向键、Enter、Escape 视情况而定);正确管理 tabIndex(绝不使用正值);为图片提供替代文本;符合颜色对比度要求。

阶段 4:质量审查

按顺序运行全部三个审查技能:调用 vercel-react-best-practices 检查 React/Next.js 性能模式;调用 web-design-guidelines 检查 Web 界面指南合规性;调用 rams 运行无障碍与视觉设计审查。在认为组件完成之前修复所有发现的问题。

阶段 5:验证

从项目根目录运行 pnpm check 验证 lint;运行 pnpm build 验证构建通过;如有可能,启动开发服务器并在浏览器中目视验证。

改进现有组件

对于改进任务,如果改动较小(例如“添加一个变体”),可跳过阶段 1 的头脑风暴;否则遵循完整工作流。始终需要:先阅读现有组件;识别缺失项(减少动效?键盘导航?悬停检测?);应用更改;运行阶段 4 的审查技能;运行阶段 5 的验证。

快速参考:文件路径

文件 路径
组件 packages/smoothui/components/[name]/
组件索引 packages/smoothui/components/index.ts
示例 apps/docs/examples/[name].tsx
文档 apps/docs/content/docs/components/[name].mdx
导航配置 apps/docs/content/docs/components/meta.json

适用场景与限制

该技能适用于在 SmoothUI 项目中创建、改进、修复或审查组件,尤其适合需要动画、无障碍和性能质量保障的组件开发任务。其工作流依赖多个可调用的技能(superpowers:brainstorming、interface-craft、vercel-react-best-practices、web-design-guidelines、rams)以及特定的项目目录结构、脚手架模板和 pnpm 命令。关于收费、价格、平台支持范围等信息,资料中暂未提供。