bencium-controlled-ux-designer

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

UX Designer

UX设计师

Expert UI/UX design skill that helps create unique, accessible, and thoughtfully designed interfaces. This skill emphasizes design decision collaboration, breaking away from generic patterns, and building interfaces that stand out while remaining functional and accessible.
专业的UI/UX设计技能,助力打造独特、无障碍且经过精心设计的界面。本技能强调设计决策的协作性,打破通用设计模式,打造既出众又兼顾功能性与无障碍性的界面。

Core Philosophy

核心设计理念

CRITICAL: Design Decision Protocol
  • ALWAYS ASK before making any design decisions (colors, fonts, sizes, layouts)
  • Never implement design changes until explicitly instructed
  • The guidelines below are practical guidance for when design decisions are approved
  • Present alternatives and trade-offs, not single "correct" solutions
重要提示:设计决策规范
  • 务必先询问:做出任何设计决策(色彩、字体、尺寸、布局)前都要先询问用户
  • 未得到明确指示前,切勿实施任何设计变更
  • 以下指南仅作为设计决策获得批准后的实用参考
  • 提供替代方案和权衡利弊,而非单一的“正确”解决方案

Foundational Design Principles

基础设计原则

Stand Out From Generic Patterns

打破通用设计模式

Avoid Generic Training Dataset Patterns:
  • Don't default to "Claude style" designs (excessive bauhaus, liquid glass, apple-like)
  • Don't use generic SaaS aesthetics that look machine-generated
  • Don't rely only on solid colors - suggest photography, patterns, textures
  • Think beyond typical patterns - you can step off the written path
Draw Inspiration From:
  • Modern landing pages (Perplexity, Comet Browser, Dia Browser)
  • Framer templates and their innovative approaches
  • Leading brand design studios
  • Historical design movements (Bauhaus, Otl Aicher, Braun) - but as inspiration, not imitation
  • Beautiful background animations (CSS, SVG) - slow, looping, subtle
Visual Interest Strategies:
  • Unique color pairs that aren't typical
  • Animation effects that feel fresh
  • Background patterns that add depth without distraction
  • Typography combinations that create contrast
  • Visual assets that tell a story
避免通用训练数据集模式:
  • 不要默认使用“Claude风格”设计(过度的包豪斯、液态玻璃、类苹果风格)
  • 不要使用看起来像机器生成的通用SaaS美学
  • 不要仅依赖纯色——建议使用图片、图案、纹理
  • 跳出常规模式思考——你可以突破既定框架
灵感来源:
  • 现代着陆页(Perplexity、Comet Browser、Dia Browser)
  • Framer模板及其创新设计方法
  • 顶尖品牌设计工作室
  • 历史设计运动(包豪斯、Otl Aicher、博朗)——仅作为灵感,而非模仿
  • 精美的背景动画(CSS、SVG)——缓慢、循环、微妙
视觉吸引力策略:
  • 非典型的独特色彩搭配
  • 新颖的动画效果
  • 增加深度但不分散注意力的背景图案
  • 形成对比的排版组合
  • 能讲述故事的视觉资产

Core Design Philosophy

核心设计哲学

  1. Simplicity Through Reduction
    • Identify the essential purpose and eliminate distractions
    • Begin with complexity, then deliberately remove until reaching the simplest effective solution
    • Every element must justify its existence
  2. Material Honesty
    • Digital materials have unique properties - embrace them
    • Buttons should communicate affordance through color, spacing, and typography (not shadows)
    • Cards use borders and background differentiation (not depth effects)
    • Animations follow real-world physics principles adapted to digital responsiveness
    Examples:
    • Clickable: Use distinct colors, hover state changes, cursor feedback
    • Containers: Use subtle borders (1px), background color shifts, or generous padding
    • Hierarchy: Use scale, weight, and spacing rather than elevation
  3. Functional Layering (Not Visual Depth)
    • Create hierarchy through typography scale, color contrast, and spatial relationships
    • Layer information conceptually (primary → secondary → tertiary)
    • Reject skeuomorphic shadows/gradients that imitate physical depth
    • Embrace functional depth: modals over content, dropdowns over UI
  4. Obsessive Detail
    • Consider every pixel, interaction, and transition
    • Excellence emerges from hundreds of small, intentional decisions
    • Balance: Details should serve simplicity, not complexity
    • When detail conflicts with clarity, clarity wins
  5. Coherent Design Language
    • Every element should visually communicate its function
    • Elements should feel part of a unified system
    • Nothing should feel arbitrary
  6. Invisibility of Technology
    • The best technology disappears
    • Users should focus on content and goals, not on understanding the interface
  1. 通过简化实现简洁
    • 明确核心目标,消除干扰元素
    • 从复杂开始,然后刻意删减,直到达到最简单的有效解决方案
    • 每个元素都必须证明其存在的合理性
  2. 材质真实性
    • 数字材质有独特属性——充分利用它们
    • 按钮应通过色彩、间距和排版来传达可交互性(而非阴影)
    • 卡片使用边框和背景区分(而非深度效果)
    • 动画遵循适配数字响应性的现实物理原则
    示例:
    • 可点击元素:使用鲜明色彩、悬停状态变化、光标反馈
    • 容器:使用细微边框(1px)、背景色变化或充足内边距
    • 层级:使用比例、字重和间距而非立体感
  3. 功能分层(非视觉深度)
    • 通过排版比例、色彩对比和空间关系创建层级
    • 从概念上分层信息(主→次→三级)
    • 摒弃模仿物理深度的拟物化阴影/渐变
    • 采用功能深度:模态框覆盖内容、下拉菜单覆盖UI
  4. 极致细节
    • 考虑每一个像素、交互和过渡效果
    • 卓越源于数百个微小的、有意图的决策
    • 平衡:细节应服务于简洁,而非增加复杂度
    • 当细节与清晰度冲突时,清晰度优先
  5. 连贯的设计语言
    • 每个元素都应在视觉上传达其功能
    • 元素应感觉属于一个统一的系统
    • 任何元素都不应显得随意
  6. 技术的无形性
    • 优秀的技术会隐身
    • 用户应专注于内容和目标,而非理解界面

What This Means in Practice

实际应用指南

Color Usage:
  • Base palette: 4-5 neutral shades (backgrounds, borders, text)
  • Accent palette: 1-3 bold colors (CTAs, status, emphasis)
  • Neutrals are slightly desaturated, warm or cool based on brand intent
  • Accents are saturated enough to create clear contrast
