AI UI Atlas
Mapping interface systems
给 coding agent 时可以直接复制下面这段,作为 UI 风格约束。
# Concrete 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 **Concrete UI** design language. 借用清水混凝土的粗糙颗粒、灰阶、硬切边和建筑网格,形成克制、工业、结构感很强的视觉语言。Treat surface, depth, light, and texture as the main carrier of brand expression.## Aliases- 混凝土界面- raw concrete surface## Category- 材质与表面## Target Platforms- PC 端## 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** `#f3f4f6`- **reference-2** `#d1d5db`- **reference-3** `#6b7280`- **reference-4** `#27272a`- **reference-5** `#f97316`### Seed Tokens- **colorBgBase** `#f3f4f6` - 页面基础背景.- **colorBgContainer** `#ecedef` - 卡片、面板与容器.- **colorFillSecondary** `#e3e4e6` - 次级填充与弱状态.- **colorPrimary** `#f97316` - 品牌主操作与选中态.- **colorTextBase** `#27272a` - 正文、图标与高对比轮廓.### Primary Scale- **primary-1** `#f4e7e0`- **primary-2** `#f4d8c5`- **primary-3** `#f5c6a5`- **primary-4** `#f6b182`- **primary-5** `#f79755`- **primary-6** `#f97316`- **primary-7** `#e06a18`- **primary-8** `#c7611b`- **primary-9** `#ad581d`- **primary-10** `#904d20`### Neutral Scale- **neutral-1** `#f3f4f6`- **neutral-2** `#ebecee`- **neutral-3** `#e3e4e6`- **neutral-4** `#d2d3d5`- **neutral-5** `#babbbd`- **neutral-6** `#9d9ea0`- **neutral-7** `#7d7d80`- **neutral-8** `#606063`- **neutral-9** `#444447`- **neutral-10** `#27272a`### Semantic Tokens- **colorSuccess** `#16a34a` - 成功、在线、已完成.- **colorSuccessBg** `#d8eae1` - 成功状态浅背景.- **colorWarning** `#f97316` - 警告、待确认、需关注.- **colorWarningBg** `#f4e5db` - 警告状态浅背景.- **colorError** `#f97316` - 错误、危险、阻断.- **colorErrorBg** `#f4e7e0` - 错误状态浅背景.- **colorInfo** `#f97316` - 信息、链接、进行中.- **colorInfoBg** `#f4e5db` - 信息状态浅背景.### Alias Tokens- **colorBgLayout** `#eff0f2` - 应用整体画布.- **colorBgElevated** `#edeef0` - 弹层、浮层与菜单.- **colorBgSpotlight** `#444447` - Tooltip 与强提示.- **colorBorder** `#d2d3d5` - 控件与容器边框.- **colorBorderSecondary** `#e3e4e6` - 轻分隔线.- **colorText** `#27272a` - 一级文本.- **colorTextSecondary** `#68696b` - 二级文本.- **colorTextTertiary** `#8d8e90` - 辅助说明.- **colorTextDisabled** `#aeaeb1` - 禁用文本.- **colorPrimaryHover** `#f79755` - 主操作 Hover.- **colorPrimaryActive** `#e06a18` - 主操作 Active.- **colorPrimaryBorder** `#f6b182` - 主色边框.- **colorPrimaryBg** `#f4e7e0` - 主色浅背景.- **colorLink** `#f97316` - 链接与可跳转文本.- **colorFocus** `#f6b182` - 键盘焦点环.- **colorMask** `#1c1c1e` - 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 strong display type for primary headings, with short lines and clear hierarchy.- Pair loud headings with readable body text; do not make every label oversized or uppercase.- Use weight and contrast deliberately: one dominant voice, one supporting voice, one utility voice.## Layout And Spacing- Use deliberate blocks and strong alignment; spacing can be bold, but it must still create a clear scan path.- Keep repeated items on a consistent grid so expressive details do not break usability.- Use larger gaps around hero or feature areas, tighter spacing inside dense controls.- Recommended radius: 0-6px radius; favor crisp edges and deliberate geometry.- Elevation and shadow: Use hard offset shadows or none; avoid soft generic card shadows.## Component Rules- Components should make the surface logic visible: panels, buttons, inputs, and overlays need consistent material treatment.- 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 snappy transitions that match the graphic attitude: quick hover lifts, hard reveals, or stepped state changes.- Do not animate every decorative element; motion should confirm action or guide attention.- Keep layout stable during interaction.## 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 **Concrete 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- concrete- industrial- architecture- gray- raw## Agent Prompt SnippetImplement the UI in the **Concrete 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: 需要温暖亲和、明亮营销、儿童教育或大量彩色状态的产品。