Communitygithub.com

ChaseSunstrom/ui-design

当您构建或重新设计页面、组件、动画或3D场景时使用:方向、设计标记、动效、质量检查。

ui-design 是什么?

该技能为任何涉及视觉外观或动效的工作提供一条完整路径,包括网页、应用界面、组件、动画、3D场景或简单地“让它看起来更好”。它引导至 UI 操作手册(playbooks),并通过 sampo 指令衡量结果。目标是创建具有独特观点的 UI,而非千篇一律的卡片组合。它支持终端 UI 或 Claude Code 模式,适配不同开发环境。工作流程从方向决策开始,经过设计标记(Tokens)、布局构建、动效设计、3D场景创建,最后进行质量检查。每个步骤都强调决策落地或验证,拒绝泛化设计。

兼容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/ChaseSunstrom/sampo/tree/HEAD/plugin/skills/ui-design

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

Sampo:UI 设计、动效与3D

为任何关于屏幕外观或动效的工作提供统一路径:网页、应用界面、组件、动画、3D场景,或“让它看起来更好”。它会路由到 UI 操作手册(playbooks)(以下路径相对于本技能;使用 sampo playbooks show ui/NAME 可打印相同文件)以及衡量结果的 sampo 动词。目标是创建具有独特观点的 UI,而非千篇一律的卡片组合:以下每一步要么确立决策,要么验证决策。终端 UI 或 Claude Code 模式则使用 ../playbooks/references/ui/terminal-ui.md。

在聚焦的任务内工作(每一步编辑文件)。每步只阅读其指定的操作手册。

1. 方向:决定应有的感觉

  • 仓库已有一个(包含 ## Direction 部分的 DESIGN.md,品牌指南,已交付的设计系统):以此为准。阅读后进入第2步,除非用户要求全新的外观。
  • 没有方向,或用户想要可供选择的外观或风格:加载:技能 sampo:directions(根据一句话生成六张单屏卡片,选择的卡片保存为带有胆识等级的 DESIGN.md)。
  • 展示真实样本而非描述:sampo page looks 为每张外观卡片创建一个包含真实样本的图库;sampo looks 根据用户过去的保留和还原对二十个样本进行排名,因此优先提供其前列的样本。
  • 设计立场、品味词汇、方向库以及“应避免的默认值”:../playbooks/references/ui/design-direction.md。

2. 设计标记:字体、颜色、间距

  • ../playbooks/references/ui/type-and-colour.md:字体等级与配对、OKLCH 调色板角色、暗色模式作为独立环节。
  • 现有 CSS:sampo design extract SRC 从自定义属性中提取标记表并写入 DESIGN.md 的 ## 设计标记 部分(--out - 则打印到标准输出)。从头开始:sampo design palette SEED --out tokens.css 基于一种颜色生成明暗调色板(--format css|dtcg|tailwind);它输出到标准输出,因此需使用 > 重定向。来自 Figma 或 DTCG .json 的标记:sampo design tokens tokens.json --to md --out DESIGN.md。硬编码值:sampo design infer SRC 提出建议标记。
  • 品牌资产:sampo design tokens DESIGN.md --to brand --out public/ 写入 favicon.svg 和 card.svg。
  • 标记漂移:sampo design xray PAGE --out xray.png 将每个元素高亮为绿色(标记颜色)或红色。
  • 构建前验证:sampo design contrast TOKENS 检查角色对比(暗色模式下正文文本为7:1)。

3. 构建:布局与行为

  • 从严格模板开始:sampo new list,然后 sampo new web DIR(一个页面)或 sampo new scene DIR(一个3D场景);sampo new check PATH 保持严格性。
  • ../playbooks/references/ui/composition.md:节奏、网格、单一光源深度、主视觉、状态图集。
  • ../playbooks/references/ui/interaction.md:反馈时限、键盘导航、表单错误、360像素触控规则。
  • 图表:../playbooks/references/ui/data-viz.md。故事页面:../playbooks/references/ui/scrollytelling.md。
  • 代码侧卡片:sampo lib show NAME(操作手册中命名它们)。

4. 动效:精心设计,而非随意点缀

  • ../playbooks/references/ui/motion.md:时间标记、状态到动效映射表、故事板、减少动效作为独立路径。
  • 编写动效评分表(仓库根目录下的 motion.toml),然后使用 sampo motion check(检查缺失的减少动效形式、未知的缓动曲线、DESIGN.md 缺少的标记)以及 sampo motion compile --to css|waapi|three|lab --out FILE 生成代码。
  • 游戏和趣味性 UI:../playbooks/references/ui/game-feel.md。音效:../playbooks/references/ui/sound-design.md。

5. 3D:永不破坏页面的场景

  • ../playbooks/references/ui/scene-3d.md:构图、光照与材质、帧预算、生存契约(无 WebGL、减少动效、上下文丢失)、黑屏故障排查。
  • 将场景描述为数据(摄像机、灯光、材质、网格、动画)并存放在 scene.json 中,然后使用 sampo scene compile scene.json --to three --out scene.js(一个 three.js 模块)或 --to component(一个组件)。
  • 无依赖:单文件 WebGL2 模板 ../playbooks/references/ui/templates/scene.html(sampo new scene)。
  • 灯光组合与 PBR 预设:sampo lib show light-and-material;针对单个表面的着色器纹理,非整个方向:sampo lib list --area looks,然后 sampo lib show shader-NAME;库:sampo lib show three-js、sampo lib show react-three-fiber。

6. 检查:通过视觉验证

  • sampo design lint SRC:通用设计问题和工艺瑕疵;修复每项或说明保留原因。其最后一行列出 DESIGN.md 中标记但未在文件中使用的标记:在代码中引入它们或从标记表中删除它们。
  • sampo design check:DESIGN.md 中选择启用的检查(## 检查条件,- brief: advisory|blocking):检查代码中出现的颜色、字体族和时长;- a11y:…:标记对比对、减少动效路径、无快速闪烁、img alt 和可见聚焦样式;- debt: advisory 40:每个文件中未标记化的颜色、时长和半径,低于预算。
  • 任何颜色更改后再次运行 sampo design contrast TOKENS;任何动效更改后再次运行 sampo motion check。
  • sampo critique URL:页面实际使用的样式与 DESIGN.md 标记的对比(未命名、近似重复、一次性样式);--why SELECTOR 显示哪条规则生效。--bingo 对九个模板化外观特征进行评分(整行命中时退出代码1);--marks shot.png 将截图上的铅笔红色笔划转换为每个标记元素的一个捕获的修复项(--note 说明每项要求);--brief [ID] 检查设计简报中引用的短语是否出现在页面上。
  • ../playbooks/references/ui/visual-qa.md:sampo smoke 拍摄帧矩阵(360/768/1440,亮色和暗色,减少动效);读取 PNG 并查看。前后对比:sampo img diff A.png B.png --out diff.png。
  • 组件的状态(默认、悬停、错误、空、加载中):sampo stories CHART 将每个状态拍摄到一个矩阵页面中。sampo shot 和 sampo stories 接受 --profile tv|eink|car|wrist(该界面的尺寸和缩放)以及 --reduced-motion(用于海报和静态状态的 prefers-reduced-motion: reduce)。
  • 将每项记录作为任务步骤的证据;UI 更改不能仅依赖绿色测试完成。

7. 品味

用户保留或还原某个外观:sampo looks keep LOOK 或 sampo looks revert LOOK,以便下次排名从中学习。

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

相关技能