关于 tldraw-ui-skills
面向 AI Agent 的 Tldraw 风格界面设计规范,适用于轻色主题和相应设计系统。它以明确的颜色、排版、布局和交互约束指导实现。
主要功能
- 01Tldraw 风格视觉约束
- 02颜色与语义令牌规范
- 03Inter 字体与排版规范
- 04间距、边框和布局规则
- 05无障碍与交互状态要求
- 06动画和性能约束
适用场景
- 01构建 Tldraw 风格界面
- 02设计轻色主题系统
- 03统一 Inter 字体和 4px 网格的 UI
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ ihlamury/ design-skills --skill tldraw-ui-skills安装后在 Claude Code 中输入/tldraw-ui-skills确认已加载。
附带文件metadata.json
详细介绍
Tldraw UI 技能
使用 AI Agent 构建 Tldraw 风格界面时应遵循的约束。
适用场景
在以下情形中参考这些指南:
- 构建浅色模式界面
- 创建受 Tldraw 启发的设计系统
- 使用 Inter 字体和 4px 网格实现 UI
颜色
- 应为主要表面使用浅色背景
- 必须将
#E7EBEE用作页面背景(surface-base) - 必须将
#0E54F0用于主要操作和焦点状态(accent) - 应将调色板限制为 9 种不同颜色
- 必须确保文本对比度至少为 4.5:1,以满足无障碍要求
语义令牌
| 令牌 | HEX | RGB | 用途 |
|---|---|---|---|
surface-base | #E7EBEE | rgb(231,235,238) | 页面背景 |
surface-raised | #F8F9FB | rgb(248,249,251) | 卡片、模态框和凸起表面 |
surface-overlay | #0E54F0 | rgb(14,84,240) | 覆盖层、工具提示、下拉菜单 |
text-primary | #A3A4A6 | rgb(163,164,166) | 标题、正文文本 |
text-secondary | #64686B | rgb(100,104,107) | 次要、弱化文本 |
text-tertiary | #535353 | rgb(83,83,83) | 其他文本 |
border-default | #CBCCCE | rgb(203,204,206) | 细边框、分隔线 |
accent | #0E54F0 | rgb(14,84,240) | 主要操作、链接、焦点 |
排版
- 必须将
Inter用作主要字体系列 - 应统一使用单一字体系列
- 主要标题必须使用
14px/500 - 正文文本必须使用
12px/400 - 字体粗细必须限制为:常规、中等
- 标题必须使用
text-balance,正文文本必须使用text-pretty - 数值数据应使用
tabular-nums - 除非明确要求,否则绝不修改字间距
文本样式
| 样式 | 字体 | 大小 | 粗细 | 颜色 | 数量 |
|---|---|---|---|---|---|
heading-1 | Inter | 14px | 500 | #5C5C5C | 1 |
heading-2 | Inter | 13px | 500 | #4E4F51 | 1 |
heading-3 | Inter | 12px | 500 | #6A6A6A | 1 |
body | Inter | 12px | 400 | #535353 | 1 |
body-secondary | Inter | 12px | 400 | #616161 | 1 |
body-secondary | Inter | 12px | 400 | #96C4F4 | 1 |
text-10px | Inter | 10px | 400 | #A3A4A6 | 1 |
caption | Inter | 9px | 400 | #64686B | 1 |
label | Inter | 7px | 400 | #A6A7A9 | 1 |
排版参考
字体系列:
Inter(使用 9 次)
字体大小: 7px、9px、10px、12px、13px、14px
间距
- 必须使用 4px 网格设置间距
- 应使用以下刻度中的间距:1px、2px、3px、4px、5px、6px、18px、22px
- 元素之间的默认间距应为 2px
- 绝不使用任意间距值(请使用设计刻度)
- 容器内的内边距应保持一致
边框
- 必须使用以下刻度中的圆角半径:0px、3px、4px、6px、7px、9px
- 必须统一使用 1px 边框宽度
- 默认圆角半径应为 6px
- 绝不使用任意圆角半径值(请使用设计刻度)
- 应使用细边框(1px)分隔元素
圆角半径参考
刻度: 0px、3px、4px、6px、7px、9px
布局
- 必须以 1920px 为基础视口宽度进行设计
- 元素宽度应保持一致:16px、12px、96px、13px、32px
- 绝不使用
h-screen,全视口高度请使用h-dvh - 固定元素必须遵循
safe-area-inset - 正方形元素应使用
size-*,而不是w-*+h-*
检测到的布局模式
- 主要内容:宽度:1920px,高度:965px
- 主要内容:宽度:1920px,高度:593px
组件
按钮
| 变体 | 背景 | 文本 | 边框 | 高度 | 圆角 |
|---|---|---|---|---|---|
| Ghost | 透明 | #A3A4A6 | 无 | - | - |
交互状态
焦点
- 必须使用
2px描边,颜色为强调色(#0E54F0) - 必须设置
2px描边偏移 - 绝不移除焦点指示器
悬停
- 按钮(主要):背景亮度提高 10%
- 按钮(次要):使用
#F8F9FB背景 - 列表项:使用
#F8F9FB背景
禁用
- 必须使用
opacity: 0.5 - 必须使用
cursor: not-allowed
交互
- 对于具有破坏性或不可逆的操作,MUST 使用
AlertDialog - 加载状态 SHOULD 使用结构化骨架屏
- MUST 在操作发生的位置旁显示错误
- NEVER 阻止在
input或textarea元素中粘贴 - 仅包含图标的按钮 MUST 添加
aria-label
动画
- 除非明确要求,否则 NEVER 添加动画
- MUST 仅为合成器属性(
transform、opacity)添加动画 - NEVER 为布局属性(
width、height、top、left、margin、padding)添加动画 - 进入动画 SHOULD 使用
ease-out - 交互反馈 NEVER 超过
200ms - SHOULD 遵循
prefers-reduced-motion
性能
- NEVER 为大面积
blur()或backdrop-filter表面添加动画 - 仅在动画进行期间才能应用
will-change,其他时候 NEVER 应用 - NEVER 将
useEffect用于任何可通过渲染逻辑实现的功能
评论
支持 Markdown