AI UI Atlas
Mapping interface systems
给 coding agent 时可以直接复制下面这段,作为 UI 风格约束。
# Voice-First UI## UsageUse this DESIGN.md as a reusable design brief for an AI coding agent. Apply it when building a new page, restyling an existing interface, or keeping multiple screens visually consistent.## Design IntentYou are implementing an interface using the **Voice-First UI** design language. 围绕语音输入、实时转写、音量反馈和少量确认操作设计,适合驾驶、穿戴和移动场景。Treat predictability, native conventions, accessibility, and component consistency as the main design material.## Aliases- 语音优先界面- audio assistant## Category- 平台与系统## Target Platforms- 移动端## Summary围绕语音输入、实时转写、音量反馈和少量确认操作设计,适合驾驶、穿戴和移动场景。## Visual DNA- 语音波形- 大按钮- 转写反馈- 确认卡片## Best Use Cases- 语音助手- 车载交互- 会议记录- 穿戴设备## Avoid When环境嘈杂、隐私敏感,或任务需要精细编辑。## Anatomy语音状态必须强反馈;关键操作要有可视确认,避免误触发。## Color SystemUse a Seed → Map → Semantic → Alias token architecture. Components must consume named tokens instead of hard-coded colors.### Reference Palette- **reference-1** `#0f172a`- **reference-2** `#38bdf8`- **reference-3** `#a78bfa`- **reference-4** `#ffffff`- **reference-5** `#22c55e`### Seed Tokens- **colorBgBase** `#0f172a` - 页面基础背景.- **colorBgContainer** `#222a3b` - 卡片、面板与容器.- **colorFillSecondary** `#333a4a` - 次级填充与弱状态.- **colorPrimary** `#38bdf8` - 品牌主操作与选中态.- **colorTextBase** `#ffffff` - 正文、图标与高对比轮廓.### Primary Scale- **primary-1** `#ebf8fe`- **primary-2** `#d3f0fd`- **primary-3** `#b7e7fc`- **primary-4** `#98ddfb`- **primary-5** `#70cffa`- **primary-6** `#38bdf8`- **primary-7** `#33a9df`- **primary-8** `#2e95c7`- **primary-9** `#2981ae`- **primary-10** `#246a91`### Neutral Scale- **neutral-1** `#ffffff`- **neutral-2** `#f5f6f6`- **neutral-3** `#ececee`- **neutral-4** `#d9dadd`- **neutral-5** `#bcbec3`- **neutral-6** `#9a9ea6`- **neutral-7** `#747883`- **neutral-8** `#525866`- **neutral-9** `#313748`- **neutral-10** `#0f172a`### Semantic Tokens- **colorSuccess** `#22c55e` - 成功、在线、已完成.- **colorSuccessBg** `#e4f8ec` - 成功状态浅背景.- **colorWarning** `#d97706` - 警告、待确认、需关注.- **colorWarningBg** `#faefe1` - 警告状态浅背景.- **colorError** `#dc2626` - 错误、危险、阻断.- **colorErrorBg** `#fce9e9` - 错误状态浅背景.- **colorInfo** `#38bdf8` - 信息、链接、进行中.- **colorInfoBg** `#e7f7fe` - 信息状态浅背景.### Alias Tokens- **colorBgLayout** `#181f32` - 应用整体画布.- **colorBgElevated** `#454c5a` - 弹层、浮层与菜单.- **colorBgSpotlight** `#313748` - Tooltip 与强提示.- **colorBorder** `#d9dadd` - 控件与容器边框.- **colorBorderSecondary** `#ececee` - 轻分隔线.- **colorText** `#ffffff` - 一级文本.- **colorTextSecondary** `#b2b5bb` - 二级文本.- **colorTextTertiary** `#878b95` - 辅助说明.- **colorTextDisabled** `#616672` - 禁用文本.- **colorPrimaryHover** `#70cffa` - 主操作 Hover.- **colorPrimaryActive** `#33a9df` - 主操作 Active.- **colorPrimaryBorder** `#98ddfb` - 主色边框.- **colorPrimaryBg** `#ebf8fe` - 主色浅背景.- **colorLink** `#38bdf8` - 链接与可跳转文本.- **colorFocus** `#98ddfb` - 键盘焦点环.- **colorMask** `#0b111e` - Modal 遮罩基础色.Color rules:- Use the palette as design tokens, not random decorative swatches.- Keep primary text and primary actions at accessible contrast.- Use primary-1 through primary-10 for interaction states instead of inventing new brand colors.- Use semantic tokens consistently for success, warning, error, and info; pair color with iconography or text.- Map component styles to Alias Tokens so theme changes do not require component-level color edits.## Typography- Use a modern system sans-serif stack by default; only introduce a custom font when the brand direction requires it.- Headings should be confident but not ornamental; body text must remain readable across mobile and desktop.- Keep labels short, high-contrast, and aligned to the component structure.## Layout And Spacing- Use an 8px spacing base; reserve 4px for micro-gaps and 32px+ for major layout separation.- Keep cards, panels, controls, and lists dimensionally stable across responsive breakpoints.- On mobile, reduce column count before reducing legibility.- Recommended radius: 16-32px radius for major surfaces; use pill shapes only where they improve touch targets or softness.- Elevation and shadow: Use environment-tinted outer shadows and backdrop blur for elevation. Avoid closed white perimeter borders and full inset highlights that make glass look plastic; add a low-contrast same-color edge only when adjacent layers cannot separate. Contrast must come from text and component state, not blur alone.## Component Rules- Components should reinforce the primary information structure rather than introduce a separate decorative style.- Primary actions must be visually obvious and reachable; secondary actions should be quieter but still discoverable.- Cards need a clear title, supporting text or metric, state, and one obvious next action when action is expected.- Forms and filters should use familiar controls, stable dimensions, clear labels, and visible focus states.- Empty, loading, error, and success states must use the same visual language, not generic placeholders.## Interaction And Motion- Use slow, soft transitions for surface changes, highlights, and overlays.- Avoid constant background motion behind readable text.- Respect reduced-motion preferences and provide a static equivalent.## Implementation Recipe1. Start with the real user workflow and page structure; do not make a generic landing page unless explicitly requested.2. Establish layout zones first: navigation, content, controls, feedback, and primary action.3. Apply the color tokens to semantic roles: canvas, surface, text, border, accent, danger, and success.4. Build reusable components that express this style: buttons, cards, inputs, tabs, filters, modals, empty states, and status badges.5. Verify mobile and desktop breakpoints before adding decorative polish.6. Check that the final screen still communicates 语音波形, 大按钮, 转写反馈 without relying on a single color or effect.## Quality Checklist- The screen is immediately recognizable as **Voice-First UI**, not a generic Tailwind layout.- The design uses surface, spacing, typography, and component shape together; it does not rely only on colors.- Primary actions and navigation are clear on both mobile and desktop.- Text is readable, controls are stable, and content does not overlap or shift unexpectedly.- Empty, loading, hover, focus, selected, disabled, success, and error states are styled in the same language.- The implementation avoids the known failure mode: 环境嘈杂、隐私敏感,或任务需要精细编辑。## Anti-Patterns- Do not paste this palette onto an unrelated layout and call it finished.- Do not overuse decorative effects where the user needs to read, compare, or act quickly.- Do not mix this style with unrelated visual languages unless the product explicitly requires a hybrid.- Do not hide important state behind low contrast, blur, tiny text, or animation.## Keywords- voice- audio- assistant- mobile- waveform## Agent Prompt SnippetImplement the UI in the **Voice-First UI** design language. Prioritize 语音波形, 大按钮, 转写反馈. Use the color roles, typography guidance, spacing rules, component rules, and anti-patterns from this DESIGN.md as hard constraints. The result should feel purpose-built for 语音助手, 车载交互, 会议记录, while avoiding: 环境嘈杂、隐私敏感,或任务需要精细编辑。