关于 replit-ui-skills
replit-ui-skills 为 AI Agent 提供构建 Replit 风格界面的约束,涵盖视觉令牌、布局、交互、无障碍和性能规范。
主要功能
- 01浅色表面与颜色令牌规范
- 02Inter 字体与 4px 间距网格
- 03布局与圆角指导
- 04无障碍交互状态要求
- 05动画与性能约束
适用场景
- 01构建浅色模式界面
- 02创建 Replit 风格设计系统
- 03使用 Inter 和 4px 网格实现界面
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ ihlamury/ design-skills --skill replit-ui-skills安装后在 Claude Code 中输入/replit-ui-skills确认已加载。
附带文件metadata.json
详细介绍
Replit UI 技能
使用 AI Agent 构建 Replit 风格界面时应遵循的约束。
适用场景
在以下情况下参考这些指南:
- 构建浅色模式界面
- 创建 Replit 风格的设计系统
- 使用 Inter 字体和 4px 网格实现 UI
颜色
- SHOULD 为主要表面使用浅色背景
- MUST 将
#F8F8F8用作页面背景(surface-base) - MUST 将
#9266E6用作主要操作和焦点状态的颜色(accent) - SHOULD 精简调色板(目前检测到 26 种颜色)
- MUST 保持文本对比度至少为 4.5:1,以满足无障碍要求
语义令牌
| 令牌 | HEX | RGB | 用途 |
|---|---|---|---|
surface-base | #F8F8F8 | rgb(248,248,248) | 页面背景 |
surface-raised | #1C4B39 | rgb(28,75,57) | 卡片、模态框、凸起表面 |
surface-overlay | #E1EAE7 | rgb(225,234,231) | 覆盖层、工具提示、下拉菜单 |
text-primary | #769E8E | rgb(118,158,142) | 标题、正文 |
text-secondary | #8F9A96 | rgb(143,154,150) | 次要文本、弱化文本 |
text-tertiary | #BBBFBB | rgb(187,191,187) | 补充文本 |
border-default | #EEEEEE | rgb(238,238,238) | 细边框、分隔线 |
accent | #9266E6 | rgb(146,102,230) | 主要操作、链接、焦点 |
destructive | #DE4409 | rgb(222,68,9) | 错误状态、删除操作 |
字体排版
- MUST 使用
Inter作为主要字体系列 - SHOULD 使用单一字体系列以保持一致性
- MUST 将主标题设为
31px/semi_bold - MUST 将正文设为
13px/400 - SHOULD 减少字体粗细种类(目前检测到 4 种)
- MUST 为标题使用
text-balance,为正文使用text-pretty - SHOULD 为数值数据使用
tabular-nums - NEVER 修改字母间距,除非明确提出要求
文本样式
| 样式 | 字体 | 大小 | 粗细 | 颜色 | 数量 |
|---|---|---|---|---|---|
heading-1 | Inter | 31px | semi_bold | #3D3D3D | 1 |
heading-2 | Inter | 30px | 500 | #434B46 | 1 |
text-22px | Inter | 22px | 500 | #515152 | 1 |
text-18px | Inter | 18px | 500 | #333333 | 1 |
text-15px | Inter | 15px | 400 | #A7A7AA | 1 |
text-14px | Inter | 14px | 400 | #6D6F6E | 1 |
text-14px | Inter | 14px | 300 | #616362 | 1 |
text-14px | Inter | 14px | 400 | #909194 | 1 |
text-14px | Inter | 14px | 300 | #7A7A7B | 1 |
text-14px | Inter | 14px | 400 | #757575 | 1 |
字体排版参考
字体系列:
Inter(使用 64 次)
字号: 3px、4px、5px、6px、7px、8px、11px、13px、14px、15px、18px、22px、30px、31px
间距
- MUST 使用 4px 网格设置间距
- SHOULD 使用以下间距比例:1px、2px、3px、4px、5px、8px、12px、13px
- SHOULD 将 2px 作为元素之间的默认间距
- NEVER 使用任意间距值(使用设计比例)
- SHOULD 保持容器内边距一致
边框
- MUST 使用以下圆角比例:0px、1px、2px、3px、4px、5px、6px、7px、9px、10px、13px、15px、16px、18px、45px
- SHOULD 为药丸形元素使用 45px 或更大的圆角
- MUST 统一使用 1px 边框宽度
- SHOULD 将 3px 作为默认圆角
- NEVER 使用任意圆角值(使用设计比例)
- SHOULD 使用细边框(1px)分隔元素
圆角参考
比例: 0px、1px、2px、3px、4px、5px、6px、7px、9px、10px、13px、15px、16px、18px、45px
布局
- MUST 按 1920px 的基础视口宽度进行设计
- SHOULD 使用一致的元素宽度:14px、6px、10px、4px、21px
- NEVER 使用
h-screen,全视口高度请使用h-dvh - MUST 为固定元素遵循
safe-area-inset - SHOULD 为正方形元素使用
size-*,而非w-*+h-*
组件
按钮
| 变体 | 背景 | 文本 | 边框 | 高度 | 圆角 |
|---|---|---|---|---|---|
| Ghost | 透明 | #769E8E | 无 | - | - |
交互状态
焦点
- MUST 使用颜色为强调色(
#9266E6)的2px轮廓 - MUST 使用
2px的轮廓偏移 - NEVER 移除焦点指示器
悬停
- 按钮(主要):将背景调亮 10%
- 按钮(次要):使用
#1C4B39作为背景 - 列表项:使用
#1C4B39作为背景
禁用
- 必须使用
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