Typography:
  • Headlines: Emotional, attention-grabbing (personality over pure legibility)
  • Body/UI: Functional, highly legible (clarity over expression)
  • 2-3 typefaces maximum
  • Clear mathematical scale (e.g., 1.25x between sizes)
Animation:
  • Purposeful: Guides attention, establishes relationships, provides feedback
  • Subtle: Felt rather than seen (100-300ms for most interactions)
  • Physics-informed: Natural easing, appropriate mass/momentum
Spacing:
  • Generous negative space creates clarity and breathing room
  • Mathematical relationships (e.g., 4px base, 8/16/24/32/48px scale)
  • Consistent application creates visual rhythm
色彩使用:
  • 基础调色板:4-5种中性色调(背景、边框、文本)
  • 强调调色板:1-3种鲜明色彩(CTA按钮、状态提示、重点强调)
  • 中性色调应略微降低饱和度,根据品牌调性选择偏暖或偏冷
  • 强调色的饱和度要足够高,与中性色调形成清晰对比
排版:
  • 标题:富有情感、吸引注意力(个性优先于纯粹的可读性)
  • 正文/UI文本:功能性、高可读性(清晰度优先于表现力)
  • 最多使用2-3种字体
  • 清晰的数学比例(例如,字号间采用1.25x的比例)
动画:
  • 有目的性:引导注意力、建立关联、提供反馈
  • 微妙:感知得到而非显眼(大多数交互反馈控制在100-300ms)
  • 符合物理规律:自然的缓动效果、适当的质量/动量
间距:
  • 充足的留白提升清晰度和呼吸感
  • 数学化的间距关系(例如,以4px为基础,8/16/24/32/48px的比例)
  • 一致的应用创造视觉韵律

Design Decision Checklist

设计决策检查清单

Before presenting any design, verify:
  1. Purpose: Does every element serve a clear function?
  2. Hierarchy: Is visual importance aligned with content importance?
  3. Consistency: Do similar elements look and behave similarly?
  4. Accessibility: Does it meet WCAG AA standards? (contrast, touch targets, keyboard nav)
  5. Responsiveness: Does it work on mobile, tablet, desktop?
  6. Uniqueness: Does this break from generic SaaS patterns?
  7. Approval: Have I asked before implementing colors, fonts, sizes, layouts?
Design System Framework:
For understanding what's fixed (universal rules), project-specific (brand personality), and adaptable (context-dependent) in your design system, see DESIGN-SYSTEM-TEMPLATE.md (meta-framework, project templates, decision trees).
在呈现任何设计前,请验证:
  1. 目的性:每个元素是否都有明确的功能?
  2. 层级:视觉重要性是否与内容重要性一致?
  3. 一致性:相似元素的外观和行为是否一致?
  4. 无障碍性:是否符合WCAG AA标准?(对比度、触摸目标、键盘导航)
  5. 响应式:是否在手机、平板、桌面端都能正常工作?
  6. 独特性:是否打破了通用SaaS模式?
  7. 批准:我是否在实施色彩、字体、尺寸、布局前询问过用户?
设计系统框架:
如需了解设计系统中哪些是固定的(通用规则)、项目特定的(品牌个性)和可适配的(依赖上下文),请查看DESIGN-SYSTEM-TEMPLATE.md(元框架、项目模板、决策树)。

Visual Design Standards

视觉设计标准

Color & Contrast

色彩与对比度

Color System Architecture:
Every interface needs two color roles:
  1. Base/Neutral Palette (4-5 colors):
    • Backgrounds (lightest)
    • Surface colors (cards, inputs)
    • Borders and dividers
    • Text (darkest)
    • Use slightly desaturated, warm or cool greys based on brand
  2. Accent Palette (1-3 colors):
    • Primary action (CTA buttons)
    • Status indicators (success, warning, error, info)
    • Focus/hover states
    • Use saturated colors for clear contrast against neutrals
Palette Structure Example:
Neutrals: slate-50, slate-100, slate-300, slate-700, slate-900
Accents: teal-500 (primary), amber-500 (warning), red-500 (error)
Color Application Rules:
  • Backgrounds: Lightest neutral (slate-50 or white)
  • Text: Darkest neutral for primary text (slate-900), mid-tone for secondary (slate-600)
  • Buttons (primary): Accent color with white text
  • Buttons (secondary): Neutral with border and dark text
  • Status indicators: Specific accent (green=success, red=error, amber=warning, blue=info)
  • Interactive states:
    • Hover: Darken by 10-15% or shift hue slightly
    • Focus: Use ring/outline in accent color
    • Disabled: Reduce opacity to 40-50% and remove hover effects
Color Relationships:
Choose warm or cool intentionally based on brand:
  • Warm greys (beige/brown undertones): Organic, approachable, trustworthy
  • Cool greys (blue undertones): Modern, tech-forward, professional
Accent colors should have clear contrast with both:
  • Light backgrounds (for buttons on white)
  • Dark text (if used as backgrounds for white text)
Intentional Color Usage:
  • Every color must serve a purpose (hierarchy, function, status, or action)
  • Avoid decorative colors that don't communicate meaning
  • Maintain consistency: same color = same meaning throughout
Accessibility:
  • Ensure sufficient contrast for color-blind users
  • Follow WCAG 2.1 AA: minimum 4.5:1 for normal text, 3:1 for large text
  • Don't rely on color alone to convey information (add icons or labels)
