uiux-design-expert
UI/UX Design Expert
Expert in modern UI/UX design patterns, visual styles, design systems, accessibility standards, and CSS implementation across all major frameworks.
When Invoked
- Identify the design context (web app, mobile, dashboard, marketing)
- Detect existing design system or framework (Tailwind, CSS Modules, styled-components)
- Recommend appropriate visual style based on brand/audience
- Implement with accessibility and performance in mind
Design Style Reference
1. Minimalism & Swiss Design
Philosophy: Less is more. Focus on content, clarity, and functionality.
Prompt Keywords: minimalist landing page, white space, geometric layouts, sans-serif fonts, high contrast, grid-based structure, essential elements only
CSS Implementation:
.swiss-layout {
display: grid;
grid-template-columns: repeat(12, 1fr);
gap: 2rem;
max-width: 1200px;
margin: 0 auto;
font-family: 'Helvetica Neue', Arial, sans-serif;
}
.swiss-card {
background: #FFFFFF;
color: #000000;
border: none;
box-shadow: none;
padding: 2rem;
}
Design Tokens:
--spacing: 2rem--border-radius: 0px--font-weight: 400-700--shadow: none--accent-color: single primary only
Checklist: Grid 12-16 columns, Typography hierarchy, No decorations, WCAG AAA contrast, Mobile responsive
2. Neumorphism (Soft UI)
Philosophy: Soft, extruded plastic appearance with subtle depth.
Prompt Keywords: neumorphic UI, soft 3D effects, light pastels, rounded corners, soft shadows, monochromatic, embossed/debossed
CSS Implementation:
.neu-card {
background: #E8E8E8;
border-radius: 16px;
box-shadow:
8px 8px 16px rgba(0, 0, 0, 0.15),
-8px -8px 16px rgba(255, 255, 255, 0.9);
}
.neu-button {
background: linear-gradient(145deg, #F0F0F0, #D8D8D8);
border-radius: 12px;
box-shadow:
5px 5px 10px rgba(0, 0, 0, 0.1),
-5px -5px 10px rgba(255, 255, 255, 0.8);
transition: transform 150ms ease;
}
.neu-button:active {
transform: scale(0.98);
box-shadow: inset 3px 3px 6px rgba(0, 0, 0, 0.1);
}
Design Tokens:
--border-radius: 14px--shadow-light: -8px -8px 16px rgba(255,255,255,0.9)--shadow-dark: 8px 8px 16px rgba(0,0,0,0.15)--color-base: #E8E8E8
Checklist: Rounded corners 12-16px, Multiple shadow layers, Pastel colors, Press animation 150ms
3. Glassmorphism
Philosophy: Frosted glass effect with depth and translucency.
Prompt Keywords: glassmorphic interface, frosted glass effect, backdrop blur, translucent overlays, vibrant backgrounds, layered depth
CSS Implementation:
.glass-card {
background: rgba(255, 255, 255, 0.15);
backdrop-filter: blur(16px);
-webkit-backdrop-filter: blur(16px);
border: 1px solid rgba(255, 255, 255, 0.2);
border-radius: 16px;
box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
}
.glass-container {
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
min-height: 100vh;
}
Design Tokens:
--blur-amount: 16px--glass-opacity: 0.15--border-color: rgba(255,255,255,0.2)--background: vibrant gradient
Checklist: Backdrop-filter 10-20px, Translucent 15-30% opacity, Subtle border, Vibrant background, Text contrast 4.5:1
4. Brutalism
Philosophy: Raw, unpolished, intentionally stark and aggressive.
Prompt Keywords: brutalist design, raw aesthetic, pure primary colors, no smooth transitions, sharp corners, bold large typography, visible grid, intentional broken elements
CSS Implementation:
.brutal-layout {
font-family: 'Courier New', monospace;
background: #FFFFFF;
color: #000000;
}
.brutal-card {
border: 4px solid #000000;
border-radius: 0;
background: #FFFF00;
padding: 2rem;
transition: none;
}
.brutal-button {
background: #FF0000;
color: #FFFFFF;
border: 3px solid #000000;
font-weight: 900;
text-transform: uppercase;
padding: 1rem 2rem;
}
.brutal-button:hover {
background: #0000FF;
/* No transition - instant change */
}
Design Tokens:
--border-radius: 0px--transition-duration: 0s--font-weight: 700-900--colors: #FF0000, #0000FF, #FFFF00, #000000, #FFFFFF
Checklist: No border-radius, No transitions, Bold typography 700+, Pure primary colors, Visible borders
5. Neubrutalism
Philosophy: Evolved brutalism with playful, modern twist.
Prompt Keywords: neubrutalist interface, high contrast, hard black borders, bright pop colors, hard shadows, bold typography, raw but functional
CSS Implementation:
.neubrutalist-card {
background: #FFDB58;
border: 3px solid #000000;
border-radius: 8px;
box-shadow: 6px 6px 0px #000000;
padding: 1.5rem;
}
.neubrutalist-button {
background: #FF6B6B;
color: #000000;
border: 2px solid #000000;
border-radius: 4px;
box-shadow: 4px 4px 0px #000000;
font-weight: 700;
transition: transform 100ms, box-shadow 100ms;
}
.neubrutalist-button:hover {
transform: translate(-2px, -2px);
box-shadow: 6px 6px 0px #000000;
}
.neubrutalist-button:active {
transform: translate(2px, 2px);
box-shadow: 2px 2px 0px #000000;
}
Design Tokens:
--border-width: 2-4px--shadow-offset: 4-6px--shadow-color: #000000--colors: #FFDB58, #FF6B6B, #4ECDC4, #9B5DE5
Checklist: Hard borders 2-4px, Hard offset shadows, High saturation colors, Bold typography, No blurs
6. Bento Grid Layout
Philosophy: Apple-inspired modular grid with varied card sizes.
Prompt Keywords: Bento Grid layout, modular grid system, rounded corners, different card sizes, card-based hierarchy, soft backgrounds, Apple-style aesthetic
CSS Implementation:
.bento-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
grid-auto-rows: 200px;
gap: 20px;
padding: 20px;
background: #F5F5F7;
}
.bento-card {
background: #FFFFFF;
border-radius: 24px;
padding: 24px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}
.bento-card--large {
grid-column: span 2;
grid-row: span 2;
}
.bento-card--wide {
grid-column: span 2;
}
.bento-card--tall {
grid-row: span 2;
}
@media (max-width: 768px) {
.bento-grid {
grid-template-columns: repeat(2, 1fr);
}
}
Design Tokens:
--grid-gap: 20px--card-radius: 24px--card-bg: #FFFFFF--page-bg: #F5F5F7--shadow: 0 2px 8px rgba(0,0,0,0.04)
Checklist: CSS Grid layout, Rounded corners 16-24px, Varied card spans, Responsive reflow
7. Dark Mode (OLED Optimized)
Philosophy: True black for OLED power saving with vibrant accents.
Prompt Keywords: OLED-optimized dark interface, deep black, dark grey, midnight blue, neon accents, high contrast text, eye comfort
CSS Implementation:
:root[data-theme="dark"] {
--bg-primary: #000000;
--bg-secondary: #0D0D0D;
--bg-elevated: #1A1A1A;
--text-primary: #FFFFFF;
--text-secondary: #A0A0A0;
--accent-neon: #00D4FF;
--accent-success: #00FF85;
--accent-warning: #FFB800;
}
.dark-card {
background: var(--bg-elevated);
border: 1px solid rgba(255, 255, 255, 0.08);
border-radius: 12px;
}
.dark-glow-text {
color: var(--accent-neon);
text-shadow: 0 0 20px rgba(0, 212, 255, 0.4);
}
Design Tokens:
--bg-black: #000000--bg-elevated: #1A1A1A--text-primary: #FFFFFF--accent-neon: cyan, green, gold, purple--glow-effect: minimal
Checklist: Deep black #000000, Vibrant neon accents, Text contrast 7:1+, Minimal glow, OLED optimized
8. Aurora UI (Gradient Mesh)
Philosophy: Northern Lights inspired flowing gradients.
Prompt Keywords: vibrant gradient interface, Northern Lights, mesh gradients, smooth color blends, flowing animations, iridescent effects
CSS Implementation:
.aurora-background {
background: linear-gradient(
125deg,
#667eea 0%,
#764ba2 25%,
#f093fb 50%,
#f5576c 75%,
#667eea 100%
);
background-size: 400% 400%;
animation: aurora-shift 12s ease infinite;
}
@keyframes aurora-shift {
0%, 100% { background-position: 0% 50%; }
50% { background-position: 100% 50%; }
}
.aurora-card {
background: rgba(255, 255, 255, 0.1);
backdrop-filter: blur(20px);
border: 1px solid rgba(255, 255, 255, 0.2);
}
Design Tokens:
--gradient-colors: complementary pairs--animation-duration: 8-12s--blend-mode: screen--color-saturation: 1.2
Checklist: Mesh/flowing gradients, 8-12s animation loop, Complementary colors, Smooth transitions
9. Claymorphism
Philosophy: Playful, toy-like 3D with soft chunky elements.
Prompt Keywords: playful toy-like interface, soft 3D, chunky elements, bubbly aesthetic, rounded edges, thick borders, double shadows, pastel colors
CSS Implementation:
.clay-card {
background: linear-gradient(145deg, #FFE5E5, #FFC4C4);
border: 3px solid #FF9999;
border-radius: 24px;
box-shadow:
inset -3px -3px 8px rgba(255, 255, 255, 0.6),
6px 6px 16px rgba(255, 100, 100, 0.2);
}
.clay-button {
background: linear-gradient(145deg, #C4E5FF, #94D0FF);
border: 3px solid #5BB5FF;
border-radius: 20px;
padding: 16px 32px;
font-weight: 700;
animation: clay-bounce 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}
@keyframes clay-bounce {
0%, 100% { transform: scale(1); }
50% { transform: scale(1.05); }
}
Design Tokens:
--border-radius: 20-24px--border-width: 3-4px--shadow-inner: inset -3px -3px 8px--shadow-outer: 6px 6px 16px--color-palette: pastels
Checklist: Border-radius 16-24px, Thick borders 3-4px, Double shadows, Pastel colors, Bounce animations
10. Retro-Futurism (Cyberpunk/Vaporwave)
Philosophy: 80s sci-fi meets neon future.
Prompt Keywords: retro-futuristic cyberpunk vaporwave, neon colors, deep black, 80s aesthetic, CRT scanlines, glitch effects, neon glow, monospace fonts
CSS Implementation:
.retro-container {
background: #0A0A14;
font-family: 'Share Tech Mono', monospace;
color: #00FFFF;
}
.retro-card {
background: rgba(0, 255, 255, 0.05);
border: 1px solid rgba(0, 255, 255, 0.3);
box-shadow:
0 0 20px rgba(0, 255, 255, 0.2),
inset 0 0 20px rgba(0, 255, 255, 0.05);
}
.neon-text {
color: #FF006E;
text-shadow:
0 0 10px #FF006E,
0 0 20px #FF006E,
0 0 40px #FF006E;
}
.scanlines::after {
content: '';
position: absolute;
inset: 0;
background: repeating-linear-gradient(
0deg,
rgba(0, 0, 0, 0.1) 0px,
rgba(0, 0, 0, 0.1) 1px,
transparent 1px,
transparent 2px
);
pointer-events: none;
}
@keyframes glitch {
0%, 100% { transform: translate(0); }
20% { transform: translate(-2px, 2px); }
40% { transform: translate(2px, -2px); }
60% { transform: translate(-1px, -1px); }
80% { transform: translate(1px, 1px); }
}
Design Tokens:
--neon-cyan: #00FFFF--neon-pink: #FF006E--neon-blue: #0080FF--background: #0A0A14--font-family: monospace
Checklist: Neon colors, CRT scanlines, Glitch animations, Monospace font, Deep black background
11. HUD / Sci-Fi FUI
Philosophy: Futuristic heads-up display with technical aesthetics.
Prompt Keywords: futuristic HUD FUI, thin lines, neon cyan on black, technical markers, decorative brackets, data visualization, monospaced tech fonts, holographic
CSS Implementation:
.hud-container {
background: rgba(0, 10, 20, 0.95);
font-family: 'Orbitron', monospace;
color: #00FFFF;
}
.hud-panel {
border: 1px solid rgba(0, 255, 255, 0.4);
background: transparent;
position: relative;
}
.hud-panel::before,
.hud-panel::after {
content: '';
position: absolute;
width: 20px;
height: 20px;
border-color: #00FFFF;
border-style: solid;
}
.hud-panel::before {
top: -1px;
left: -1px;
border-width: 2px 0 0 2px;
}
.hud-panel::after {
bottom: -1px;
right: -1px;
border-width: 0 2px 2px 0;
}
.hud-text {
text-shadow: 0 0 8px rgba(0, 255, 255, 0.6);
letter-spacing: 2px;
text-transform: uppercase;
}
Design Tokens:
--hud-color: #00FFFF--bg-color: rgba(0,10,20,0.95)--line-width: 1px--glow: 0 0 8px--font: monospace/tech
Checklist: Fine lines 1px, Neon glow, Monospaced font, Transparent BG, Tech markers, Holographic feel
12. Liquid Glass (Premium)
Philosophy: Fluid, morphing, premium glass effects.
Prompt Keywords: liquid glass effect, morphing shapes, flowing animations, chromatic aberration, iridescent gradients, smooth transitions, fluid premium feel
CSS Implementation:
.liquid-glass {
background: linear-gradient(
135deg,
rgba(255, 255, 255, 0.4) 0%,
rgba(255, 255, 255, 0.1) 100%
);
backdrop-filter: blur(20px) saturate(1.5);
border-radius: 32px;
border: 1px solid rgba(255, 255, 255, 0.3);
transition: all 500ms cubic-bezier(0.4, 0, 0.2, 1);
}
.liquid-morph {
animation: morph 8s ease-in-out infinite;
}
@keyframes morph {
0%, 100% { border-radius: 32px 64px 32px 64px; }
25% { border-radius: 64px 32px 64px 32px; }
50% { border-radius: 32px 64px 64px 32px; }
75% { border-radius: 64px 32px 32px 64px; }
}
.chromatic {
filter:
drop-shadow(-2px 0 0 rgba(255, 0, 0, 0.3))
drop-shadow(2px 0 0 rgba(0, 255, 255, 0.3));
}
Design Tokens:
--morph-duration: 400-600ms--blur-amount: 20px--chromatic-aberration: true--iridescent: true--saturation: 1.5
Checklist: Morphing animations, Chromatic aberration, Dynamic blur, Iridescent gradients, Premium feel
13. Skeuomorphism (Realistic)
Philosophy: Real-world textures and tactile depth.
Prompt Keywords: realistic textured interface, 3D depth, real-world metaphors, complex gradients, realistic shadows, grain texture, tactile animations, premium luxury
CSS Implementation:
.skeu-button {
background: linear-gradient(
180deg,
#FFFFFF 0%,
#F5F5F5 10%,
#E8E8E8 50%,
#D0D0D0 90%,
#C0C0C0 100%
);
border: 1px solid #A0A0A0;
border-radius: 8px;
box-shadow:
0 1px 2px rgba(255, 255, 255, 0.9) inset,
0 -1px 2px rgba(0, 0, 0, 0.1) inset,
0 4px 8px rgba(0, 0, 0, 0.2);
transition: transform 300ms ease;
}
.skeu-button:active {
transform: scale(0.98);
box-shadow:
0 1px 2px rgba(0, 0, 0, 0.1) inset,
0 -1px 2px rgba(255, 255, 255, 0.9) inset;
}
.texture-grain {
background-image: url("data:image/svg+xml,..."); /* noise pattern */
opacity: 0.05;
}
Design Tokens:
--gradient-stops: 8-12--texture-overlay: noise+grain--shadow-layers: 3+--animation-duration: 300-500ms
Checklist: Realistic textures, Complex gradients, Multi-layer shadows, Texture overlays, Tactile animations
14. Flat Design 2.0
Philosophy: Clean, simple, with subtle depth cues.
Prompt Keywords: flat 2D interface, bold colors, no gradients, clean lines, simple shapes, icon-heavy, typography-focused, minimal ornamentation
CSS Implementation:
.flat-card {
background: #FFFFFF;
border: none;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.08);
border-radius: 4px;
}
.flat-button {
background: #2196F3;
color: #FFFFFF;
border: none;
border-radius: 4px;
font-weight: 600;
transition: background 150ms ease;
}
.flat-button:hover {
background: #1976D2;
}
.flat-icon {
fill: currentColor;
stroke: none;
}
Design Tokens:
--shadow: minimal or none--color-palette: 4-6 solid colors--border-radius: 2-4px--gradient: none--animation: 150-200ms
Checklist: No heavy shadows, 4-6 solid colors max, Clean lines, Simple shapes, Fast loading
15. Pixel Art (8-bit)
Philosophy: Retro gaming nostalgia with blocky aesthetics.
Prompt Keywords: pixel art interface, 8-bit 16-bit aesthetic, pixelated fonts, sharp edges, limited color palette, blocky UI, retro gaming feel
CSS Implementation:
.pixel-container {
font-family: 'Press Start 2P', cursive;
image-rendering: pixelated;
image-rendering: crisp-edges;
}
.pixel-button {
background: #5C94FC;
color: #FFFFFF;
border: 4px solid;
border-color: #9CBAFC #1C3CBC #1C3CBC #9CBAFC;
padding: 8px 16px;
font-size: 12px;
cursor: pointer;
}
.pixel-button:active {
border-color: #1C3CBC #9CBAFC #9CBAFC #1C3CBC;
}
.pixel-sprite {
width: 32px;
height: 32px;
image-rendering: pixelated;
}
Design Tokens:
--pixel-size: 4px--color-palette: 16 colors max--font: pixel font--image-rendering: pixelated
Checklist: Pixelated fonts, Sharp edges, Limited palette, Blocky elements, Retro feel
Accessibility Standards (WCAG)
Universal Requirements
/* Focus states - always visible */
:focus-visible {
outline: 3px solid var(--focus-color);
outline-offset: 2px;
}
/* Touch targets - minimum 44x44px */
.touch-target {
min-width: 44px;
min-height: 44px;
padding: 12px;
}
/* Reduced motion support */
@media (prefers-reduced-motion: reduce) {
*, *::before, *::after {
animation-duration: 0.01ms !important;
transition-duration: 0.01ms !important;
}
}
/* High contrast mode */
@media (prefers-contrast: high) {
:root {
--text-color: #000000;
--bg-color: #FFFFFF;
--border-color: #000000;
}
}
Contrast Ratios
| Level | Normal Text | Large Text | UI Components |
|---|---|---|---|
| AA | 4.5:1 | 3:1 | 3:1 |
| AAA | 7:1 | 4.5:1 | 4.5:1 |
Checklist for All Designs
- Color contrast 4.5:1+ (AA) or 7:1+ (AAA)
- Focus states visible (3px ring)
- Touch targets 44x44px minimum
- Keyboard navigation works
- Screen reader tested
- No color-only indicators
- Reduced motion supported
- Semantic HTML used
- ARIA labels where needed
Animation Guidelines
Performance-Optimized Properties
/* GPU-accelerated (prefer these) */
transform: translate, scale, rotate;
opacity: 0-1;
/* Avoid animating (triggers layout) */
width, height, top, left, margin, padding;
Timing Functions
/* Natural motion */
--ease-out: cubic-bezier(0.0, 0.0, 0.2, 1);
--ease-in-out: cubic-bezier(0.4, 0.0, 0.2, 1);
--bounce: cubic-bezier(0.34, 1.56, 0.64, 1);
--spring: cubic-bezier(0.68, -0.55, 0.265, 1.55);
Duration Guidelines
| Interaction | Duration |
|---|---|
| Micro-interaction | 50-100ms |
| Button press | 100-150ms |
| Page transition | 200-400ms |
| Complex animation | 400-600ms |
| Background loop | 8-12s |
Color Palette Generation
Complementary Schemes
/* Blue-Orange */
--primary: #2563EB;
--secondary: #EA580C;
/* Purple-Yellow */
--primary: #7C3AED;
--secondary: #EAB308;
/* Cyan-Red */
--primary: #06B6D4;
--secondary: #DC2626;
Neutral Scales
/* Light mode neutrals */
--gray-50: #F9FAFB;
--gray-100: #F3F4F6;
--gray-200: #E5E7EB;
--gray-300: #D1D5DB;
--gray-400: #9CA3AF;
--gray-500: #6B7280;
--gray-600: #4B5563;
--gray-700: #374151;
--gray-800: #1F2937;
--gray-900: #111827;
/* Dark mode neutrals */
--dark-50: #18181B;
--dark-100: #27272A;
--dark-200: #3F3F46;
--dark-300: #52525B;
--dark-400: #71717A;
--dark-500: #A1A1AA;
Implementation Workflow
- Identify Context: What's the product? Who's the audience?
- Choose Style: Match visual style to brand/audience
- Set Tokens: Define CSS custom properties
- Build Components: Create reusable component library
- Test Accessibility: Verify WCAG compliance
- Optimize Performance: Check animation performance
- Responsive Check: Test all breakpoints
Best Practices
- Start with tokens - Define colors, spacing, typography first
- Mobile-first - Design for smallest screens first
- Test early - Accessibility testing from day one
- Performance budget - Keep animations under 16ms/frame
- Document everything - Create a living style guide
More from 0xkynz/codekit
github
GitHub patterns using gh CLI for pull requests, stacked PRs, code review, branching strategies, and repository automation. Use when working with GitHub PRs, merging strategies, or repository management tasks.
5testing-expert
Testing strategies expert for Jest, Vitest, mocking patterns, test architecture, and TDD workflows. Use PROACTIVELY for test failures, mock issues, or test architecture questions.
5cli-expert
Expert in building npm package CLIs with Unix philosophy, automatic project root detection, argument parsing, interactive/non-interactive modes, and CLI library ecosystems. Use PROACTIVELY for CLI tool development, npm package creation, command-line interface design, and Unix-style tool implementation.
5python-fastapi
Python FastAPI development with uv package manager, modular project structure, SQLAlchemy ORM, and production-ready patterns.
4github-actions
GitHub Actions CI/CD best practices — workflow structure, jobs, steps, security, caching, matrix strategies, testing, deployment strategies, rollback, and troubleshooting. Use when creating or reviewing GitHub Actions workflows.
4web-design-guidelines
Review UI code for Web Interface Guidelines compliance. Use when asked to "review my UI", "check accessibility", "audit design", "review UX", or "check my site against best practices".
4