UI/UX Pro Max - Design Intelligence
Comprehensive design guide for web and mobile applications. Contains 84 styles, 192 color palettes, 74 font pairings, 99 UX guidelines, and 25 chart types across 22 technology stacks. Searchable database with priority-based recommendations.
When to Apply
Reference these guidelines when:
- Designing new UI components or pages
- Choosing color palettes and typography
- Reviewing code for UX issues
- Building landing pages or dashboards
- Implementing accessibility requirements
Rule Categories by Priority
| Priority |
Category |
Impact |
Domain |
| 1 |
Accessibility |
CRITICAL |
ux |
| 2 |
Touch & Interaction |
CRITICAL |
ux |
| 3 |
Performance |
HIGH |
ux |
| 4 |
Layout & Responsive |
HIGH |
ux |
| 5 |
Typography & Color |
MEDIUM |
typography, color |
| 6 |
Animation |
MEDIUM |
ux |
| 7 |
Style Selection |
MEDIUM |
style, product |
| 8 |
Charts & Data |
LOW |
chart |
Quick Reference
1. Accessibility (CRITICAL)
color-contrast - Minimum 4.5:1 ratio for normal text
focus-states - Visible focus rings on interactive elements
alt-text - Descriptive alt text for meaningful images
aria-labels - aria-label for icon-only buttons
keyboard-nav - Tab order matches visual order
form-labels - Use label with for attribute
2. Touch & Interaction (CRITICAL)
touch-target-size - Minimum 44x44px touch targets
hover-vs-tap - Use click/tap for primary interactions
loading-buttons - Disable button during async operations
error-feedback - Clear error messages near problem
cursor-pointer - Add cursor-pointer to clickable elements
3. Performance (HIGH)
image-optimization - Use WebP, srcset, lazy loading
reduced-motion - Check prefers-reduced-motion
content-jumping - Reserve space for async content
4. Layout & Responsive (HIGH)
viewport-meta - width=device-width initial-scale=1
readable-font-size - Minimum 16px body text on mobile
horizontal-scroll - Ensure content fits viewport width
z-index-management - Define z-index scale (10, 20, 30, 50)
5. Typography & Color (MEDIUM)
line-height - Use 1.5-1.75 for body text
line-length - Limit to 65-75 characters per line
font-pairing - Match heading/body font personalities
6. Animation (MEDIUM)
duration-timing - Use 150-300ms for micro-interactions
transform-performance - Use transform/opacity, not width/height
loading-states - Skeleton screens or spinners
7. Style Selection (MEDIUM)
style-match - Match style to product type
consistency - Use same style across all pages
no-emoji-icons - Use SVG icons, not emojis
8. Charts & Data (LOW)
chart-type - Match chart type to data type
color-guidance - Use accessible color palettes
data-table - Provide table alternative for accessibility
How to Use
Search specific domains using the CLI tool below.
Prerequisites
Requires python3 (available by default in the Claude Code shell and in claude.ai's code-execution sandbox). This skill does not install anything.
How to Use This Skill
When user requests UI/UX work (design, build, create, implement, review, fix, improve), follow this workflow:
First, enter this skill's directory so the scripts/ and data/ paths below resolve (the working directory persists across the subsequent commands):
# Reads run from the skill dir; --persist writes to the project root.
PROJECT_ROOT="$PWD"
# Use the base path the orchestrator already resolved, else locate this skill.
UIUX_DIR="${SKILL_BASE:+$SKILL_BASE/ui-ux-pro-max}"
[ -d "$UIUX_DIR" ] || UIUX_DIR="$(find "$HOME/.claude/plugins" /mnt/skills -type d -name ui-ux-pro-max 2>/dev/null | sort -V | tail -1)"
cd "$UIUX_DIR"
Step 1: Analyze User Requirements
Extract key information from user request:
- Product type: SaaS, e-commerce, portfolio, dashboard, landing page, etc.
- Style keywords: minimal, playful, professional, elegant, dark mode, etc.
- Industry: healthcare, fintech, gaming, education, etc.
- Stack: React, Vue, Next.js, or default to
html-tailwind
Step 2: Generate Design System (REQUIRED)
Always start with --design-system to get comprehensive recommendations with reasoning:
python3 scripts/search.py "<product_type> <industry> <keywords>" --design-system [-p "Project Name"]
This command:
- Searches 5 domains in parallel (product, style, color, landing, typography)
- Applies reasoning rules from
ui-reasoning.csv to select best matches
- Returns complete design system: pattern, style, colors, typography, effects
- Includes anti-patterns to avoid
Example:
python3 scripts/search.py "beauty spa wellness service" --design-system -p "Serenity Spa"
Step 2b: Persist Design System (Master + Overrides Pattern)
To save the design system for hierarchical retrieval across sessions, add --persist (point --output-dir at the project root so files land there, not in the skill dir):
python3 scripts/search.py "<query>" --design-system --persist -p "Project Name" --output-dir "$PROJECT_ROOT"
This creates:
design-system/<project-slug>/MASTER.md — Global Source of Truth with all design rules
design-system/<project-slug>/pages/ — Folder for page-specific overrides
--persist skips writing if MASTER.md already exists; add --force to overwrite.
With page-specific override:
python3 scripts/search.py "<query>" --design-system --persist -p "Project Name" --page "dashboard" --output-dir "$PROJECT_ROOT"
This also creates:
design-system/<project-slug>/pages/dashboard.md — Page-specific deviations from Master
How hierarchical retrieval works:
- When building a specific page (e.g., "Checkout"), first check
design-system/<project-slug>/pages/checkout.md
- If the page file exists, its rules override the Master file
- If not, use
design-system/<project-slug>/MASTER.md exclusively
Context-aware retrieval prompt:
I am building the [Page Name] page. Please read design-system/MASTER.md.
Also check if design-system/pages/[page-name].md exists.
If the page file exists, prioritize its rules.
If not, use the Master rules exclusively.
Now, generate the code...
Step 3: Supplement with Detailed Searches (as needed)
After getting the design system, use domain searches to get additional details:
python3 scripts/search.py "<keyword>" --domain <domain> [-n <max_results>]
When to use detailed searches:
| Need |
Domain |
Example |
| More style options |
style |
--domain style "glassmorphism dark" |
| Chart recommendations |
chart |
--domain chart "real-time dashboard" |
| UX best practices |
ux |
--domain ux "animation accessibility" |
| Alternative fonts |
typography |
--domain typography "elegant luxury" |
| Landing structure |
landing |
--domain landing "hero social-proof" |
Step 4: Stack Guidelines (Default: html-tailwind)
Get implementation-specific best practices. If user doesn't specify a stack, default to html-tailwind.
python3 scripts/search.py "<keyword>" --stack html-tailwind
Available stacks: html-tailwind, react, nextjs, astro, vue, nuxtjs, nuxt-ui, svelte, swiftui, react-native, flutter, shadcn, jetpack-compose, threejs, angular, laravel, javafx, wpf, winui, avalonia, uno, uwp
Search Reference
Available Domains
| Domain |
Use For |
Example Keywords |
product |
Product type recommendations |
SaaS, e-commerce, portfolio, healthcare, beauty, service |
style |
UI styles, colors, effects |
glassmorphism, minimalism, dark mode, brutalism |
typography |
Font pairings, Google Fonts |
elegant, playful, professional, modern |
color |
Color palettes (full token sets) |
saas, ecommerce, healthcare, beauty, fintech, service |
landing |
Page structure, CTA strategies |
hero, hero-centric, testimonial, pricing, social-proof |
chart |
Chart types, library recommendations |
trend, comparison, timeline, funnel, pie |
ux |
Best practices, anti-patterns |
animation, accessibility, z-index, loading |
icons |
Icon set + import guidance |
outline, solid, brand, navigation |
react |
React/Next.js performance |
waterfall, bundle, suspense, memo, rerender, cache |
web |
App/web interface guidelines |
aria, focus, keyboard, semantic, virtualize |
gsap |
Motion snippets (feeds the --motion dial) |
reveal, parallax, stagger, scroll |
google-fonts |
Google Fonts lookup |
serif, mono, display, variable |
Available Stacks
| Stack |
Focus |
html-tailwind |
Tailwind utilities, responsive, a11y (DEFAULT) |
react |
State, hooks, performance, patterns |
nextjs |
SSR, routing, images, API routes |
astro |
Islands architecture, partial hydration, content-driven |
vue |
Composition API, Pinia, Vue Router |
nuxtjs |
Nuxt 3, composables, SSR/SSG, auto-imports |
nuxt-ui |
Nuxt UI components, theming, forms |
svelte |
Runes, stores, SvelteKit |
swiftui |
Views, State, Navigation, Animation |
react-native |
Components, Navigation, Lists |
flutter |
Widgets, State, Layout, Theming |
shadcn |
shadcn/ui components, theming, forms, patterns |
jetpack-compose |
Composables, Modifiers, State Hoisting, Recomposition |
threejs |
Three.js scenes, materials, R3F patterns |
angular |
Components, signals, RxJS, standalone APIs |
laravel |
Blade, Livewire, Tailwind, form patterns |
javafx |
Scene graph, FXML, CSS, controls |
wpf |
XAML, MVVM, bindings, styles |
winui |
WinUI 3, XAML, Fluent, bindings |
avalonia |
Cross-platform XAML, MVVM, styling |
uno |
Uno Platform, WinUI XAML cross-target |
uwp |
UWP XAML, Fluent, adaptive UI |
Example Workflow
User request: "Build a landing page for a professional skincare service"
Step 1: Analyze Requirements
- Product type: Beauty/Spa service
- Style keywords: elegant, professional, soft
- Industry: Beauty/Wellness
- Stack: html-tailwind (default)
Step 2: Generate Design System (REQUIRED)
python3 scripts/search.py "beauty spa wellness service elegant" --design-system -p "Serenity Spa"
Output: Complete design system with pattern, style, colors, typography, effects, and anti-patterns.
Step 3: Supplement with Detailed Searches (as needed)
# Get UX guidelines for animation and accessibility
python3 scripts/search.py "animation accessibility" --domain ux
# Get alternative typography options if needed
python3 scripts/search.py "elegant luxury serif" --domain typography
Step 4: Stack Guidelines
python3 scripts/search.py "layout responsive form" --stack html-tailwind
Then: Synthesize design system + detailed searches and implement the design.
Output Formats
The --design-system flag supports two output formats:
# ASCII box (default) - best for terminal display
python3 scripts/search.py "fintech crypto" --design-system
# Markdown - best for documentation
python3 scripts/search.py "fintech crypto" --design-system -f markdown
Tips for Better Results
- Be specific with keywords - "healthcare SaaS dashboard" > "app"
- Search multiple times - Different keywords reveal different insights
- Combine domains - Style + Typography + Color = Complete design system
- Always check UX - Search "animation", "z-index", "accessibility" for common issues
- Use stack flag - Get implementation-specific best practices
- Iterate - If first search doesn't match, try different keywords
Common Rules for Professional UI
These are frequently overlooked issues that make UI look unprofessional:
Icons & Visual Elements
| Rule |
Do |
Don't |
| No emoji icons |
Use SVG icons (Heroicons, Lucide, Simple Icons) |
Use emojis like 🎨 🚀 ⚙️ as UI icons |
| Stable hover states |
Use color/opacity transitions on hover |
Use scale transforms that shift layout |
| Correct brand logos |
Research official SVG from Simple Icons |
Guess or use incorrect logo paths |
| Consistent icon sizing |
Use fixed viewBox (24x24) with w-6 h-6 |
Mix different icon sizes randomly |
Interaction & Cursor
| Rule |
Do |
Don't |
| Cursor pointer |
Add cursor-pointer to all clickable/hoverable cards |
Leave default cursor on interactive elements |
| Hover feedback |
Provide visual feedback (color, shadow, border) |
No indication element is interactive |
| Smooth transitions |
Use transition-colors duration-200 |
Instant state changes or too slow (>500ms) |
Light/Dark Mode Contrast
| Rule |
Do |
Don't |
| Glass card light mode |
Use bg-white/80 or higher opacity |
Use bg-white/10 (too transparent) |
| Text contrast light |
Use #0F172A (slate-900) for text |
Use #94A3B8 (slate-400) for body text |
| Muted text light |
Use #475569 (slate-600) minimum |
Use gray-400 or lighter |
| Border visibility |
Use border-gray-200 in light mode |
Use border-white/10 (invisible) |
Layout & Spacing
| Rule |
Do |
Don't |
| Floating navbar |
Add top-4 left-4 right-4 spacing |
Stick navbar to top-0 left-0 right-0 |
| Content padding |
Account for fixed navbar height |
Let content hide behind fixed elements |
| Consistent max-width |
Use same max-w-6xl or max-w-7xl |
Mix different container widths |
Pre-Delivery Checklist
Before delivering UI code, verify these items:
Visual Quality
Interaction
Light/Dark Mode
Layout
Accessibility
1---2name: ui-ux-pro-max3description: UI/UX design-system intelligence - 84 styles, 192 palettes, 74 font pairings, 25 charts, 99 UX guidelines across 22 stacks (searchable dataset + CLI). Internal genjutsu module: loaded by /genjutsu:cast and /genjutsu:paint, not invoked directly.4---56# UI/UX Pro Max - Design Intelligence78Comprehensive design guide for web and mobile applications. Contains 84 styles, 192 color palettes, 74 font pairings, 99 UX guidelines, and 25 chart types across 22 technology stacks. Searchable database with priority-based recommendations.910## When to Apply1112Reference these guidelines when:13- Designing new UI components or pages14- Choosing color palettes and typography15- Reviewing code for UX issues16- Building landing pages or dashboards17- Implementing accessibility requirements1819## Rule Categories by Priority2021| Priority | Category | Impact | Domain |22|----------|----------|--------|--------|23| 1 | Accessibility | CRITICAL | `ux` |24| 2 | Touch & Interaction | CRITICAL | `ux` |25| 3 | Performance | HIGH | `ux` |26| 4 | Layout & Responsive | HIGH | `ux` |27| 5 | Typography & Color | MEDIUM | `typography`, `color` |28| 6 | Animation | MEDIUM | `ux` |29| 7 | Style Selection | MEDIUM | `style`, `product` |30| 8 | Charts & Data | LOW | `chart` |3132## Quick Reference3334### 1. Accessibility (CRITICAL)3536- `color-contrast` - Minimum 4.5:1 ratio for normal text37- `focus-states` - Visible focus rings on interactive elements38- `alt-text` - Descriptive alt text for meaningful images39- `aria-labels` - aria-label for icon-only buttons40- `keyboard-nav` - Tab order matches visual order41- `form-labels` - Use label with for attribute4243### 2. Touch & Interaction (CRITICAL)4445- `touch-target-size` - Minimum 44x44px touch targets46- `hover-vs-tap` - Use click/tap for primary interactions47- `loading-buttons` - Disable button during async operations48- `error-feedback` - Clear error messages near problem49- `cursor-pointer` - Add cursor-pointer to clickable elements5051### 3. Performance (HIGH)5253- `image-optimization` - Use WebP, srcset, lazy loading54- `reduced-motion` - Check prefers-reduced-motion55- `content-jumping` - Reserve space for async content5657### 4. Layout & Responsive (HIGH)5859- `viewport-meta` - width=device-width initial-scale=160- `readable-font-size` - Minimum 16px body text on mobile61- `horizontal-scroll` - Ensure content fits viewport width62- `z-index-management` - Define z-index scale (10, 20, 30, 50)6364### 5. Typography & Color (MEDIUM)6566- `line-height` - Use 1.5-1.75 for body text67- `line-length` - Limit to 65-75 characters per line68- `font-pairing` - Match heading/body font personalities6970### 6. Animation (MEDIUM)7172- `duration-timing` - Use 150-300ms for micro-interactions73- `transform-performance` - Use transform/opacity, not width/height74- `loading-states` - Skeleton screens or spinners7576### 7. Style Selection (MEDIUM)7778- `style-match` - Match style to product type79- `consistency` - Use same style across all pages80- `no-emoji-icons` - Use SVG icons, not emojis8182### 8. Charts & Data (LOW)8384- `chart-type` - Match chart type to data type85- `color-guidance` - Use accessible color palettes86- `data-table` - Provide table alternative for accessibility8788## How to Use8990Search specific domains using the CLI tool below.9192---9394## Prerequisites9596Requires `python3` (available by default in the Claude Code shell and in claude.ai's code-execution sandbox). This skill does not install anything.9798---99100## How to Use This Skill101102When user requests UI/UX work (design, build, create, implement, review, fix, improve), follow this workflow:103104**First, enter this skill's directory** so the `scripts/` and `data/` paths below resolve (the working directory persists across the subsequent commands):105106```bash107# Reads run from the skill dir; --persist writes to the project root.108PROJECT_ROOT="$PWD"109# Use the base path the orchestrator already resolved, else locate this skill.110UIUX_DIR="${SKILL_BASE:+$SKILL_BASE/ui-ux-pro-max}"111[ -d "$UIUX_DIR" ] || UIUX_DIR="$(find "$HOME/.claude/plugins" /mnt/skills -type d -name ui-ux-pro-max 2>/dev/null | sort -V | tail -1)"112cd "$UIUX_DIR"113```114115### Step 1: Analyze User Requirements116117Extract key information from user request:118- **Product type**: SaaS, e-commerce, portfolio, dashboard, landing page, etc.119- **Style keywords**: minimal, playful, professional, elegant, dark mode, etc.120- **Industry**: healthcare, fintech, gaming, education, etc.121- **Stack**: React, Vue, Next.js, or default to `html-tailwind`122123### Step 2: Generate Design System (REQUIRED)124125**Always start with `--design-system`** to get comprehensive recommendations with reasoning:126127```bash128python3 scripts/search.py "<product_type> <industry> <keywords>" --design-system [-p "Project Name"]129```130131This command:1321. Searches 5 domains in parallel (product, style, color, landing, typography)1332. Applies reasoning rules from `ui-reasoning.csv` to select best matches1343. Returns complete design system: pattern, style, colors, typography, effects1354. Includes anti-patterns to avoid136137**Example:**138```bash139python3 scripts/search.py "beauty spa wellness service" --design-system -p "Serenity Spa"140```141142### Step 2b: Persist Design System (Master + Overrides Pattern)143144To save the design system for **hierarchical retrieval across sessions**, add `--persist` (point `--output-dir` at the project root so files land there, not in the skill dir):145146```bash147python3 scripts/search.py "<query>" --design-system --persist -p "Project Name" --output-dir "$PROJECT_ROOT"148```149150This creates:151- `design-system/<project-slug>/MASTER.md` — Global Source of Truth with all design rules152- `design-system/<project-slug>/pages/` — Folder for page-specific overrides153154`--persist` skips writing if `MASTER.md` already exists; add `--force` to overwrite.155156**With page-specific override:**157```bash158python3 scripts/search.py "<query>" --design-system --persist -p "Project Name" --page "dashboard" --output-dir "$PROJECT_ROOT"159```160161This also creates:162- `design-system/<project-slug>/pages/dashboard.md` — Page-specific deviations from Master163164**How hierarchical retrieval works:**1651. When building a specific page (e.g., "Checkout"), first check `design-system/<project-slug>/pages/checkout.md`1662. If the page file exists, its rules **override** the Master file1673. If not, use `design-system/<project-slug>/MASTER.md` exclusively168169**Context-aware retrieval prompt:**170```171I am building the [Page Name] page. Please read design-system/MASTER.md.172Also check if design-system/pages/[page-name].md exists.173If the page file exists, prioritize its rules.174If not, use the Master rules exclusively.175Now, generate the code...176```177178### Step 3: Supplement with Detailed Searches (as needed)179180After getting the design system, use domain searches to get additional details:181182```bash183python3 scripts/search.py "<keyword>" --domain <domain> [-n <max_results>]184```185186**When to use detailed searches:**187188| Need | Domain | Example |189|------|--------|---------|190| More style options | `style` | `--domain style "glassmorphism dark"` |191| Chart recommendations | `chart` | `--domain chart "real-time dashboard"` |192| UX best practices | `ux` | `--domain ux "animation accessibility"` |193| Alternative fonts | `typography` | `--domain typography "elegant luxury"` |194| Landing structure | `landing` | `--domain landing "hero social-proof"` |195196### Step 4: Stack Guidelines (Default: html-tailwind)197198Get implementation-specific best practices. If user doesn't specify a stack, **default to `html-tailwind`**.199200```bash201python3 scripts/search.py "<keyword>" --stack html-tailwind202```203204Available stacks: `html-tailwind`, `react`, `nextjs`, `astro`, `vue`, `nuxtjs`, `nuxt-ui`, `svelte`, `swiftui`, `react-native`, `flutter`, `shadcn`, `jetpack-compose`, `threejs`, `angular`, `laravel`, `javafx`, `wpf`, `winui`, `avalonia`, `uno`, `uwp`205206---207208## Search Reference209210### Available Domains211212| Domain | Use For | Example Keywords |213|--------|---------|------------------|214| `product` | Product type recommendations | SaaS, e-commerce, portfolio, healthcare, beauty, service |215| `style` | UI styles, colors, effects | glassmorphism, minimalism, dark mode, brutalism |216| `typography` | Font pairings, Google Fonts | elegant, playful, professional, modern |217| `color` | Color palettes (full token sets) | saas, ecommerce, healthcare, beauty, fintech, service |218| `landing` | Page structure, CTA strategies | hero, hero-centric, testimonial, pricing, social-proof |219| `chart` | Chart types, library recommendations | trend, comparison, timeline, funnel, pie |220| `ux` | Best practices, anti-patterns | animation, accessibility, z-index, loading |221| `icons` | Icon set + import guidance | outline, solid, brand, navigation |222| `react` | React/Next.js performance | waterfall, bundle, suspense, memo, rerender, cache |223| `web` | App/web interface guidelines | aria, focus, keyboard, semantic, virtualize |224| `gsap` | Motion snippets (feeds the `--motion` dial) | reveal, parallax, stagger, scroll |225| `google-fonts` | Google Fonts lookup | serif, mono, display, variable |226227### Available Stacks228229| Stack | Focus |230|-------|-------|231| `html-tailwind` | Tailwind utilities, responsive, a11y (DEFAULT) |232| `react` | State, hooks, performance, patterns |233| `nextjs` | SSR, routing, images, API routes |234| `astro` | Islands architecture, partial hydration, content-driven |235| `vue` | Composition API, Pinia, Vue Router |236| `nuxtjs` | Nuxt 3, composables, SSR/SSG, auto-imports |237| `nuxt-ui` | Nuxt UI components, theming, forms |238| `svelte` | Runes, stores, SvelteKit |239| `swiftui` | Views, State, Navigation, Animation |240| `react-native` | Components, Navigation, Lists |241| `flutter` | Widgets, State, Layout, Theming |242| `shadcn` | shadcn/ui components, theming, forms, patterns |243| `jetpack-compose` | Composables, Modifiers, State Hoisting, Recomposition |244| `threejs` | Three.js scenes, materials, R3F patterns |245| `angular` | Components, signals, RxJS, standalone APIs |246| `laravel` | Blade, Livewire, Tailwind, form patterns |247| `javafx` | Scene graph, FXML, CSS, controls |248| `wpf` | XAML, MVVM, bindings, styles |249| `winui` | WinUI 3, XAML, Fluent, bindings |250| `avalonia` | Cross-platform XAML, MVVM, styling |251| `uno` | Uno Platform, WinUI XAML cross-target |252| `uwp` | UWP XAML, Fluent, adaptive UI |253254---255256## Example Workflow257258**User request:** "Build a landing page for a professional skincare service"259260### Step 1: Analyze Requirements261- Product type: Beauty/Spa service262- Style keywords: elegant, professional, soft263- Industry: Beauty/Wellness264- Stack: html-tailwind (default)265266### Step 2: Generate Design System (REQUIRED)267268```bash269python3 scripts/search.py "beauty spa wellness service elegant" --design-system -p "Serenity Spa"270```271272**Output:** Complete design system with pattern, style, colors, typography, effects, and anti-patterns.273274### Step 3: Supplement with Detailed Searches (as needed)275276```bash277# Get UX guidelines for animation and accessibility278python3 scripts/search.py "animation accessibility" --domain ux279280# Get alternative typography options if needed281python3 scripts/search.py "elegant luxury serif" --domain typography282```283284### Step 4: Stack Guidelines285286```bash287python3 scripts/search.py "layout responsive form" --stack html-tailwind288```289290**Then:** Synthesize design system + detailed searches and implement the design.291292---293294## Output Formats295296The `--design-system` flag supports two output formats:297298```bash299# ASCII box (default) - best for terminal display300python3 scripts/search.py "fintech crypto" --design-system301302# Markdown - best for documentation303python3 scripts/search.py "fintech crypto" --design-system -f markdown304```305306---307308## Tips for Better Results3093101. **Be specific with keywords** - "healthcare SaaS dashboard" > "app"3112. **Search multiple times** - Different keywords reveal different insights3123. **Combine domains** - Style + Typography + Color = Complete design system3134. **Always check UX** - Search "animation", "z-index", "accessibility" for common issues3145. **Use stack flag** - Get implementation-specific best practices3156. **Iterate** - If first search doesn't match, try different keywords316317---318319## Common Rules for Professional UI320321These are frequently overlooked issues that make UI look unprofessional:322323### Icons & Visual Elements324325| Rule | Do | Don't |326|------|----|----- |327| **No emoji icons** | Use SVG icons (Heroicons, Lucide, Simple Icons) | Use emojis like 🎨 🚀 ⚙️ as UI icons |328| **Stable hover states** | Use color/opacity transitions on hover | Use scale transforms that shift layout |329| **Correct brand logos** | Research official SVG from Simple Icons | Guess or use incorrect logo paths |330| **Consistent icon sizing** | Use fixed viewBox (24x24) with w-6 h-6 | Mix different icon sizes randomly |331332### Interaction & Cursor333334| Rule | Do | Don't |335|------|----|----- |336| **Cursor pointer** | Add `cursor-pointer` to all clickable/hoverable cards | Leave default cursor on interactive elements |337| **Hover feedback** | Provide visual feedback (color, shadow, border) | No indication element is interactive |338| **Smooth transitions** | Use `transition-colors duration-200` | Instant state changes or too slow (>500ms) |339340### Light/Dark Mode Contrast341342| Rule | Do | Don't |343|------|----|----- |344| **Glass card light mode** | Use `bg-white/80` or higher opacity | Use `bg-white/10` (too transparent) |345| **Text contrast light** | Use `#0F172A` (slate-900) for text | Use `#94A3B8` (slate-400) for body text |346| **Muted text light** | Use `#475569` (slate-600) minimum | Use gray-400 or lighter |347| **Border visibility** | Use `border-gray-200` in light mode | Use `border-white/10` (invisible) |348349### Layout & Spacing350351| Rule | Do | Don't |352|------|----|----- |353| **Floating navbar** | Add `top-4 left-4 right-4` spacing | Stick navbar to `top-0 left-0 right-0` |354| **Content padding** | Account for fixed navbar height | Let content hide behind fixed elements |355| **Consistent max-width** | Use same `max-w-6xl` or `max-w-7xl` | Mix different container widths |356357---358359## Pre-Delivery Checklist360361Before delivering UI code, verify these items:362363### Visual Quality364- [ ] No emojis used as icons (use SVG instead)365- [ ] All icons from consistent icon set (Heroicons/Lucide)366- [ ] Brand logos are correct (verified from Simple Icons)367- [ ] Hover states don't cause layout shift368- [ ] Use theme colors directly (bg-primary) not var() wrapper369370### Interaction371- [ ] All clickable elements have `cursor-pointer`372- [ ] Hover states provide clear visual feedback373- [ ] Transitions are smooth (150-300ms)374- [ ] Focus states visible for keyboard navigation375376### Light/Dark Mode377- [ ] Light mode text has sufficient contrast (4.5:1 minimum)378- [ ] Glass/transparent elements visible in light mode379- [ ] Borders visible in both modes380- [ ] Test both modes before delivery381382### Layout383- [ ] Floating elements have proper spacing from edges384- [ ] No content hidden behind fixed navbars385- [ ] Responsive at 375px, 768px, 1024px, 1440px386- [ ] No horizontal scroll on mobile387388### Accessibility389- [ ] All images have alt text390- [ ] Form inputs have labels391- [ ] Color is not the only indicator392- [ ] `prefers-reduced-motion` respected