things-ui-skills
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseThings UI Skills
Things UI设计规范
Opinionated constraints for building Things-style interfaces with AI agents.
用于构建Things风格界面的约束性设计准则(适配AI Agent)。
When to Apply
适用场景
Reference these guidelines when:
- Building light-mode interfaces
- Creating Things-inspired design systems
- Implementing UIs with Inter font and 8px grid
在以下场景中参考本准则:
- 构建浅色模式界面
- 创建受Things启发的设计系统
- 实现采用Inter字体和8px网格的UI
Colors
色彩规范
- SHOULD use light backgrounds for primary surfaces
- MUST use as page background (
#EEF2F5)surface-base - MUST use for primary actions and focus states (
#729AE0)accent - SHOULD limit color palette to 5 distinct colors
- MUST maintain text contrast ratio of at least 4.5:1 for accessibility
- 主界面应使用浅色背景
- 页面背景必须使用(对应语义标记
#EEF2F5)surface-base - 主要操作和焦点状态必须使用(对应语义标记
#729AE0)accent - 色彩调色板应限制为5种不同颜色
- 为保证可访问性,文本对比度必须至少达到4.5:1
Semantic Tokens
语义标记
| Token | HEX | RGB | Usage |
|---|---|---|---|
| #EEF2F5 | rgb(238,242,245) | Page background |
| #729AE0 | rgb(114,154,224) | Headings, body text |
| #5A5E61 | rgb(90,94,97) | Additional text |
| #2F343B | rgb(47,52,59) | Additional text |
| #729AE0 | rgb(114,154,224) | Primary actions, links, focus |
| 语义标记 | 十六进制值 | RGB值 | 用途 |
|---|---|---|---|
| #EEF2F5 | rgb(238,242,245) | 页面背景 |
| #729AE0 | rgb(114,154,224) | 标题、正文文本 |
| #5A5E61 | rgb(90,94,97) | 辅助文本 |
| #2F343B | rgb(47,52,59) | 辅助文本 |
| #729AE0 | rgb(114,154,224) | 主要操作、链接、焦点状态 |
Typography
排版规范
- MUST use as primary font family
Inter - SHOULD use single font family for consistency
- MUST use /
49pxfor primary headings700 - MUST use /
23pxfor body text400 - SHOULD reduce font weights (currently 4 detected)
- MUST use for headings and
text-balancefor body texttext-pretty - SHOULD use for numeric data
tabular-nums - NEVER modify letter-spacing unless explicitly requested
- 必须使用作为主要字体族
Inter - 为保证一致性,应使用单一字体族
- 一级标题必须使用/
49px(字号/字重)700 - 正文文本必须使用/
23px400 - 应减少字重种类(当前检测到4种)
- 标题必须使用属性,正文必须使用
text-balance属性text-pretty - 数字数据应使用属性
tabular-nums - 除非明确要求,否则绝不要修改字间距
Text Styles
文本样式
| Style | Font | Size | Weight | Color | Count |
|---|---|---|---|---|---|
| Inter | 49px | 700 | #2F343B | 1 |
| Inter | 23px | 400 | #5A5E61 | 1 |
| Inter | 20px | 500 | #729AE0 | 1 |
| Inter | 19px | semi_bold | #9298A0 | 1 |
| Inter | 14px | 400 | #9499A1 | 1 |
| Inter | 14px | 400 | #989CA4 | 1 |
| Inter | 11px | 400 | #989DA4 | 1 |
| 样式 | 字体 | 字号 | 字重 | 颜色 | 使用次数 |
|---|---|---|---|---|---|
| Inter | 49px | 700 | #2F343B | 1 |
| Inter | 23px | 400 | #5A5E61 | 1 |
| Inter | 20px | 500 | #729AE0 | 1 |
| Inter | 19px | semi_bold | #9298A0 | 1 |
| Inter | 14px | 400 | #9499A1 | 1 |
| Inter | 14px | 400 | #989CA4 | 1 |
| Inter | 11px | 400 | #989DA4 | 1 |
Typography Reference
排版参考
Font Families:
- (used 7x)
Inter
Font Sizes: 11px, 14px, 19px, 20px, 23px, 49px
字体族:
- (使用7次)
Inter
字号: 11px, 14px, 19px, 20px, 23px, 49px
Spacing
间距规范
- MUST use 8px grid for spacing
- SHOULD use spacing from scale: 72px
- SHOULD use 72px as default gap between elements
- NEVER use arbitrary spacing values (use design scale)
- SHOULD maintain consistent padding within containers
- 必须使用8px网格来定义间距
- 应使用预设间距刻度:72px
- 元素间默认间距应使用72px
- 绝不要使用任意间距值(需遵循设计刻度)
- 容器内的内边距应保持一致
Borders
边框规范
- NEVER use arbitrary border-radius values (use design scale)
- SHOULD use subtle borders (1px) for element separation
- 绝不要使用任意圆角值(需遵循设计刻度)
- 元素分隔应使用细微边框(1px)
Layout
布局规范
- MUST design for 1920px base viewport width
- SHOULD use consistent element widths: 35px, 64px
- SHOULD maintain text-heavy layout with clear hierarchy
- NEVER use , use
h-screenfor full viewport heighth-dvh - MUST respect for fixed elements
safe-area-inset - SHOULD use for square elements instead of
size-*+w-*h-*
- 必须基于1920px视口宽度进行设计
- 应使用统一的元素宽度:35px, 64px
- 应保持以文本为主的布局,层级清晰
- 绝不要使用,需使用
h-screen实现全屏高度h-dvh - 固定元素必须考虑(安全区域内边距)
safe-area-inset - 方形元素应使用属性,而非同时使用
size-*+w-*h-*
Detected Layout Patterns
已检测到的布局模式
- Main Content: width: 1920px, height: 1080px
- Main Content: width: 1920px, height: 1024px
- 主内容区:宽度1920px,高度1080px
- 主内容区:宽度1920px,高度1024px
Components
组件规范
Interactive States
交互状态
Focus
焦点状态
- MUST use outline with accent color (
2px)#729AE0 - MUST use outline-offset
2px - NEVER remove focus indicators
- 必须使用宽的
2px色(accent)外边框#729AE0 - 必须设置的外边框偏移量
2px - 绝不要移除焦点指示器
Hover
悬停状态
- Buttons (primary): lighten background by 10%
- Buttons (secondary): use background
surface-raised - List items: use background
surface-raised
- 主按钮:背景色提亮10%
- 次要按钮:使用背景
surface-raised - 列表项:使用背景
surface-raised
Disabled
禁用状态
- MUST use
opacity: 0.5 - MUST use
cursor: not-allowed
- 必须设置
opacity: 0.5 - 必须设置
cursor: not-allowed
Interaction
交互规范
- MUST use an for destructive or irreversible actions
AlertDialog - SHOULD use structural skeletons for loading states
- MUST show errors next to where the action happens
- NEVER block paste in or
inputelementstextarea - MUST add an to icon-only buttons
aria-label
- 对于破坏性或不可逆操作,必须使用组件
AlertDialog - 加载状态应使用结构化骨架屏
- 错误提示必须显示在操作发生的位置附近
- 绝不要禁止或
input元素的粘贴功能textarea - 纯图标按钮必须添加属性
aria-label
Animation
动画规范
- NEVER add animation unless it is explicitly requested
- MUST animate only compositor props (,
transform)opacity - NEVER animate layout properties (,
width,height,top,left,margin)padding - SHOULD use on entrance animations
ease-out - NEVER exceed for interaction feedback
200ms - SHOULD respect
prefers-reduced-motion
- 除非明确要求,否则绝不要添加动画
- 仅允许对合成器属性(、
transform)执行动画opacity - 绝不要对布局属性(、
width、height、top、left、margin)执行动画padding - 入场动画应使用缓动函数
ease-out - 交互反馈动画时长绝不要超过
200ms - 应遵循(减少动画偏好设置)
prefers-reduced-motion
Performance
性能规范
- NEVER animate large or
blur()surfacesbackdrop-filter - NEVER apply outside an active animation
will-change - NEVER use for anything that can be expressed as render logic
useEffect
- 绝不要对大面积区域应用或
blur()动画backdrop-filter - 仅在动画活跃期间使用属性
will-change - 任何可通过渲染逻辑实现的功能,绝不要使用
useEffect