Version-sensitive. Every API name, SDK gate and browser-support claim below was
verified on 2026-09-08 against primary sources. What against, and when, is in
_jutsu/VERSIONS.md. If that date is old, re-verify before acting on a version number.
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.
Always pass -f markdown on --design-system. The default is ascii, which is built for a
terminal: it emits about 7,000 bytes carrying raw ANSI colour escapes, and hex_to_ansi has no
isatty guard, so those escapes survive being piped and land in the context window as garbage.
-f markdown returns the same information in about 2,100 bytes of clean markdown. The consumer
here is a model, not a terminal, so this is a 3.3x token reduction on the most-run command in
this skill.
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"] -f markdown
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" -f markdown
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" -f markdown
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" -f markdown
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" -f markdown
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 -f markdown
# 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---5
6> **Version-sensitive.** Every API name, SDK gate and browser-support claim below was
7> verified on **2026-09-08** against primary sources. What against, and when, is in
8> `_jutsu/VERSIONS.md`. If that date is old, re-verify before acting on a version number.
9
10# UI/UX Pro Max - Design Intelligence
11
12Comprehensive 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.
13
14## When to Apply
15
16Reference these guidelines when:
17- Designing new UI components or pages
18- Choosing color palettes and typography
19- Reviewing code for UX issues
20- Building landing pages or dashboards
21- Implementing accessibility requirements
22
23## Rule Categories by Priority
24
25| Priority | Category | Impact | Domain |
26|----------|----------|--------|--------|
27| 1 | Accessibility | CRITICAL | `ux` |
28| 2 | Touch & Interaction | CRITICAL | `ux` |
29| 3 | Performance | HIGH | `ux` |
30| 4 | Layout & Responsive | HIGH | `ux` |
31| 5 | Typography & Color | MEDIUM | `typography`, `color` |
32| 6 | Animation | MEDIUM | `ux` |
33| 7 | Style Selection | MEDIUM | `style`, `product` |
34| 8 | Charts & Data | LOW | `chart` |
35
36## Quick Reference
37
38### 1. Accessibility (CRITICAL)
39
40- `color-contrast` - Minimum 4.5:1 ratio for normal text
41- `focus-states` - Visible focus rings on interactive elements
42- `alt-text` - Descriptive alt text for meaningful images
43- `aria-labels` - aria-label for icon-only buttons
44- `keyboard-nav` - Tab order matches visual order
45- `form-labels` - Use label with for attribute
46
47### 2. Touch & Interaction (CRITICAL)
48
49- `touch-target-size` - Minimum 44x44px touch targets
50- `hover-vs-tap` - Use click/tap for primary interactions
51- `loading-buttons` - Disable button during async operations
52- `error-feedback` - Clear error messages near problem
53- `cursor-pointer` - Add cursor-pointer to clickable elements
54
55### 3. Performance (HIGH)
56
57- `image-optimization` - Use WebP, srcset, lazy loading
58- `reduced-motion` - Check prefers-reduced-motion
59- `content-jumping` - Reserve space for async content
60
61### 4. Layout & Responsive (HIGH)
62
63- `viewport-meta` - width=device-width initial-scale=1
64- `readable-font-size` - Minimum 16px body text on mobile
65- `horizontal-scroll` - Ensure content fits viewport width
66- `z-index-management` - Define z-index scale (10, 20, 30, 50)
67
68### 5. Typography & Color (MEDIUM)
69
70- `line-height` - Use 1.5-1.75 for body text
71- `line-length` - Limit to 65-75 characters per line
72- `font-pairing` - Match heading/body font personalities
73
74### 6. Animation (MEDIUM)
75
76- `duration-timing` - Use 150-300ms for micro-interactions
77- `transform-performance` - Use transform/opacity, not width/height
78- `loading-states` - Skeleton screens or spinners
79
80### 7. Style Selection (MEDIUM)
81
82- `style-match` - Match style to product type
83- `consistency` - Use same style across all pages
84- `no-emoji-icons` - Use SVG icons, not emojis
85
86### 8. Charts & Data (LOW)
87
88- `chart-type` - Match chart type to data type
89- `color-guidance` - Use accessible color palettes
90- `data-table` - Provide table alternative for accessibility
91
92## How to Use
93
94Search specific domains using the CLI tool below.
95
96---
97
98## Prerequisites
99
100Requires `python3` (available by default in the Claude Code shell and in claude.ai's code-execution sandbox). This skill does not install anything.
101
102**Always pass `-f markdown` on `--design-system`.** The default is `ascii`, which is built for a
103terminal: it emits about 7,000 bytes carrying raw ANSI colour escapes, and `hex_to_ansi` has no
104isatty guard, so those escapes survive being piped and land in the context window as garbage.
105`-f markdown` returns the same information in about 2,100 bytes of clean markdown. The consumer
106here is a model, not a terminal, so this is a 3.3x token reduction on the most-run command in
107this skill.
108
109---
110
111## How to Use This Skill
112
113When user requests UI/UX work (design, build, create, implement, review, fix, improve), follow this workflow:
114
115**First, enter this skill's directory** so the `scripts/` and `data/` paths below resolve (the working directory persists across the subsequent commands):
116
117```bash
118# Reads run from the skill dir; --persist writes to the project root.
119PROJECT_ROOT="$PWD"
120# Use the base path the orchestrator already resolved, else locate this skill.
121UIUX_DIR="${SKILL_BASE:+$SKILL_BASE/ui-ux-pro-max}"
122[ -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)"
123cd "$UIUX_DIR"
124```
125
126### Step 1: Analyze User Requirements
127
128Extract key information from user request:
129- **Product type**: SaaS, e-commerce, portfolio, dashboard, landing page, etc.
130- **Style keywords**: minimal, playful, professional, elegant, dark mode, etc.
131- **Industry**: healthcare, fintech, gaming, education, etc.
132- **Stack**: React, Vue, Next.js, or default to `html-tailwind`
133
134### Step 2: Generate Design System (REQUIRED)
135
136**Always start with `--design-system`** to get comprehensive recommendations with reasoning:
137
138```bash
139python3 scripts/search.py "<product_type> <industry> <keywords>" --design-system [-p "Project Name"] -f markdown
140```
141
142This command:
1431. Searches 5 domains in parallel (product, style, color, landing, typography)
1442. Applies reasoning rules from `ui-reasoning.csv` to select best matches
1453. Returns complete design system: pattern, style, colors, typography, effects
1464. Includes anti-patterns to avoid
147
148**Example:**
149```bash
150python3 scripts/search.py "beauty spa wellness service" --design-system -p "Serenity Spa" -f markdown
151```
152
153### Step 2b: Persist Design System (Master + Overrides Pattern)
154
155To 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):
156
157```bash
158python3 scripts/search.py "<query>" --design-system --persist -p "Project Name" --output-dir "$PROJECT_ROOT" -f markdown
159```
160
161This creates:
162- `design-system/<project-slug>/MASTER.md` — Global Source of Truth with all design rules
163- `design-system/<project-slug>/pages/` — Folder for page-specific overrides
164
165`--persist` skips writing if `MASTER.md` already exists; add `--force` to overwrite.
166
167**With page-specific override:**
168```bash
169python3 scripts/search.py "<query>" --design-system --persist -p "Project Name" --page "dashboard" --output-dir "$PROJECT_ROOT" -f markdown
170```
171
172This also creates:
173- `design-system/<project-slug>/pages/dashboard.md` — Page-specific deviations from Master
174
175**How hierarchical retrieval works:**
1761. When building a specific page (e.g., "Checkout"), first check `design-system/<project-slug>/pages/checkout.md`
1772. If the page file exists, its rules **override** the Master file
1783. If not, use `design-system/<project-slug>/MASTER.md` exclusively
179
180**Context-aware retrieval prompt:**
181```
182I am building the [Page Name] page. Please read design-system/MASTER.md.
183Also check if design-system/pages/[page-name].md exists.
184If the page file exists, prioritize its rules.
185If not, use the Master rules exclusively.
186Now, generate the code...
187```
188
189### Step 3: Supplement with Detailed Searches (as needed)
190
191After getting the design system, use domain searches to get additional details:
192
193```bash
194python3 scripts/search.py "<keyword>" --domain <domain> [-n <max_results>]
195```
196
197**When to use detailed searches:**
198
199| Need | Domain | Example |
200|------|--------|---------|
201| More style options | `style` | `--domain style "glassmorphism dark"` |
202| Chart recommendations | `chart` | `--domain chart "real-time dashboard"` |
203| UX best practices | `ux` | `--domain ux "animation accessibility"` |
204| Alternative fonts | `typography` | `--domain typography "elegant luxury"` |
205| Landing structure | `landing` | `--domain landing "hero social-proof"` |
206
207### Step 4: Stack Guidelines (Default: html-tailwind)
208
209Get implementation-specific best practices. If user doesn't specify a stack, **default to `html-tailwind`**.
210
211```bash
212python3 scripts/search.py "<keyword>" --stack html-tailwind
213```
214
215Available 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`
216
217---
218
219## Search Reference
220
221### Available Domains
222
223| Domain | Use For | Example Keywords |
224|--------|---------|------------------|
225| `product` | Product type recommendations | SaaS, e-commerce, portfolio, healthcare, beauty, service |
226| `style` | UI styles, colors, effects | glassmorphism, minimalism, dark mode, brutalism |
227| `typography` | Font pairings, Google Fonts | elegant, playful, professional, modern |
228| `color` | Color palettes (full token sets) | saas, ecommerce, healthcare, beauty, fintech, service |
229| `landing` | Page structure, CTA strategies | hero, hero-centric, testimonial, pricing, social-proof |
230| `chart` | Chart types, library recommendations | trend, comparison, timeline, funnel, pie |
231| `ux` | Best practices, anti-patterns | animation, accessibility, z-index, loading |
232| `icons` | Icon set + import guidance | outline, solid, brand, navigation |
233| `react` | React/Next.js performance | waterfall, bundle, suspense, memo, rerender, cache |
234| `web` | App/web interface guidelines | aria, focus, keyboard, semantic, virtualize |
235| `gsap` | Motion snippets (feeds the `--motion` dial) | reveal, parallax, stagger, scroll |
236| `google-fonts` | Google Fonts lookup | serif, mono, display, variable |
237
238### Available Stacks
239
240| Stack | Focus |
241|-------|-------|
242| `html-tailwind` | Tailwind utilities, responsive, a11y (DEFAULT) |
243| `react` | State, hooks, performance, patterns |
244| `nextjs` | SSR, routing, images, API routes |
245| `astro` | Islands architecture, partial hydration, content-driven |
246| `vue` | Composition API, Pinia, Vue Router |
247| `nuxtjs` | Nuxt 3, composables, SSR/SSG, auto-imports |
248| `nuxt-ui` | Nuxt UI components, theming, forms |
249| `svelte` | Runes, stores, SvelteKit |
250| `swiftui` | Views, State, Navigation, Animation |
251| `react-native` | Components, Navigation, Lists |
252| `flutter` | Widgets, State, Layout, Theming |
253| `shadcn` | shadcn/ui components, theming, forms, patterns |
254| `jetpack-compose` | Composables, Modifiers, State Hoisting, Recomposition |
255| `threejs` | Three.js scenes, materials, R3F patterns |
256| `angular` | Components, signals, RxJS, standalone APIs |
257| `laravel` | Blade, Livewire, Tailwind, form patterns |
258| `javafx` | Scene graph, FXML, CSS, controls |
259| `wpf` | XAML, MVVM, bindings, styles |
260| `winui` | WinUI 3, XAML, Fluent, bindings |
261| `avalonia` | Cross-platform XAML, MVVM, styling |
262| `uno` | Uno Platform, WinUI XAML cross-target |
263| `uwp` | UWP XAML, Fluent, adaptive UI |
264
265---
266
267## Example Workflow
268
269**User request:** "Build a landing page for a professional skincare service"
270
271### Step 1: Analyze Requirements
272- Product type: Beauty/Spa service
273- Style keywords: elegant, professional, soft
274- Industry: Beauty/Wellness
275- Stack: html-tailwind (default)
276
277### Step 2: Generate Design System (REQUIRED)
278
279```bash
280python3 scripts/search.py "beauty spa wellness service elegant" --design-system -p "Serenity Spa" -f markdown
281```
282
283**Output:** Complete design system with pattern, style, colors, typography, effects, and anti-patterns.
284
285### Step 3: Supplement with Detailed Searches (as needed)
286
287```bash
288# Get UX guidelines for animation and accessibility
289python3 scripts/search.py "animation accessibility" --domain ux
290
291# Get alternative typography options if needed
292python3 scripts/search.py "elegant luxury serif" --domain typography
293```
294
295### Step 4: Stack Guidelines
296
297```bash
298python3 scripts/search.py "layout responsive form" --stack html-tailwind
299```
300
301**Then:** Synthesize design system + detailed searches and implement the design.
302
303---
304
305## Output Formats
306
307The `--design-system` flag supports two output formats:
308
309```bash
310# ASCII box (default) - best for terminal display
311python3 scripts/search.py "fintech crypto" --design-system -f markdown
312
313# Markdown - best for documentation
314python3 scripts/search.py "fintech crypto" --design-system -f markdown
315```
316
317---
318
319## Tips for Better Results
320
3211. **Be specific with keywords** - "healthcare SaaS dashboard" > "app"
3222. **Search multiple times** - Different keywords reveal different insights
3233. **Combine domains** - Style + Typography + Color = Complete design system
3244. **Always check UX** - Search "animation", "z-index", "accessibility" for common issues
3255. **Use stack flag** - Get implementation-specific best practices
3266. **Iterate** - If first search doesn't match, try different keywords
327
328---
329
330## Common Rules for Professional UI
331
332These are frequently overlooked issues that make UI look unprofessional:
333
334### Icons & Visual Elements
335
336| Rule | Do | Don't |
337|------|----|----- |
338| **No emoji icons** | Use SVG icons (Heroicons, Lucide, Simple Icons) | Use emojis like 🎨 🚀 ⚙️ as UI icons |
339| **Stable hover states** | Use color/opacity transitions on hover | Use scale transforms that shift layout |
340| **Correct brand logos** | Research official SVG from Simple Icons | Guess or use incorrect logo paths |
341| **Consistent icon sizing** | Use fixed viewBox (24x24) with w-6 h-6 | Mix different icon sizes randomly |
342
343### Interaction & Cursor
344
345| Rule | Do | Don't |
346|------|----|----- |
347| **Cursor pointer** | Add `cursor-pointer` to all clickable/hoverable cards | Leave default cursor on interactive elements |
348| **Hover feedback** | Provide visual feedback (color, shadow, border) | No indication element is interactive |
349| **Smooth transitions** | Use `transition-colors duration-200` | Instant state changes or too slow (>500ms) |
350
351### Light/Dark Mode Contrast
352
353| Rule | Do | Don't |
354|------|----|----- |
355| **Glass card light mode** | Use `bg-white/80` or higher opacity | Use `bg-white/10` (too transparent) |
356| **Text contrast light** | Use `#0F172A` (slate-900) for text | Use `#94A3B8` (slate-400) for body text |
357| **Muted text light** | Use `#475569` (slate-600) minimum | Use gray-400 or lighter |
358| **Border visibility** | Use `border-gray-200` in light mode | Use `border-white/10` (invisible) |
359
360### Layout & Spacing
361
362| Rule | Do | Don't |
363|------|----|----- |
364| **Floating navbar** | Add `top-4 left-4 right-4` spacing | Stick navbar to `top-0 left-0 right-0` |
365| **Content padding** | Account for fixed navbar height | Let content hide behind fixed elements |
366| **Consistent max-width** | Use same `max-w-6xl` or `max-w-7xl` | Mix different container widths |
367
368---
369
370## Pre-Delivery Checklist
371
372Before delivering UI code, verify these items:
373
374### Visual Quality
375- [ ] No emojis used as icons (use SVG instead)
376- [ ] All icons from consistent icon set (Heroicons/Lucide)
377- [ ] Brand logos are correct (verified from Simple Icons)
378- [ ] Hover states don't cause layout shift
379- [ ] Use theme colors directly (bg-primary) not var() wrapper
380
381### Interaction
382- [ ] All clickable elements have `cursor-pointer`
383- [ ] Hover states provide clear visual feedback
384- [ ] Transitions are smooth (150-300ms)
385- [ ] Focus states visible for keyboard navigation
386
387### Light/Dark Mode
388- [ ] Light mode text has sufficient contrast (4.5:1 minimum)
389- [ ] Glass/transparent elements visible in light mode
390- [ ] Borders visible in both modes
391- [ ] Test both modes before delivery
392
393### Layout
394- [ ] Floating elements have proper spacing from edges
395- [ ] No content hidden behind fixed navbars
396- [ ] Responsive at 375px, 768px, 1024px, 1440px
397- [ ] No horizontal scroll on mobile
398
399### Accessibility
400- [ ] All images have alt text
401- [ ] Form inputs have labels
402- [ ] Color is not the only indicator
403- [ ] `prefers-reduced-motion` respected