关于 linear-ui-skills
面向 AI Agent 的 Linear 风格界面设计规范,适用于深色界面和设计系统。规范涵盖颜色、字体、布局与交互,并包含可访问性和性能要求。
主要功能
- 01Linear 风格设计约束
- 02颜色与语义令牌
- 03Inter 字体与排版规范
- 044px 网格与布局规则
- 05交互、动画及性能要求
适用场景
- 01构建深色模式界面
- 02创建 Linear 风格设计系统
- 03使用 Inter 和 4px 网格实现 UI
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ ihlamury/ design-skills --skill linear-ui-skills安装后在 Claude Code 中输入/linear-ui-skills确认已加载。
附带文件metadata.json
详细介绍
Linear UI 技能
用于借助 AI Agent 构建 Linear 风格界面的主观约束。
适用场景
在以下情况下参考这些指南:
- 构建深色模式界面
- 创建受 Linear 启发的设计系统
- 使用 Inter 字体和 4px 网格实现 UI
颜色
- 必须为主要表面使用深色背景(亮度 < 20)——检测到的亮度:4
- 必须将
#080A0A用作页面背景(surface-base) - 建议将调色板限制为 10 种不同颜色
- 必须确保文本对比度至少为 4.5:1,以满足无障碍要求
语义令牌
| 令牌 | HEX | RGB | 用途 |
|---|---|---|---|
surface-base | #080A0A | rgb(8,10,10) | 页面背景 |
surface-raised | #D2D2D3 | rgb(210,210,211) | 卡片、模态框、凸起表面 |
surface-overlay | #E3E3E6 | rgb(227,227,230) | 覆盖层、工具提示、下拉菜单 |
text-primary | #5C5C5C | rgb(92,92,92) | 标题、正文文本 |
text-secondary | #2D2E30 | rgb(45,46,48) | 次要、弱化文本 |
text-tertiary | #444749 | rgb(68,71,73) | 其他文本 |
border-default | #B0B1B1 | rgb(176,177,177) | 浅色边框、分隔线 |
排版
- 必须使用
Inter作为主要字体系列 - 建议统一使用单一字体系列
- 主要标题必须使用
60px/700 - 正文必须使用
17px/400 - 建议减少字体粗细种类(当前检测到 4 种)
- 标题必须使用
text-balance,正文必须使用text-pretty - 数值数据建议使用
tabular-nums - 除非明确要求,否则绝不要修改字母间距
文本样式
| 样式 | 字体 | 大小 | 粗细 | 颜色 | 数量 |
|---|---|---|---|---|---|
heading-1 | Inter | 60px | 700 | #E2E4E3 | 1 |
body | Inter | 17px | 400 | #444749 | 1 |
body-secondary | Inter | 16px | 400 | #5C5C5C | 1 |
body-secondary | Inter | 15px | 500 | #2D2E30 | 1 |
text-14px | Inter | 14px | 400 | #B2B3B3 | 1 |
text-13px | Inter | 13px | 400 | #4C4C4C | 1 |
text-13px | Inter | 13px | 400 | #525355 | 1 |
text-12px | Inter | 12px | 400 | #525456 | 1 |
caption | Inter | 9px | 400 | #545557 | 1 |
label | Inter | 9px | 400 | #565759 | 1 |
排版参考
字体系列:
Inter(使用 13 次)
**字号:**9px、12px、13px、14px、15px、16px、17px、60px
间距
- 必须使用 4px 网格设置间距
- 建议使用以下比例中的间距:5px、11px、12px、13px、14px、16px、19px、20px
- 建议将 5px 作为元素间的默认间隔
- 绝不要使用任意间距值(请使用设计比例)
- 建议在容器内保持内边距一致
边框
- 必须使用以下比例中的圆角半径:6px、8px
- 必须统一使用 1px 边框宽度
- 建议将 6px 设为默认圆角半径
- 绝不要使用任意圆角半径值(请使用设计比例)
- 建议使用浅色边框(1px)分隔元素
圆角半径参考
**比例:**6px、8px
布局
- 必须以 1920px 为基础视口宽度进行设计
- 建议统一使用元素宽度:52px
- 建议采用以文本为主、层次清晰的布局
- 绝不要使用
h-screen,应使用h-dvh设置完整视口高度 - 固定元素必须遵循
safe-area-inset - 对于正方形元素,建议使用
size-*,而不是w-*+h-*
检测到的布局模式
- 主要内容:宽度:1920px,高度:1013px
- 页眉:高度:63px
组件
按钮
| 变体 | 背景 | 文本 | 边框 | 高度 | 圆角 |
|---|---|---|---|---|---|
| 幽灵 | 透明 | #5C5C5C | 无 | - | - |
交互状态
焦点
- 必须使用
2px轮廓线和强调色(#5E6AD2) - 必须使用
2px轮廓偏移 - 绝不要移除焦点指示器
悬停
- 按钮(主要):将背景调亮 10%
- 按钮(次要):使用
#D2D2D3背景 - 列表项:使用
#D2D2D3背景
禁用
- 必须使用
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