关于 obsidian-ui-skills
obsidian-ui-skills 为 AI Agent 构建 Obsidian 风格界面提供设计约束,说明深色模式的视觉令牌和界面实现规范。
主要功能
- 01深色模式色彩令牌
- 02Inter 字体规范
- 034px 间距网格
- 04边框与布局尺度
- 05无障碍与交互规则
- 06动画和性能限制
适用场景
- 01构建 Obsidian 风格设计系统
- 02使用 AI Agent 创建深色界面
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ ihlamury/ design-skills --skill obsidian-ui-skills安装后在 Claude Code 中输入/obsidian-ui-skills确认已加载。
附带文件metadata.json
详细介绍
Obsidian UI 技能
为使用 AI Agent 构建 Obsidian 风格界面设定的设计约束。
适用场景
在以下情况下参考这些指南:
- 构建深色模式界面
- 创建受 Obsidian 启发的设计系统
- 使用 Inter 字体和 4px 网格实现 UI
颜色
- 主表面的背景 MUST 使用深色(亮度 < 20)——检测到的亮度:0
- 页面背景(
surface-base)MUST 使用#000000 - 主要操作和焦点状态(
accent)MUST 使用#6930C7 - SHOULD 减少调色板中的颜色(目前检测到 24 种颜色)
- 为确保无障碍性,文本对比度 MUST 至少达到 4.5:1
语义令牌
| 令牌 | HEX | RGB | 用途 |
|---|---|---|---|
surface-base | #000000 | rgb(0,0,0) | 页面背景 |
surface-raised | #FEFEFD | rgb(254,254,253) | 卡片、模态框、凸起表面 |
surface-overlay | #151027 | rgb(21,16,39) | 覆盖层、工具提示、下拉菜单 |
text-primary | #858585 | rgb(133,133,133) | 标题、正文文本 |
text-secondary | #3A2F66 | rgb(58,47,102) | 次要文本、弱化文本 |
text-tertiary | #555555 | rgb(85,85,85) | 补充文本 |
border-default | #2F2F2F | rgb(47,47,47) | 细微边框、分隔线 |
warning | #FEFEFD | rgb(254,254,253) | 警告状态、注意事项 |
accent | #6930C7 | rgb(105,48,199) | 主要操作、链接、焦点 |
排版
- 主要字体 MUST 使用
Inter - 为保持一致性,SHOULD 使用单一字体
- 主标题 MUST 使用
78px/700 - 正文 MUST 使用
14px/400 - SHOULD 减少字体粗细种类(目前检测到 5 种)
- 标题 MUST 使用
text-balance,正文 MUST 使用text-pretty - 数值数据 SHOULD 使用
tabular-nums - 除非明确要求,否则 NEVER 修改字间距
文本样式
| 样式 | 字体 | 大小 | 粗细 | 颜色 | 数量 |
|---|---|---|---|---|---|
heading-1 | Inter | 78px | 700 | #CDCDCD | 1 |
text-41px | Inter | 41px | 500 | #8D8D8D | 1 |
text-24px | Inter | 24px | semi_bold | #393939 | 1 |
text-20px | Inter | 20px | 400 | #695C94 | 1 |
text-19px | Inter | 19px | 500 | #939393 | 1 |
text-19px | Inter | 19px | 400 | #DDB5F8 | 1 |
text-16px | Inter | 16px | 500 | #666666 | 1 |
text-16px | Inter | 16px | semi_bold | #B8B8B8 | 1 |
body | Inter | 14px | 400 | #707070 | 1 |
body-secondary | Inter | 14px | 400 | #747474 | 1 |
排版参考
字体系列:
Inter(使用 71 次)
字体大小: 7px、8px、9px、10px、11px、12px、13px、14px、16px、19px、20px、24px、41px、78px
间距
- 间距 MUST 使用 4px 网格
- SHOULD 使用以下间距比例:1px、2px、3px、4px、5px、6px、7px、8px
- 元素之间的默认间距 SHOULD 为 2px
- NEVER 使用任意间距值(请使用设计比例)
- SHOULD 保持容器内边距一致
边框
- 边框圆角 MUST 使用以下比例:3px、4px、5px、6px、8px、11px、23px
- 胶囊形元素的圆角 SHOULD 为 23px 或更大
- 边框宽度 SHOULD 限定为:1px、2px
- 默认边框圆角 SHOULD 为 4px
- NEVER 使用任意边框圆角值(请使用设计比例)
- SHOULD 使用细微边框(1px)分隔元素
边框圆角参考
比例: 3px、4px、5px、6px、8px、11px、23px
布局
- MUST 针对 1920px 的基础视口宽度进行设计
- 元素宽度 SHOULD 保持一致:8px、11px、10px、12px、9px
- SHOULD 采用文本密集且层级清晰的布局
- NEVER 使用
h-screen,全视口高度请使用h-dvh - 固定元素 MUST 遵循
safe-area-inset - 对于正方形元素,SHOULD 使用
size-*,而不是w-*+h-*
检测到的布局模式
- 主要内容:宽度:1920px,高度:1080px
- 主要内容:宽度:1920px,高度:643px
组件
- 输入字段的高度 MUST 为
0px
按钮
| 变体 | 背景 | 文本 | 边框 | 高度 | 圆角 |
|---|---|---|---|---|---|
| 幽灵 | 透明 | #3A2F66 | 无 | - | - |
输入框
- 高度:
0px
交互状态
焦点
- MUST 使用
2px轮廓,颜色为强调色(#6930C7) - MUST 使用
2px轮廓偏移 - NEVER 移除焦点指示器
悬停
- 按钮(主要):背景颜色变亮 10%
- 按钮(次要):使用
#FEFEFD背景 - 列表项:使用
#FEFEFD背景
禁用
- MUST 使用
opacity: 0.5 - MUST 使用
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动画 - NEVER 在动画未激活时应用
will-change - NEVER 对可通过渲染逻辑表达的内容使用
useEffect
评论
支持 Markdown