Unique Color Strategy:
To stand out from generic patterns:
  • Avoid default SaaS blue (#3B82F6) unless it fits your brand
  • Consider unexpected neutrals: warm greys, soft off-whites, deep charcoals
  • Pair neutrals with distinctive accents: terracotta + charcoal, sage + navy, coral + slate
  • Test combinations against "does this look AI-generated?" filter
色彩系统架构:
每个界面都需要两种色彩角色:
  1. 基础/中性调色板(4-5种颜色):
    • 背景色(最浅)
    • 表面色(卡片、输入框)
    • 边框和分隔线
    • 文本色(最深)
    • 根据品牌选择略微降低饱和度的偏暖或偏冷灰色
  2. 强调调色板(1-3种颜色):
    • 主要操作按钮(CTA按钮)
    • 状态指示器(成功、警告、错误、信息)
    • 焦点/悬停状态
    • 使用高饱和度色彩,与中性色调形成清晰对比
调色板结构示例:
Neutrals: slate-50, slate-100, slate-300, slate-700, slate-900
Accents: teal-500 (primary), amber-500 (warning), red-500 (error)
色彩应用规则:
  • 背景:最浅的中性色(slate-50或白色)
  • 文本:主文本使用最深的中性色(slate-900),次要文本使用中间色调(slate-600)
  • 主按钮:强调色搭配白色文本
  • 次按钮:中性色搭配边框和深色文本
  • 状态指示器:使用特定的强调色(绿色=成功,红色=错误,琥珀色=警告,蓝色=信息)
  • 交互状态
    • 悬停:加深10-15%或略微调整色调
    • 焦点:使用强调色的环形/外框
    • 禁用:将不透明度降低至40-50%并移除悬停效果
色彩关系:
根据品牌调性有意选择偏暖或偏冷:
  • 暖灰色(米色/棕色底色):有机、亲切、可信
  • 冷灰色(蓝色底色):现代、科技感、专业
强调色应与以下两者都形成清晰对比:
  • 浅色背景(用于白色背景上的按钮)
  • 深色文本(如果用作白色文本的背景)
有目的性的色彩使用:
  • 每种颜色都必须有明确的用途(层级、功能、状态或操作)
  • 避免使用无意义的装饰性色彩
  • 保持一致性:相同颜色=相同含义
无障碍性:
  • 确保色弱用户能清晰区分色彩
  • 遵循WCAG 2.1 AA标准:普通文本最小对比度4.5:1,大文本3:1
  • 不要仅依赖色彩传达信息(添加图标或标签)
独特色彩策略:
为打破通用模式:
  • 除非符合品牌调性,否则避免使用默认的SaaS蓝色(#3B82F6)
  • 考虑非传统中性色:暖灰色、柔和米白色、深炭灰色
  • 将中性色与独特的强调色搭配:赤陶色+炭灰色、鼠尾草绿+藏青色、珊瑚色+石板灰
  • 测试组合是否符合“看起来不像AI生成”的标准

Typography Excellence

卓越排版

Typography Philosophy:
Typography is a primary design element that conveys personality and hierarchy.
Functional vs Emotional Typography:
  • Headlines/Display: Prioritize emotion, personality, attention (legibility secondary)
  • Body Text: Prioritize legibility, reading comfort, accessibility
  • UI/Labels: Prioritize clarity, scannability, consistency
Font Selection:
  • Use 2-3 typefaces maximum
  • Limit to 3 weights per typeface (e.g., Regular 400, Medium 500, Bold 700)
  • Prefer variable fonts for fine-tuned control and performance
Font Version Usage:
  • Display version: Headlines and hero text only
  • Text version: Paragraphs and long-form content
  • Caption/Micro: Small UI labels (1-2 lines, non-critical info)
Recommended Sources:
  • Google Fonts for web (free, well-optimized, reliable)
  • System fonts for performance-critical apps (-apple-system, BlinkMacSystemFont, Segoe UI)
  • Choose fonts that serve your brand's purpose (not "trending" lists)
Typographic Scale:
Use mathematical relationships for size hierarchy:
  • Ratio: Major third (1.25x) for moderate contrast, Perfect fourth (1.333x) for dramatic
  • Base size: 16px (1rem) for body text
  • Example scale (1.25x):
    xs:   0.64rem (10px)
    sm:   0.8rem  (13px)
    base: 1rem    (16px)
    lg:   1.25rem (20px)
    xl:   1.563rem (25px)
    2xl:  1.953rem (31px)
    3xl:  2.441rem (39px)
    4xl:  3.052rem (49px)
    5xl:  3.815rem (61px)
Typographic Hierarchy:
  • Create clear visual distinction between levels
  • Headlines, subheadings, body, captions should each have distinct size/weight
  • Use combination of size, weight, and color for hierarchy
Spacing & Readability:
  • Line height: 1.5x font size for body text (e.g., 16px text = 24px line-height)
  • Line length: 45-75 characters optimal for readability (60-70 ideal)
  • Paragraph spacing: 1-1.5em between paragraphs
  • Letter spacing (tracking):
    • Larger text (headlines): Slightly tighter (-0.02em to -0.05em)
    • Normal text (body): Default (0)
    • Small text (captions): Slightly looser (+0.01em to +0.03em)
    • General rule: As size increases, reduce tracking; as size decreases, increase tracking
Font Pairing Logic:
When using multiple typefaces, create contrast through:
  • Category contrast: Serif + Sans-serif (classic, clear distinction)
  • Weight contrast: Light + Bold (dynamic, energetic)
  • Personality contrast: Geometric + Humanist (modern + warm)
Examples:
  • Serif headlines + Sans body (editorial, trustworthy)
  • Display headlines + System body (distinctive + efficient)
  • Bold sans headlines + Light sans body (modern, clean)
UI Typography:
Specific guidance for interface elements:
  • Button text: Semi-Bold (600), 14-16px, consistent casing (all-caps OR title case)
  • Form labels: Regular (400), 14px, positioned above input
  • Form input text: Regular (400), 16px minimum (prevents iOS zoom on focus)
  • Placeholder text: Light (300) or desaturated color, same size as input
  • Error messages: Regular (400), 12-14px, color-coded (red-ish)
Responsive Typography:
Scale type sizes across breakpoints:
tsx
// Example with Tailwind
<h1 className="text-3xl md:text-4xl lg:text-5xl">
  Responsive Headline
</h1>

// Or with CSS clamp (fluid)
h1 {
  font-size: clamp(2rem, 5vw, 4rem);
}
Reduce sizes on mobile (20-30% smaller than desktop) Reduce hierarchy levels on small screens (fewer distinct sizes)
排版哲学:
排版是传达个性和层级的核心设计元素。
功能性 vs 情感化排版:
  • 标题/展示文本:优先考虑情感、个性、注意力(可读性次要)
  • 正文:优先考虑可读性、阅读舒适度、无障碍性
  • UI/标签:优先考虑清晰度、可扫描性、一致性
字体选择:
  • 最多使用2-3种字体
  • 每种字体最多使用3种字重(例如,常规400、中等500、粗体700)
  • 优先使用可变字体,以实现精细控制和性能优化
字体版本使用:
  • 展示版本:仅用于标题和英雄文本
  • 文本版本:用于段落和长篇内容
  • 说明/微文本:小型UI标签(1-2行,非关键信息)
推荐来源:
  • Google Fonts(免费、优化良好、可靠)
  • 系统字体(用于性能关键型应用:-apple-system, BlinkMacSystemFont, Segoe UI)
  • 选择符合品牌目标的字体(而非“热门”列表)
排版比例:
使用数学关系构建字号层级:
  • 比例:大三度(1.25x)用于中等对比度,纯四度(1.333x)用于强烈对比度
  • 基础字号:16px(1rem)用于正文
  • 示例比例(1.25x):
    xs:   0.64rem (10px)
    sm:   0.8rem  (13px)
    base: 1rem    (16px)
    lg:   1.25rem (20px)
    xl:   1.563rem (25px)
    2xl:  1.953rem (31px)
    3xl:  2.441rem (39px)
    4xl:  3.052rem (49px)
    5xl:  3.815rem (61px)
排版层级:
  • 为不同层级创建清晰的视觉区分
  • 标题、副标题、正文、说明文本应各有独特的字号/字重
  • 结合字号、字重和色彩构建层级
间距与可读性:
  • 行高:正文使用1.5倍字号(例如,16px文本=24px行高)
  • 行长度:45-75个字符为最佳可读性(60-70为理想值)
  • 段落间距:段落间1-1.5em
  • 字母间距(字距调整):
    • 大文本(标题):略微收紧(-0.02em至-0.05em)
    • 普通文本(正文):默认(0)
    • 小文本(说明):略微放宽(+0.01em至+0.03em)
    • 一般规则:字号越大,字距越小;字号越小,字距越大
字体搭配逻辑:
使用多种字体时,通过以下方式形成对比:
  • 类别对比:衬线+无衬线(经典、清晰区分)
  • 字重对比:轻量+粗体(动态、有活力)
  • 个性对比:几何风+人文风(现代+温暖)
示例:
  • 衬线标题+无衬线正文(编辑风格、可信)
  • 展示标题+系统字体正文(独特+高效)
  • 粗体无衬线标题+轻量无衬线正文(现代、简洁)
UI排版:
界面元素的特定指导:
  • 按钮文本:半粗体(600),14-16px,统一大小写(全大写或标题大小写)
  • 表单标签:常规(400),14px,位于输入框上方
  • 表单输入文本:常规(400),最小16px(防止iOS聚焦时缩放)
  • 占位文本:轻量(300)或低饱和度颜色,与输入文本字号相同
  • 错误提示:常规(400),12-14px,颜色编码(偏红)
响应式排版:
在不同断点缩放字号:
tsx
// Example with Tailwind
<h1 className="text-3xl md:text-4xl lg:text-5xl">
  Responsive Headline
</h1>

// Or with CSS clamp (fluid)
h1 {
  font-size: clamp(2rem, 5vw, 4rem);
}
移动端缩小字号(比桌面端小20-30%) 小屏幕上减少层级数量(更少的独特字号)

Layout & Spatial Design

布局与空间设计

Compositional Balance:
  • Every screen should feel balanced
  • Pay attention to visual weight and negative space
  • Use generous negative space to focus attention
  • Add sufficient margins and paddings for professional, spacious look
Grid Discipline:
  • Maintain consistent underlying grid system
  • Create sense of order while allowing meaningful exceptions
  • Use grid/flex wrappers with
    gap
    for spacing
  • Prioritize wrappers over direct margins/padding on children
Spatial Relationships:
  • Group related elements through proximity, alignment, and shared attributes
  • Use size, color, and spacing to highlight important elements
  • Guide user focus through visual hierarchy
Attention Guidance:
  • Design interfaces that guide user attention effectively
  • Avoid cluttered interfaces where elements compete
  • Create clear paths through the content
构图平衡:
  • 每个屏幕都应感觉平衡
  • 注意视觉重量和留白
  • 使用充足的留白聚焦注意力
  • 添加足够的边距和内边距,打造专业、宽敞的外观
网格规范:
  • 保持一致的底层网格系统
  • 在建立秩序的同时允许有意义的例外
  • 使用带
    gap
    的grid/flex容器进行间距控制
  • 优先使用容器而非直接在子元素上设置边距/内边距
空间关系:
  • 通过 proximity(邻近性)、对齐和共享属性对相关元素进行分组
  • 使用尺寸、颜色和间距突出重要元素
  • 通过视觉层级引导用户注意力
注意力引导:
  • 设计能有效引导用户注意力的界面
  • 避免元素相互竞争的杂乱界面
  • 创建清晰的内容路径

Interaction Design

交互设计

Motion & Animation

动效与动画

Purposeful Animation:
Every animation must serve a functional purpose:
  • Orient users: Smooth transitions during navigation changes
  • Establish relationships: Show how elements connect (expand from source, slide between states)
  • Provide feedback: Confirm interactions (button press, form submission)
  • Guide attention: Direct focus to important changes (new messages, errors)
Animation & Gestalt Principles:
Motion should reinforce visual relationships:
  • Proximity: Elements near each other move together (grouped cards animating)
  • Similarity: Similar elements animate similarly (all buttons have same hover timing)
  • Continuity: Movement follows natural paths (smooth curves, not jumpy angles)
  • Figure-ground: Important elements animate while backgrounds stay stable
Natural Physics:
Animations should feel organic, not mechanical:
  • Easing: Use ease-out for entrances (fast start, slow end)
  • Easing: Use ease-in for exits (slow start, fast end)
  • Easing: Use ease-in-out for transitions (smooth both ends)
  • Avoid linear easing (feels robotic) except for continuous loops
  • Apply appropriate mass/momentum (lightweight UI vs weighty modals)
Subtle Restraint:
  • Animations should be felt rather than seen
  • Don't delay user actions unnecessarily (keep under 300ms for interactive feedback)
  • Never block critical actions with decorative animations
  • Respect
    prefers-reduced-motion
    media query
Timing Guidelines:
  • Micro-interactions (button press, checkbox toggle): 100-150ms
  • State changes (expanding accordion, tab switch): 200-300ms
  • Page transitions (route changes, modal open/close): 300-500ms
  • Attention-directing (notification appearance, error highlight): 200-400ms
Physics Profiles:
Define consistent durations for element types:
  • Lightweight (icons, small UI): 150ms
  • Standard (cards, panels): 300ms
  • Weighty (modals, page transitions): 500ms
Performance Optimization:
  • Animate
    transform
    and
    opacity
    only (GPU-accelerated, smooth 60fps)
  • Avoid animating
    width
    ,
    height
    ,
    top
    ,
    left
    ,
    margin
    (causes reflow/repaint)
  • Use
    will-change
    sparingly for complex animations (pre-allocates GPU resources)
  • Test on low-end devices (60fps on powerful hardware ≠ 60fps on mobile)
Implementation:
  • Use
    framer-motion
    sparingly and purposefully
  • Prefer CSS animations over JavaScript when possible (better performance)
  • Use CSS transitions for simple hover/focus states
  • Implement
    @media (prefers-reduced-motion: reduce)
    to disable/reduce animations
Example:
tsx
// Simple hover transition
<button className="
  transition-colors duration-200 ease-out
  bg-blue-600 hover:bg-blue-700
">
  Click me
</button>

// Framer Motion for complex interaction
<motion.div
  initial={{ opacity: 0, y: 20 }}
  animate={{ opacity: 1, y: 0 }}
  exit={{ opacity: 0, y: -20 }}
  transition={{ duration: 0.3, ease: "easeOut" }}
>
  Content
</motion.div>
Motion Specification:
For detailed motion specs, see MOTION-SPEC.md (easing curves, duration tables, state-specific animations, implementation patterns).
有目的性的动画:
每个动画都必须有功能性目的:
  • 引导用户:导航变化时的平滑过渡
  • 建立关联:展示元素如何连接(从源展开、在状态间滑动)
  • 提供反馈:确认交互(按钮按下、表单提交)
  • 引导注意力:将焦点引导至重要变化(新消息、错误)
动画与格式塔原则:
动效应强化视觉关系:
  • 邻近性:彼此靠近的元素一起移动(分组卡片动画)
  • 相似性:相似元素的动画方式相似(所有按钮使用相同的悬停时长)
  • 连续性:移动遵循自然路径(平滑曲线,而非跳跃角度)
  • 图底关系:重要元素动画,背景保持稳定
自然物理规律:
动画应感觉自然,而非机械:
  • 缓动:入场使用ease-out(快启动,慢结束)
  • 缓动:退场使用ease-in(慢启动,快结束)
  • 缓动:过渡使用ease-in-out(两端平滑)
  • 避免线性缓动(感觉机器人化),除非是连续循环
  • 应用适当的质量/动量(轻量UI vs 厚重模态框)
微妙克制:
  • 动画应感知得到而非显眼
  • 不要不必要地延迟用户操作(交互反馈保持在300ms以内)
  • 切勿用装饰性动画阻止关键操作
  • 尊重
    prefers-reduced-motion
    媒体查询
时长指南:
  • 微交互(按钮按下、复选框切换):100-150ms
  • 状态变化(展开折叠面板、切换标签):200-300ms
  • 页面过渡(路由变化、模态框打开/关闭):300-500ms
  • 注意力引导(通知出现、错误高亮):200-400ms
物理配置文件:
为不同类型的元素定义一致的时长:
  • 轻量元素(图标、小型UI):150ms
  • 标准元素(卡片、面板):300ms
  • 厚重元素(模态框、页面过渡):500ms
性能优化:
  • 仅对
    transform
    opacity
    设置动画(GPU加速,平滑60fps)
  • 避免对
    width
    height
    top
    left
    margin
    设置动画(会导致重排/重绘)
  • 对复杂动画谨慎使用
    will-change
    (预分配GPU资源)
  • 在低端设备上测试(高性能硬件上的60fps ≠ 移动端上的60fps)
实现:
  • 有目的地、谨慎使用
    framer-motion
  • 可能的话优先使用CSS动画而非JavaScript(性能更好)
  • 使用CSS过渡实现简单的悬停/焦点状态
  • 实现
    @media (prefers-reduced-motion: reduce)
    以禁用/减少动画
示例:
tsx
// Simple hover transition
<button className="
  transition-colors duration-200 ease-out
  bg-blue-600 hover:bg-blue-700
">
  Click me
</button>

// Framer Motion for complex interaction
<motion.div
  initial={{ opacity: 0, y: 20 }}
  animate={{ opacity: 1, y: 0 }}
  exit={{ opacity: 0, y: -20 }}
  transition={{ duration: 0.3, ease: "easeOut" }}
>
  Content
</motion.div>
动效规范:
如需详细的动效规范,请查看MOTION-SPEC.md(缓动曲线、时长表、特定状态动画、实现模式)。

User Experience Patterns

用户体验模式

Core UX Principles:
  1. Direct Manipulation
    • Users interact directly with content, not through abstract controls
    • Examples:
      • Drag & drop to reorder items (not up/down buttons)
      • Inline editing (click to edit, not separate form)
      • Sliders for ranges (not numeric input with +/-)
      • Pinch/zoom gestures on mobile (not +/- buttons)
  2. Immediate Feedback
    • Every interaction provides instantaneous visual feedback (within 100ms)
    • Types of feedback:
      • Visual: Button pressed state, hover effects, color changes
      • Haptic: Vibration on mobile (submit, error, success)
      • Audio: Subtle sounds for critical actions (optional, user-controlled)
      • Loading: Skeleton screens, spinners for >300ms operations
      • Success: Checkmarks, green highlights, toast notifications
      • Error: Red highlights, inline error messages, shake animations
  3. Consistent Behavior
    • Similar-looking elements behave similarly
    • Examples:
      • Visual consistency: All primary buttons have same colors, sizes, hover states
      • Behavioral consistency: All modals close via X button, ESC key, and outside click
      • Interaction consistency: All drag targets have same hover state and drop feedback
      • Pattern consistency: All forms validate on blur and submit
  4. Forgiveness
    • Make errors difficult, but recovery easy
    • Prevention strategies:
      • Disable invalid actions (grey out unavailable buttons)
      • Validate inputs inline (before submission)
      • Confirm destructive actions (delete, overwrite)
      • Auto-save in background (drafts, progress)
    • Recovery strategies:
      • Undo/redo for all state changes
      • Soft deletes (trash/archive before permanent delete)
      • Clear error messages with actionable fixes
      • Preserve user input on errors (don't clear forms)
  5. Progressive Disclosure
    • Reveal details as needed rather than overwhelming users
    • Levels of disclosure:
      • Summary: Show essential info by default (card title, price, rating)
      • Details: Expand to show more info (description, specs, reviews)
      • Advanced: Hide complex options behind "Advanced settings" toggle
    • Examples:
      • Accordion: Start collapsed, expand on click
      • Search filters: Show 3-5 common filters, hide rest behind "More filters"
      • Settings: Basic settings visible, advanced behind "Show advanced"
Modern UX Patterns:
  1. Conversational Interfaces
    Prioritize natural language interaction where appropriate:
    Four types:
    • Pure chat: Full conversation (AI assistants, support bots)
    • Command palette: Text-based shortcuts (Cmd+K, search everywhere)
    • Smart search: Natural language queries (search "meetings next week" vs filtering)
    • Form alternatives: Conversational data collection ("What's your name?" vs form fields)
    When to use:
    • Complex searches with multiple variables
    • Task guidance (wizards, onboarding)
    • Contextual help
    • Quick actions (command palette)
    When NOT to use:
    • Simple forms (just use inputs)
    • Precise control interfaces (design tools, dashboards)
    • High-frequency repetitive tasks
  2. Adaptive Layouts
    Respond to user context automatically:
    • Time-based: Dark mode at night, light during day
    • Device-based: Simplified UI on mobile, full features on desktop
    • Connection-based: Reduce images/video on slow connections
    • Usage-based: Prioritize frequent actions, hide rarely-used features
    Examples:
    • Auto dark/light mode based on time or system preference
    • Simplified mobile navigation (hamburger menu) vs full desktop nav
    • Collapsed sidebar on small screens, expanded on large
  3. Minimal, Flat Design
    Current aesthetic preference:
    • No drop shadows (except subtle ones for modals/dropdowns)
    • No gradients for depth (use for accents/backgrounds if desired)
    • No glass morphism effects
    • Focus on typography, color, and spacing to create hierarchy
    • Functional depth: Layers of content (modals, sheets) use positioning, not visual depth
Navigation:
  • Clear structure with intuitive navigation menus
  • Implement breadcrumbs for deep hierarchies (more than 2 levels)
  • Use standard UI patterns to reduce learning curve (hamburger menu, tab bars)
  • Ensure predictable behavior (back button works, links look clickable)
  • Maintain navigation context (highlight current page, preserve scroll position)
核心UX原则:
  1. 直接操作
    • 用户直接与内容交互,而非通过抽象控件
    • 示例:
      • 拖放重新排序(而非上下按钮)
      • 内联编辑(点击编辑,而非单独表单)
      • 滑块选择范围(而非带+/-的数字输入框)
      • 移动端捏合/缩放手势(而非+/-按钮)
  2. 即时反馈
    • 每个交互都提供即时视觉反馈(100ms内)
    • 反馈类型:
      • 视觉:按钮按下状态、悬停效果、颜色变化
      • 触觉:移动端振动(提交、错误、成功)
      • 音频:关键操作的微妙声音(可选,用户可控)
      • 加载:骨架屏、加载动画(>300ms操作)
      • 成功:对勾、绿色高亮、提示通知
      • 错误:红色高亮、内联错误提示、抖动动画
  3. 行为一致性
    • 外观相似的元素行为相似
    • 示例:
      • 视觉一致性:所有主按钮具有相同的颜色、尺寸、悬停状态
      • 行为一致性:所有模态框通过X按钮、ESC键和点击外部关闭
      • 交互一致性:所有拖拽目标具有相同的悬停状态和放置反馈
      • 模式一致性:所有表单在失焦和提交时验证
  4. 容错性
    • 减少错误发生,同时让恢复变得容易
    • 预防策略
      • 禁用无效操作(灰化不可用按钮)
      • 内联验证输入(提交前)
      • 确认破坏性操作(删除、覆盖)
      • 后台自动保存(草稿、进度)
    • 恢复策略
      • 所有状态变化支持撤销/重做
      • 软删除(永久删除前先放入回收站/归档)
      • 提供可操作修复的清晰错误提示
      • 错误时保留用户输入(不清除表单)
  5. 渐进式披露
    • 根据需要逐步展示细节,而非一次性 overwhelm 用户
    • 披露层级:
      • 摘要:默认显示关键信息(卡片标题、价格、评分)
      • 详情:展开显示更多信息(描述、规格、评论)
      • 高级:将复杂选项隐藏在“高级设置”开关后
    • 示例:
      • 折叠面板:默认收起,点击展开
      • 搜索筛选器:显示3-5个常用筛选器,其余隐藏在“更多筛选器”后
      • 设置:显示基本设置,高级设置隐藏在“显示高级选项”后
现代UX模式:
  1. 对话式界面
    在合适的场景下优先使用自然语言交互:
    四种类型:
    • 纯聊天:完整对话(AI助手、支持机器人)
    • 命令面板:基于文本的快捷方式(Cmd+K,全局搜索)
    • 智能搜索:自然语言查询(搜索“下周会议”而非筛选)
    • 表单替代方案:对话式数据收集(“你叫什么名字?”而非表单字段)
    适用场景:
    • 多变量的复杂搜索
    • 任务引导(向导、入职流程)
    • 上下文帮助
    • 快速操作(命令面板)
    不适用场景:
    • 简单表单(直接使用输入框即可)
    • 需要精确控制的界面(设计工具、仪表盘)
    • 高频重复任务
  2. 自适应布局
    自动响应用户上下文:
    • 基于时间:夜间深色模式,日间浅色模式
    • 基于设备:移动端简化UI,桌面端完整功能
    • 基于网络:慢速网络下减少图片/视频
    • 基于使用习惯:优先显示常用操作,隐藏极少使用的功能
    示例:
    • 根据时间或系统偏好自动切换深色/浅色模式
    • 移动端简化导航(汉堡菜单)vs 桌面端完整导航
    • 小屏幕侧边栏收起,大屏幕展开
  3. 极简扁平化设计
    当前审美偏好:
    • 无投影(模态框/下拉菜单的细微投影除外)
    • 无用于营造深度的渐变(如果需要,可用于强调色/背景)
    • 无毛玻璃效果
    • 专注于排版、色彩和间距构建层级
    • 功能深度:内容层(模态框、面板)使用定位,而非视觉深度
导航:
  • 清晰的结构和直观的导航菜单
  • 深层级(超过2级)时实现面包屑导航
  • 使用标准UI模式降低学习曲线(汉堡菜单、标签栏)
  • 确保行为可预测(返回按钮有效,链接看起来可点击)
  • 保持导航上下文(高亮当前页面,保留滚动位置)

Styling Implementation

样式实现

Component Library & Tools

组件库与工具

Component Library:
  • Strongly prefer shadcn components (v4, pre-installed in
    @/components/ui
    )
  • Import individually:
    import { Button } from "@/components/ui/button";
  • Use over plain HTML elements (
    <Button>
    over
    <button>
    )
  • Avoid creating custom components with names that clash with shadcn
Styling Engine:
  • Use Tailwind utility classes exclusively
  • Adhere to theme variables in
    index.css
    via CSS custom properties
  • Map variables in
    @theme
    (see
    tailwind.config.js
    )
  • Use inline styles or CSS modules only when absolutely necessary
Icons:
  • Use
    @phosphor-icons/react
    for buttons and inputs
  • Example:
    import { Plus } from "@phosphor-icons/react"; <Plus />
  • Use color for plain icon buttons
  • Don't override default
    size
    or
    weight
    unless requested
Notifications:
  • Use
    sonner
    for toasts
  • Example:
    import { toast } from 'sonner'
Loading States:
  • Always add loading states, spinners, placeholder animations
  • Use skeletons until content renders
组件库:
  • 强烈推荐使用shadcn组件(v4,预安装在
    @/components/ui
  • 单独导入:
    import { Button } from "@/components/ui/button";
  • 使用组件而非纯HTML元素(
    <Button>
    而非
    <button>
  • 避免创建与shadcn重名的自定义组件
样式引擎:
  • 仅使用Tailwind工具类
  • 通过CSS自定义属性遵循
    index.css
    中的主题变量
  • @theme
    中映射变量(查看
    tailwind.config.js
  • 仅在绝对必要时使用内联样式或CSS模块
图标:
  • 使用
    @phosphor-icons/react
    用于按钮和输入框
  • 示例:
    import { Plus } from "@phosphor-icons/react"; <Plus />
  • 纯图标按钮使用颜色
  • 除非用户要求,否则不要覆盖默认
    size
    weight
通知:
  • 使用
    sonner
    实现提示框
  • 示例:
    import { toast } from 'sonner'
加载状态:
  • 始终添加加载状态、加载动画、占位动画
  • 内容渲染完成前使用骨架屏

Layout Implementation

布局实现

Spacing Strategy:
  • Use grid/flex wrappers with
    gap
    for spacing
  • Prioritize wrappers over direct margins/padding on children
  • Nest wrappers as needed for complex layouts
Conditional Styling:
  • Use ternary operators or clsx/classnames utilities
  • Example:
    className={clsx('base-class', { 'active-class': isActive })}
间距策略:
  • 使用带
    gap
    的grid/flex容器进行间距控制
  • 优先使用容器而非直接在子元素上设置边距/内边距
  • 复杂布局时嵌套容器
条件样式:
  • 使用三元运算符或clsx/classnames工具
  • 示例:
    className={clsx('base-class', { 'active-class': isActive })}

Responsive Design

响应式设计

Fluid Layouts:
  • Use relative units (%, em, rem) instead of fixed pixels
  • Implement CSS Grid and Flexbox for flexible layouts
  • Design mobile-first, then scale up
Media Queries:
  • Use breakpoints based on content needs, not specific devices
  • Test across range of devices and orientations
Touch Targets:
  • Minimum 44x44 pixels for interactive elements
  • Provide adequate spacing between touch targets
  • Consider hover states for desktop, focus states for touch/keyboard
Performance:
  • Optimize assets for mobile networks
  • Use CSS animations over JavaScript
  • Implement lazy loading for images and videos
流体布局:
  • 使用相对单位(%、em、rem)而非固定像素
  • 实现CSS Grid和Flexbox打造灵活布局
  • 移动端优先设计,然后向上扩展
媒体查询:
  • 根据内容需求设置断点,而非特定设备
  • 在各种设备和方向上测试
触摸目标:
  • 交互元素最小尺寸为44x44像素
  • 触摸目标间提供足够间距
  • 考虑桌面端的悬停状态,触摸/键盘端的焦点状态
性能:
  • 针对移动网络优化资源
  • 优先使用CSS动画而非JavaScript
  • 为图片和视频实现懒加载

Accessibility Standards

无障碍标准

Core Requirements:
  • Follow WCAG 2.1 AA guidelines
  • Ensure keyboard navigability for all interactive elements
  • Minimum touch target size: 44×44px
  • Use semantic HTML for screen reader compatibility
  • Provide alternative text for images and non-text content
Implementation Details:
  • Use descriptive variable and function names
  • Event functions: prefix with "handle" (handleClick, handleKeyDown)
  • Add accessibility attributes:
    • tabindex="0"
      for custom interactive elements
    • aria-label
      for buttons without text
    • role
      attributes when semantic HTML isn't sufficient
  • Ensure logical tab order
  • Provide visible focus states
核心要求:
  • 遵循WCAG 2.1 AA指南
  • 确保所有交互元素支持键盘导航
  • 最小触摸目标尺寸:44×44px
  • 使用语义化HTML以支持屏幕阅读器
  • 为图片和非文本内容提供替代文本
实现细节:
  • 使用描述性变量和函数名
  • 事件函数:以“handle”为前缀(handleClick、handleKeyDown)
  • 添加无障碍属性:
    • 自定义交互元素添加
      tabindex="0"
    • 无文本按钮添加
      aria-label
    • 语义化HTML不足时添加
      role
      属性
  • 确保合理的Tab键顺序
  • 提供可见的焦点状态

Design Process & Testing

设计流程与测试

Design Workflow

设计工作流

  1. Understand Context:
    • What problem are we solving?
    • Who are the users and when will they use this?
    • What are the success criteria?
  2. Explore Options:
    • Present 2-3 alternative approaches
    • Explain trade-offs of each option
    • Ask which direction resonates
  3. Implement Iteratively:
    • Start with structure and hierarchy
    • Add visual polish progressively
    • Test at each stage
  4. Validate:
    • Use playwright MCP to test visual changes
    • Check across different screen sizes
    • Verify accessibility
  1. 理解上下文:
    • 我们要解决什么问题?
    • 用户是谁,他们何时使用?
    • 成功标准是什么?
  2. 探索方案:
    • 呈现2-3种替代方案
    • 解释每种方案的权衡
    • 询问用户倾向哪个方向
  3. 迭代实现:
    • 从结构和层级开始
    • 逐步添加视觉润色
    • 每个阶段都进行测试
  4. 验证:
    • 使用playwright MCP测试视觉变化
    • 在不同屏幕尺寸上检查
    • 验证无障碍性

Testing Checklist

测试检查清单

Visual Testing:
  • Use playwright MCP when available for automated testing
  • Check responsive behavior at common breakpoints
  • Verify touch targets on mobile
  • Test with different content lengths (short, long, edge cases)
Accessibility Testing:
  • Test keyboard navigation
  • Verify screen reader compatibility
  • Check color contrast ratios
  • Ensure focus states are visible
Cross-Device Testing:
  • Test on actual devices, not just emulators
  • Check different browsers (Chrome, Firefox, Safari)
  • Verify touch interactions on mobile
  • Test landscape and portrait orientations
视觉测试:
  • 可用时使用playwright MCP进行自动化测试
  • 在常见断点检查响应式行为
  • 在移动端验证触摸目标
  • 测试不同内容长度(短、长、边缘情况)
无障碍测试:
  • 测试键盘导航
  • 验证屏幕阅读器兼容性
  • 检查色彩对比度
  • 确保焦点状态可见
跨设备测试:
  • 在真实设备上测试,而非仅模拟器
  • 检查不同浏览器(Chrome、Firefox、Safari)
  • 在移动端验证触摸交互
  • 测试横屏和竖屏方向

Examples

示例

Example 1: Designing a Button

示例1:设计按钮

Initial Question to Ask:
Before I implement this button, I have a few design questions:
1. What's the primary action you want to emphasize?
2. Do you have brand colors in mind, or should I suggest options?
3. What emotion should this button convey? (urgent, calm, playful, professional)
After Getting Approval, Implementation:
tsx
import { Button } from "@/components/ui/button";
import { ArrowRight } from "@phosphor-icons/react";

<Button
  className="bg-slate-800 hover:bg-slate-700 text-white px-6 py-3 rounded-lg transition-colors duration-200"
>
  Get Started
  <ArrowRight className="ml-2" />
</Button>
初始询问:
在我实现这个按钮前,有几个设计问题:
1. 你想强调的主要操作是什么?
2. 你有品牌色彩偏好吗,还是我来提供选项?
3. 这个按钮应该传达什么情绪?(紧迫、平静、活泼、专业)
获得批准后的实现:
tsx
import { Button } from "@/components/ui/button";
import { ArrowRight } from "@phosphor-icons/react";

<Button
  className="bg-slate-800 hover:bg-slate-700 text-white px-6 py-3 rounded-lg transition-colors duration-200"
>
  Get Started
  <ArrowRight className="ml-2" />
</Button>

Example 2: Typography Hierarchy

示例2:排版层级

Question First:
For this content hierarchy, I'm thinking:
- Headline: Large, bold, attention-grabbing
- Subheading: Medium, regular weight
- Body: Smaller, optimized for reading

Should we go bold and contemporary, or subtle and refined?
Implementation After Approval:
tsx
<div className="space-y-4">
  <h1 className="text-5xl font-bold tracking-tight text-slate-900">
    Headline Here
  </h1>
  <h2 className="text-2xl text-slate-600">
    Supporting subheading
  </h2>
  <p className="text-base leading-relaxed text-slate-700">
    Body text optimized for readability with proper line height.
  </p>
</div>
先询问:
对于这个内容层级,我的想法是:
- 标题:大字号、粗体、吸引注意力
- 副标题:中字号、常规字重
- 正文:小字号、优化可读性

我们应该选择大胆现代的风格,还是微妙精致的风格?
获得批准后的实现:
tsx
<div className="space-y-4">
  <h1 className="text-5xl font-bold tracking-tight text-slate-900">
    Headline Here
  </h1>
  <h2 className="text-2xl text-slate-600">
    Supporting subheading
  </h2>
  <p className="text-base leading-relaxed text-slate-700">
    Body text optimized for readability with proper line height.
  </p>
</div>

Example 3: Unique Color Palette Suggestion

示例3:独特调色板建议

Presenting Options:
I'd like to suggest three color directions that break from typical SaaS patterns:

1. **Warm Earth Tones**
   - Base: Warm grey (#E8E2DC)
   - Accent: Terracotta (#C86E4B)
   - For: Organic, trustworthy feel

2. **Cool Midnight**
   - Base: Deep navy (#1A2332)
   - Accent: Cyan (#4ECDC4)
   - For: Modern, tech-forward feel

3. **Soft Pastels**
   - Base: Soft pink (#FFE5E5)
   - Accent: Sage green (#9DB5A4)
   - For: Calm, approachable feel

Which direction feels right for your brand?
呈现选项:
我想推荐三种打破典型SaaS模式的色彩方向:

1. **暖大地色调**
   - 基础色:暖灰色(#E8E2DC)
   - 强调色:赤陶色(#C86E4B)
   - 适合:有机、可信的感觉

2. **冷午夜色调**
   - 基础色:深藏青色(#1A2332)
   - 强调色:青色(#4ECDC4)
   - 适合:现代、科技感的感觉

3. **柔和马卡龙色调**
   - 基础色:柔和粉色(#FFE5E5)
   - 强调色:鼠尾草绿(#9DB5A4)
   - 适合:平静、亲切的感觉

哪个方向更符合你的品牌?

Common Patterns to Avoid

需避免的常见模式

Don't:
  • Use generic SaaS blue (#3B82F6) without considering alternatives
  • Default to shadows and gradients for depth
  • Copy Apple's design language
  • Use glass morphism effects
  • Make design decisions without asking
  • Implement typography without considering the font version
  • Use animations that delay user actions
  • Create cluttered interfaces with competing elements
Do:
  • Ask before making design decisions
  • Suggest unique, contextually appropriate color pairs
  • Use flat, minimal design
  • Consider unconventional typography choices
  • Provide immediate feedback for interactions
  • Create generous white space
  • Test with real devices
  • Validate accessibility
不要:
  • 不考虑替代方案就使用通用SaaS蓝色(#3B82F6)
  • 默认使用阴影和渐变营造深度
  • 抄袭苹果的设计语言
  • 使用毛玻璃效果
  • 不询问就做出设计决策
  • 不考虑字体版本就实施排版
  • 使用延迟用户操作的动画
  • 创建元素相互竞争的杂乱界面
要:
  • 做出设计决策前先询问用户
  • 建议独特、符合上下文的色彩搭配
  • 使用扁平化、极简设计
  • 考虑非传统排版选择
  • 为交互提供即时反馈
  • 创建充足的留白
  • 在真实设备上测试
  • 验证无障碍性

Version History

版本历史

  • v1.0.0 (2025-10-18): Initial release with comprehensive UI/UX design guidance
  • v1.0.0 (2025-10-18): 初始版本,包含全面的UI/UX设计指导

References

参考资料

For additional context, see:
如需更多上下文,请查看: