| name | ui-ux-pro-max |
| description | UI/UX design intelligence. 67 styles, 96 palettes, 57 font pairings, 25 charts, 13 stacks (React, Next.js, Vue, Svelte, SwiftUI, React Native, Flutter, Tailwind, shadcn/ui). Actions: plan, build, create, design, implement, review, fix, improve, optimize, enhance, refactor, check UI/UX code. Projects: website, landing page, dashboard, admin panel, e-commerce, SaaS, portfolio, blog, mobile app, .html, .tsx, .vue, .svelte. Elements: button, modal, navbar, sidebar, card, table, form, chart. Styles: glassmorphism, claymorphism, minimalism, brutalism, neumorphism, bento grid, dark mode, responsive, skeuomorphism, flat design. Topics: color palette, accessibility, animation, layout, typography, font pairing, spacing, hover, shadow, gradient. Integrations: shadcn/ui MCP for component search and examples. Use when you need a searchable starting point — a style, palette, font pairing, chart type, landing structure, or stack-specific UX rule — for a UI you are about to build or review. Do NOT use as a source of truth for SkyyRose surfaces: its recommendations are generic and have been observed to propose CUT fonts (Cormorant) and banned materials (Liquid Glass) for luxury queries — filter every output through `luxury-design-taste`, which outranks this skill's tables. |
UI/UX Pro Max - Design Intelligence
Comprehensive design guide for web and mobile applications. Contains 67 styles, 96 color palettes, 57 font pairings, 99 UX guidelines, and 25 chart types across 13 technology stacks. Searchable database with priority-based recommendations.
When to use
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
When NOT to use: as the authority on any SkyyRose surface. This is a generic recommendation
database; skyyrose.co's palette, fonts, and materials are locked canon and this skill does not know
them. Observed 2026-07-28 — a luxury streetwear e-commerce dark query returned style
Liquid Glass and heading font Cormorant; Cormorant is on the project's CUT list and
glassmorphism is banned outside product-card-holo. Use it for structure, charts, and stack rules;
route every aesthetic recommendation through luxury-design-taste before it touches a file. Also not
for native iOS (liquid-glass-design) or token-system generation (design-system).
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
Check if Python is installed:
python3 --version || python --version
If Python is not installed, install it based on user's OS:
macOS:
brew install python3
Ubuntu/Debian:
sudo apt update && sudo apt install python3
Windows:
winget install Python.Python.3.12
How to Use This Skill
When user requests UI/UX work (design, build, create, implement, review, fix, improve), follow this workflow:
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 skills/ui-ux-pro-max/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 skills/ui-ux-pro-max/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:
python3 skills/ui-ux-pro-max/scripts/search.py "<query>" --design-system --persist -p "Project Name"
This creates:
design-system/MASTER.md — Global Source of Truth with all design rules
design-system/pages/ — Folder for page-specific overrides
With page-specific override:
python3 skills/ui-ux-pro-max/scripts/search.py "<query>" --design-system --persist -p "Project Name" --page "dashboard"
This also creates:
design-system/pages/dashboard.md — Page-specific deviations from Master
How hierarchical retrieval works:
- When building a specific page (e.g., "Checkout"), first check
design-system/pages/checkout.md
- If the page file exists, its rules override the Master file
- If not, use
design-system/MASTER.md exclusively
Step 3: Supplement with Detailed Searches (as needed)
After getting the design system, use domain searches to get additional details:
python3 skills/ui-ux-pro-max/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 skills/ui-ux-pro-max/scripts/search.py "<keyword>" --stack html-tailwind
Available stacks: html-tailwind, react, nextjs, vue, svelte, swiftui, react-native, flutter, shadcn, jetpack-compose
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 by product type | 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 |
react | React/Next.js performance | waterfall, bundle, suspense, memo, rerender, cache |
web | Web interface guidelines | aria, focus, keyboard, semantic, virtualize |
prompt | AI prompts, CSS keywords | (style name) |
Available Stacks
| Stack | Focus |
|---|
html-tailwind | Tailwind utilities, responsive, a11y (DEFAULT) |
react | State, hooks, performance, patterns |
nextjs | SSR, routing, images, API routes |
vue | Composition API, Pinia, Vue Router |
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 |
Example Workflow
User request: "Làm landing page cho dịch vụ chăm sóc da chuyên nghiệp"
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 skills/ui-ux-pro-max/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)
python3 skills/ui-ux-pro-max/scripts/search.py "animation accessibility" --domain ux
python3 skills/ui-ux-pro-max/scripts/search.py "elegant luxury serif" --domain typography
Step 4: Stack Guidelines
python3 skills/ui-ux-pro-max/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:
python3 skills/ui-ux-pro-max/scripts/search.py "fintech crypto" --design-system
python3 skills/ui-ux-pro-max/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
Verification
The recommendation database itself is checkable — its scripts must run, and its output must be
filtered before use. The checklist above is not a gate until each item is bound to a command.
- The search tool actually runs (a broken script silently degrades this skill to guesswork):
python3 .claude/skills/ui-ux-pro-max/scripts/search.py "accessibility" --domain ux -n 3
PASS: exits 0 and the header reads **Found:** 3 results (observed 2026-07-28 [repro]).
A traceback means the data files or Python version moved. Found: 0 results is also a failure
of this check — observed with the query dashboard analytics, which matches nothing in
ux-guidelines.csv. Zero rows means the database did not answer you; it does not mean "no rules
apply". Re-query or stop — never fill the gap from memory.
- Brand-canon filter on every recommendation, before it reaches a file. Run the
--design-system output through the CUT-font and banned-material check:
python3 .claude/skills/ui-ux-pro-max/scripts/search.py "luxury streetwear e-commerce dark" \
--design-system -f markdown \
| grep -iE 'playfair|cormorant|bebas|yellowtail|glassmorphism|liquid glass'
PASS for direct use: exits 1, prints nothing.
Observed 2026-07-28: it printed **Name:** Liquid Glass and **Heading:** Cormorant — i.e.
this check FAILED, which is exactly why it exists. On a hit, discard the aesthetic half of the
output and take only the structural half (pattern, sections, CTA placement, chart type). [repro]
- Contrast claims are computed, never read off a table. The database prints palettes; it does
not measure them against your background:
python3 -c "
def lum(h):
r,g,b=[int(h[i:i+2],16)/255 for i in (0,2,4)]
f=lambda c: c/12.92 if c<=0.03928 else ((c+0.055)/1.055)**2.4
r,g,b=f(r),f(g),f(b); return 0.2126*r+0.7152*g+0.0722*b
for fg,bg in [('CA8A04','FAFAF9')]:
l1,l2=sorted((lum(fg),lum(bg)),reverse=True)
print(fg,'on',bg,f'{(l1+0.05)/(l2+0.05):.2f}:1')
"
PASS: ≥ 4.5:1 for normal text, ≥ 3:1 for large text and UI components.
Observed 2026-07-28: the CTA/background pair this skill recommended for a luxury query,
#CA8A04 on #FAFAF9, measures 2.81:1 — below AA for normal text and below the 3:1 UI
floor. A recommended colour that fails this is rejected, whatever the table says. [repro]
- The Pre-Delivery Checklist's render items — 375/768/1024/1440 responsiveness, focus
visibility, light/dark contrast in situ — are BROWSER checks this skill cannot execute. A SKIP
is not a PASS. Name the browser-capable session or caller that closes them; on skyyrose.co that
is
verify-theme.sh aspects responsive and a11y-interactive, both labelled BROWSER. Any
severity claim about the live site needs its own [live] probe.
Inherited: a gate that dies is not a gate that passed — if a command above errors or times out, its
empty output is an artifact; re-run by hand (bug-230). Before blaming a failing check on your change,
run it against a pristine tree with git archive HEAD <path> | tar -x -C <scratch>; never
git stash, the stack is shared across worktrees.
Worked example
Real run, this repo, 2026-07-28:
$ python3 .claude/skills/ui-ux-pro-max/scripts/search.py \
"luxury streetwear e-commerce dark" --design-system -p "SkyyRose" -f markdown
- **Name:** Liquid Glass
- **Performance:** ⚠ Moderate-Poor | **Accessibility:** ⚠ Text contrast
| Primary |
- **Heading:** Cormorant
- **Body:** Montserrat
Verification #2 hit on both Liquid Glass and Cormorant [repro]. Disposition: aesthetic half
discarded — Cormorant is on the project CUT list (CLAUDE.md §6) and glassmorphism is banned
outside product-card-holo; the recommended #FAFAF9 light background inverts the locked
#0A0A0A dark surface. Structural half kept: the returned pattern (Horizontal Scroll Journey —
intro, horizontal track, detail reveal, vertical footer; floating sticky CTA) is brand-neutral and
usable. This is the intended use of the skill: structure from the database, aesthetics from canon.
Failure modes
- Taking the aesthetic output verbatim on a SkyyRose surface. Demonstrated above — it proposes a
CUT font and a banned material for exactly the query a SkyyRose task would use. This is the #1
failure mode of this skill and the reason Verification #2 exists.
- Trusting the
Accessibility: ⚠ Text contrast warning to be specific. It is a category flag,
not a measurement. Compute the ratio (Verification #3).
- Defaulting to
html-tailwind because Step 4 says so. The SkyyRose theme is classic PHP with
vanilla CSS and no Tailwind — the default stack flag produces advice that cannot be applied there.
Pass the real stack, or take none.
- Treating the Pre-Delivery Checklist as passed because it was read. A checkbox with no command
behind it is decoration; bind each to a check or hand it to a browser-capable caller by name.
- A silent traceback from
search.py leaving you to fill the gap from memory — that is the
fail-open pattern. Absent tool output = stop, not improvise (bug-230, ×6).