关于 vercel-ui-skills
vercel-ui-skills 为 AI Agent 构建 Vercel 风格界面提供设计约束,说明视觉令牌和实现指导,适用于浅色模式 UI。
主要功能
- 01Vercel 风格视觉指南
- 02颜色令牌与对比度规则
- 03Inter 字体规范
- 04间距与边框尺度
- 05无障碍与交互规则
适用场景
- 01构建 Vercel 风格设计系统
- 02创建浅色模式界面布局
- 03检查 UI 无障碍与交互细节
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ ihlamury/ design-skills --skill vercel-ui-skills安装后在 Claude Code 中输入/vercel-ui-skills确认已加载。
附带文件metadata.json
详细介绍
Vercel UI 技能
使用 AI Agent 构建 Vercel 风格界面时应遵循的约束。
适用场景
在以下情况下参考这些指南:
- 构建浅色模式界面
- 创建受 Vercel 启发的设计系统
- 使用 Inter 字体和 4px 网格实现 UI
颜色
- 应为主要表面使用浅色背景
- 必须将
#F9F9F9用作页面背景(surface-base) - 必须将
#000001用于主要操作和焦点状态(accent) - 应缩减调色板(目前检测到 12 种颜色)
- 必须确保文本对比度至少为 4.5:1,以满足无障碍要求
语义令牌
| 令牌 | HEX | RGB | 用途 |
|---|---|---|---|
surface-base | #F9F9F9 | rgb(249,249,249) | 页面背景 |
surface-raised | #111111 | rgb(17,17,17) | 卡片、模态框、凸起表面 |
surface-overlay | #000001 | rgb(0,0,1) | 覆盖层、工具提示、下拉菜单 |
text-primary | #797979 | rgb(121,121,121) | 标题、正文文本 |
text-secondary | #929292 | rgb(146,146,146) | 次要文本、弱化文本 |
text-tertiary | #1B1B1B | rgb(27,27,27) | 其他文本 |
border-default | #C8CDD1 | rgb(200,205,209) | 细边框、分隔线 |
accent | #000001 | rgb(0,0,1) | 主要操作、链接、焦点 |
字体排版
- 必须使用
Inter作为主要字体 - 为保持一致性,应使用单一字体
- 主要标题必须使用
44px/extra_bold - 正文文本必须使用
29px/700 - 应减少字重数量(目前检测到 5 种)
- 标题必须使用
text-balance,正文文本必须使用text-pretty - 数值数据应使用
tabular-nums - 除非明确要求,否则绝不修改字母间距
文本样式
| 样式 | 字体 | 大小 | 字重 | 颜色 | 数量 |
|---|---|---|---|---|---|
heading-1 | Inter | 44px | extra_bold | #383838 | 1 |
body | Inter | 29px | 700 | #1B1B1B | 1 |
body-secondary | Inter | 28px | 500 | #717171 | 1 |
text-25px | Inter | 25px | 500 | #828282 | 1 |
text-24px | Inter | 24px | 500 | #797979 | 1 |
text-24px | Inter | 24px | 700 | #1E1E1E | 1 |
text-23px | Inter | 23px | 400 | #6C6C6C | 1 |
text-20px | Inter | 20px | 500 | #262626 | 1 |
text-18px | Inter | 18px | 400 | #797979 | 1 |
text-18px | Inter | 18px | 500 | #373737 | 1 |
字体排版参考
字体系列:
Inter(使用 21 次)
字体大小: 10px、12px、13px、14px、15px、18px、20px、23px、24px、25px、28px、29px、44px
间距
- 必须使用 4px 网格设置间距
- 应使用以下间距刻度:4px、5px、6px、10px、25px、54px、59px、92px
- 元素之间的默认间隔应为 5px
- 绝不使用任意间距值(使用设计刻度)
- 应保持容器内边距一致
边框
- 必须使用以下圆角刻度:5px、6px、7px、22px、23px
- 胶囊形元素应使用 22px 及以上的圆角
- 边框宽度应限制为:1px、3px
- 默认边框圆角应为 23px
- 绝不使用任意边框圆角值(使用设计刻度)
- 元素分隔应使用细边框(1px)
边框圆角参考
刻度: 5px、6px、7px、22px、23px
布局
- 必须以 1920px 的基础视口宽度进行设计
- 元素宽度应保持一致:8px、181px、66px
- 应采用文本内容较多且层级清晰的布局
- 绝不使用
h-screen,全视口高度应使用h-dvh - 固定元素必须遵循
safe-area-inset - 方形元素应使用
size-*,而非w-*+h-*
检测到的布局模式
- 主要内容:宽度:1920px,高度:1080px
- 主要内容:宽度:1511px,高度:790px
- 主要内容:宽度:1098px,高度:735px
- 页眉:高度:59px
组件
按钮
| 变体 | 背景 | 文本 | 边框 | 高度 | 圆角 |
|---|---|---|---|---|---|
| 幽灵 | 透明 | #545454 | 无 | - | - |
交互状态
焦点
- 必须使用
2px宽、颜色为强调色(#000001)的轮廓 - 必须使用
2px的轮廓偏移 - 绝不移除焦点指示器
悬停
- 按钮(主要):将背景调亮 10%
- 按钮(次要):使用
#111111背景 - 列表项:使用
#111111背景
禁用
- 必须使用
opacity: 0.5 - 必须使用
cursor: not-allowed
交互
- 对于破坏性或不可逆操作,必须使用
AlertDialog - 加载状态应使用结构化骨架屏
- 必须在操作发生的位置旁显示错误
- 绝不阻止在
input或textarea元素中粘贴内容 - 图标按钮必须添加
aria-label
动画
- 除非明确要求,否则绝不添加动画
- 动画只能使用合成器属性(
transform、opacity) - 绝不为布局属性(
width、height、top、left、margin、padding)添加动画 - 入场动画应使用
ease-out - 交互反馈动画时长绝不能超过
200ms - 应遵循
prefers-reduced-motion
性能
- 绝不为大面积
blur()或backdrop-filter表面添加动画 - 仅在动画进行期间使用
will-change - 绝不对任何可通过渲染逻辑实现的内容使用
useEffect
评论
支持 Markdown