PluginBench
Skill
Review
Audit score 70

ui-design-system

samhvw8/dot-claude

React UI component systems with TailwindCSS, Radix UI, and shadcn/ui for accessible, production-ready interfaces.

What is ui-design-system?

Build and review modern React UI component systems using TailwindCSS for styling, Radix UI for accessible primitives, and shadcn/ui for pre-built components. Use this skill when creating design systems, implementing component libraries, auditing accessibility, or setting up dark mode and theming.

  • Review and audit component architecture, accessibility (WCAG 2.1/2.2), performance, and responsive design
  • Design production-ready components with atomic design principles, design tokens, and variant systems
  • Improve existing UIs through accessibility enhancement, performance optimization, and component refactoring
  • Implement dark mode and theming using CSS variables and Tailwind configuration
  • Build accessible interactions with Radix UI primitives and semantic HTML
  • Create responsive layouts with mobile-first design and Tailwind breakpoints

How to install ui-design-system

npx skills add https://github.com/samhvw8/dot-claude --skill ui-design-system
Prerequisites
  • Node.js and npm/yarn installed
  • React or Next.js project
  • Tailwind CSS configured in your project
  • Basic familiarity with React components and hooks
Claude Code
Cursor
Windsurf
Cline

How to use ui-design-system

  1. 1.Install the skill using: npx skills add https://github.com/samhvw8/dot-claude --skill ui-design-system
  2. 2.Set up TailwindCSS as the styling foundation in your project
  3. 3.Install shadcn/ui CLI and add components as needed for your design system
  4. 4.Configure CSS variables for design tokens (primitives, semantics, component-level)
  5. 5.Enable dark mode in Tailwind config using class strategy and theme provider
  6. 6.Review existing components against accessibility, performance, and composition principles
  7. 7.Build new components by composing Radix primitives with Tailwind utilities or using shadcn/ui components

Use cases

Good for
  • Building component libraries and design systems from scratch
  • Implementing shadcn/ui components in admin dashboards and CRUD applications
  • Auditing existing interfaces for accessibility compliance and performance issues
  • Adding dark mode support and theming to React/Next.js applications
  • Refactoring monolithic components into reusable, composable pieces
Who it's for
  • Frontend engineers building design systems
  • React/Next.js developers implementing component libraries
  • Product teams auditing UI accessibility and performance
  • Developers migrating to shadcn/ui or Tailwind-based workflows
  • Teams establishing design token systems and theming strategies

ui-design-system FAQ

When should I use shadcn/ui vs. Radix UI directly?

Use shadcn/ui for standard UI components that need beautiful defaults and quick implementation (buttons, forms, modals). Use Radix UI primitives when you need custom designs, shadcn/ui doesn't have the component, or you're building a specialized component library.

How do I set up dark mode with this stack?

Enable dark mode in Tailwind config with class strategy, define semantic CSS variables that change in .dark selector, and use a theme provider component to toggle the dark class on the root element.

What's the three-tier design token system?

Tier 1 (Primitives): immutable base colors and values. Tier 2 (Semantics): theme-aware tokens like --background and --foreground that change in dark mode. Tier 3 (Components): component-specific tokens like --button-height.

How do I ensure accessibility with this stack?

Radix UI handles most accessibility automatically with ARIA attributes and keyboard navigation. Never override these features. Always use semantic HTML, test with screen readers, and audit with WCAG 2.1/2.2 guidelines.

Should I use arbitrary Tailwind values or stick to the design system?

Stick to the design system tokens and spacing scale whenever possible for consistency. Only use arbitrary values for exceptions, and consider adding them to your Tailwind config if they recur.

Full instructions (SKILL.md)

Source of truth, from samhvw8/dot-claude.


name: ui-design-system description: "React UI component systems with TailwindCSS + Radix + shadcn/ui. Stack: TailwindCSS (styling), Radix UI (primitives), shadcn/ui (components), React/Next.js. Capabilities: design system architecture, accessible components, responsive layouts, theming, dark mode, component composition. Actions: review, design, build, improve, refactor UI components. Keywords: TailwindCSS, Radix UI, shadcn/ui, design system, component library, accessibility, ARIA, responsive, dark mode, theming, CSS variables, component architecture, atomic design, design tokens, variant, slot, composition. Use when: building component libraries, implementing shadcn/ui, creating accessible UIs, setting up design systems, adding dark mode/theming, reviewing UI component architecture." license: MIT version: 2.0.0

UI/UX Design & Development Expert

Comprehensive UI/UX design, review, and improvement for modern web applications.

Production-ready implementations with TailwindCSS + Radix UI + shadcn/ui and modern React patterns.

Stack Architecture

The Three Pillars

Layer 1: TailwindCSS (Styling Foundation)

  • Utility-first CSS framework with build-time generation
  • Zero runtime overhead, minimal production bundles
  • Design tokens: colors, spacing, typography, breakpoints
  • Responsive utilities and dark mode support

Layer 2: Radix UI (Behavior & Accessibility)

  • Unstyled, accessible component primitives
  • WAI-ARIA compliant with keyboard navigation
  • Focus management and screen reader support
  • Unopinionated - full styling control

Layer 3: shadcn/ui (Beautiful Components)

  • Pre-built components = Radix primitives + Tailwind styling
  • Copy-paste distribution (you own the code)
  • Built-in React Hook Form + Zod validation
  • Customizable variants with type safety

Architecture Hierarchy

Application Layer
    ↓
shadcn/ui Components (Beautiful defaults, ready-to-use)
    ↓
Radix UI Primitives (Accessible behavior, unstyled)
    ↓
TailwindCSS Utilities (Design system, styling)

Key Principle: Each layer enhances the one below. Start with Tailwind for styling, add Radix for accessible behavior, use shadcn/ui for complete components.

Core Capabilities

UI/UX Review & Audit

Systematic evaluation of existing interfaces:

  • Component Architecture Review: Analyze component composition, reusability, and single responsibility
  • Accessibility Audit: WCAG 2.1/2.2 AA/AAA compliance, keyboard navigation, screen reader support
  • Performance Analysis: Core Web Vitals (LCP, FID, CLS), bundle size, render performance
  • Responsive Design Review: Mobile-first implementation, breakpoint usage, container queries
  • Design System Consistency: Token usage, spacing scale adherence, color palette compliance
  • Code Quality: React best practices, hooks usage, state management patterns
  • Visual Hierarchy: Typography scale, spacing rhythm, color contrast, focus indicators

UI/UX Design

Creating production-ready interface designs:

  • Component Design: Atomic design principles, composition patterns, variant systems
  • Layout Architecture: Grid systems, flexbox patterns, responsive containers
  • Interaction Design: Hover states, focus states, loading states, error states
  • Design Tokens: Three-tier token system (primitive → semantic → component)
  • Color Systems: OKLCH color space, accessible palettes, dark mode support
  • Typography Systems: Scale design, hierarchy, readability optimization
  • Animation & Transitions: Micro-interactions, loading feedback, state changes

UI/UX Improvement

Enhancing existing implementations:

  • Accessibility Enhancement: ARIA patterns, semantic HTML, keyboard navigation
  • Performance Optimization: Code splitting, lazy loading, virtualization, image optimization
  • Responsive Refinement: Breakpoint optimization, mobile-first improvements
  • Component Refactoring: Extract shared patterns, reduce complexity, improve reusability
  • Visual Polish: Spacing consistency, typography refinement, color harmony
  • State Management: Optimistic updates, error handling, loading states
  • Developer Experience: Component documentation, Storybook stories, type safety

Styling Integration

Framework-agnostic styling approaches:

  • Tailwind with Components: Utility-first styling for any framework
  • CSS-in-JS: emotion, styled-components, vanilla-extract
  • CSS Modules: Scoped styles without runtime overhead
  • Design System Integration: Token-based styling across frameworks

When to Use Each Layer

Use TailwindCSS Directly When:

  • Building custom layouts and spacing
  • Styling static content and containers
  • Rapid prototyping without complex interactions
  • Non-interactive UI elements

Example scenarios: Hero sections, grid layouts, cards without interaction, text styling

Use Radix UI Primitives When:

  • Building custom component libraries
  • Need accessibility but require custom design
  • shadcn/ui doesn't have the component you need
  • Full control over component structure required

Example scenarios: Custom date picker, unique navigation pattern, specialized modal behavior

Use shadcn/ui Components When:

  • Building standard UI components quickly
  • Need beautiful defaults with customization options
  • Enterprise application development
  • Form-heavy applications with validation

Example scenarios: Admin dashboards, CRUD applications, settings pages, data tables

Critical Design Principles

1. Progressive Enhancement

Start simple, enhance as needed:

  1. Tailwind utilities for basic styling
  2. Add Radix primitives for interaction
  3. Use shadcn/ui for complete solutions
  4. Customize components in your codebase

2. Composition Over Complexity

Build complex UIs from simple, reusable components:

  • Small, focused components (single responsibility)
  • Compose primitives rather than creating monoliths
  • Leverage component slots and children patterns

3. Accessibility First

Radix UI handles accessibility automatically:

  • ARIA attributes applied correctly
  • Keyboard navigation built-in
  • Focus management and trapping
  • Screen reader compatibility

Never override accessibility features - enhance them.

4. Design Token Consistency

Use Tailwind's design system consistently:

  • Stick to spacing scale (4, 8, 16, 24px)
  • Use color palette (50-950 shades)
  • Apply typography scale systematically
  • Avoid arbitrary values unless necessary

5. Mobile-First Responsive

Always design mobile-first, scale up:

  • Base styles for mobile
  • Use breakpoints (sm, md, lg, xl, 2xl) to enhance
  • Test on actual devices, not just browser resize

Setup Strategy

Installation Order

  1. TailwindCSS - Foundation
  2. shadcn/ui CLI - Includes Radix dependencies
  3. Add components - Install only what you need
  4. Configure theme - CSS variables + Tailwind config
  5. Setup dark mode - Theme provider + toggle

Configuration Best Practices

Tailwind Config:

  • Use content paths correctly (scan all component files)
  • Extend theme with CSS variables, not hardcoded values
  • Enable dark mode with class strategy
  • Install tailwindcss-animate plugin

CSS Variables (Three-Tier System):

:root {
  /* Tier 1: Primitives (immutable) */
  --gray-50: 250 250 250;
  --gray-900: 24 24 27;
  --blue-500: oklch(0.55 0.22 264);

  /* Tier 2: Semantics (theme-aware) */
  --background: var(--gray-50);
  --foreground: var(--gray-900);
  --primary: var(--blue-500);

  /* Tier 3: Components */
  --button-height: 2.5rem;
  --card-padding: 1.5rem;
}

.dark {
  /* Only semantic tokens change */
  --background: var(--gray-900);
  --foreground: var(--gray-50);
}

Color Space Recommendation:

  • Modern: Use OKLCH for perceptual uniformity
  • Legacy support: Use HSL with fallbacks
  • Avoid: RGB/HEX for design tokens (not human-readable)

Token Storage:

  • Store in JSON for platform-agnostic distribution
  • Transform to CSS variables, Swift, XML using Style Dictionary
  • Version control tokens separately from component code

Path Aliases:

  • Configure @/components and @/lib in tsconfig
  • Ensure consistency between Next.js and TypeScript configs
  • Use aliases in imports for cleaner code

Integration Patterns

Pattern 1: shadcn/ui + Custom Tailwind

Use shadcn/ui components as base, customize with Tailwind classes:

  • Apply custom spacing, colors via className prop
  • Override default styles with Tailwind utilities
  • Maintain component accessibility

Pattern 2: Radix Primitives + Tailwind

Build custom components from scratch:

  • Use Radix for behavior (Dialog, Dropdown, etc.)
  • Style completely with Tailwind utilities
  • Full control over structure and appearance

Pattern 3: Hybrid Approach

Modify shadcn/ui components in your codebase:

  • Edit component files in components/ui/
  • Add new variants, sizes, or styles
  • Maintain type safety with CVA (Class Variance Authority)

Pattern 4: Component Composition

Combine multiple primitives for complex UIs:

  • Popover + Select for searchable dropdown
  • Dialog + Form for modal forms
  • Tabs + Cards for multi-section interfaces

Design Token Architecture

Use three-tier token system for scalable, maintainable design systems:

  • Tier 1 (Primitive): Raw values (gray-50, spacing-4)
  • Tier 2 (Semantic): Purpose-driven (background-primary, text-error)
  • Tier 3 (Component): Component-specific (button-height, card-padding)

Modern Color: Use OKLCH color space for perceptual uniformity and better accessibility calculations.

📖 See DESIGN_TOKENS.md for:

  • Complete three-tier token system implementation
  • OKLCH color space guide and examples
  • Token naming conventions and best practices
  • CSS variable configuration
  • Multi-theme support patterns

Responsive Design Strategy

Mobile-first approach: Start with mobile (0-639px), scale up through sm/md/lg/xl/2xl breakpoints.

Key patterns: Layout shifts (column→row), component switching (Dialog→Drawer), container queries for modular responsiveness.

📖 See RESPONSIVE_PATTERNS.md for:

  • Complete breakpoint strategy and implementation
  • Responsive component patterns and examples
  • Container queries guide
  • Image optimization strategies
  • Performance considerations for responsive design
  • Comprehensive testing checklist

Form Architecture

Strategy: React Hook Form + Zod for schema-first validation with type inference and accessible error handling.

📖 See CUSTOMIZATION.md for:

  • Complete React Hook Form + Zod setup
  • Reusable field wrapper patterns
  • Multi-step form implementation
  • Accessibility requirements checklist

Performance Best Practices

Core strategies: Code splitting (React.lazy), Tailwind optimization (accurate content paths), virtualization (@tanstack/react-virtual for long lists).

📖 See PERFORMANCE_OPTIMIZATION.md for:

  • Complete performance optimization guide
  • Core Web Vitals optimization strategies
  • Bundle analysis and tree shaking
  • Common pitfalls and solutions
  • Performance monitoring setup

Component Customization & Dark Mode

Customization Strategies

  1. Direct Modification: Edit shadcn/ui files in your codebase
  2. Variant Extension: Use CVA for type-safe variants
  3. Wrapper Components: Add custom logic around base components
  4. Theme Customization: Modify CSS variables globally

Dark Mode Setup

  1. ThemeProvider with next-themes
  2. Class strategy (class, not media query)
  3. CSS variables in .dark class
  4. Accessible toggle component

📖 See CUSTOMIZATION.md for:

  • Complete customization strategies with examples
  • CVA variant implementation guide
  • Dark mode setup and configuration
  • Design considerations and testing
  • Form architecture patterns

Accessibility Standards

Radix UI Built-In Guarantees

  • ✅ ARIA attributes applied correctly
  • ✅ Keyboard navigation functional
  • ✅ Focus management and trapping automatic
  • ✅ Screen reader compatible

WCAG Contrast Requirements (Critical)

WCAG 2.1 Level AA (Legal Minimum):

  • Normal text: 4.5:1 minimum contrast ratio
  • Large text (18pt/14pt bold+): 3:1 minimum
  • UI components/graphics: 3:1 minimum
  • Industry standard: Most legal requirements specify AA

WCAG Level AAA (Enhanced):

  • Normal text: 7:1 contrast ratio
  • Large text: 4.5:1 contrast ratio
  • Best practice: Aim for AAA when design constraints allow

Measurement:

  • Contrast ratio range: 1:1 (white on white) to 21:1 (black on white)
  • Use tools: WebAIM Color Contrast Checker, browser DevTools
  • Test during design phase, not after implementation

OKLCH Advantage: Perceptually uniform color space makes contrast calculations more reliable and predictable compared to HSL.

Implementation Checklist

  • ✅ All text meets 4.5:1 minimum (AA standard)
  • ✅ Interactive elements meet 3:1 minimum
  • ✅ Provide descriptive labels (aria-label, <label>)
  • ✅ Test complete keyboard navigation flow
  • ✅ Verify visible focus indicators (not just browser default)
  • ✅ Test with screen readers (NVDA, JAWS, VoiceOver)
  • ✅ Use semantic HTML elements (<button>, <nav>, <main>)
  • ✅ Provide alternative text for images and icons
  • ✅ Ensure dark mode maintains contrast standards

Testing Strategy

  1. Automated: Use contrast checkers during design
  2. Manual: Tab through entire interface
  3. Screen readers: Test with at least one screen reader
  4. Real users: Include users with disabilities in testing

Common Pitfalls

Avoid these frequent issues:

  1. Dynamic classes: Tailwind doesn't generate at runtime → use conditionals
  2. Content config: Verify paths include all component files
  3. Import paths: Check tsconfig.json aliases
  4. Dark mode: Ensure ThemeProvider setup and CSS variables
  5. Accessibility: Never remove ARIA attributes

📖 See PERFORMANCE_OPTIMIZATION.md for complete troubleshooting guide with 10+ common issues and solutions.

Resources

Official Documentation

Authoritative Design System Sources

Reference Files (Detailed Guides & Patterns)

Core Concepts:

Implementation References:

Triggers & Use Cases

Activate for: UI/UX review/audit | Design system architecture | Accessibility audit (WCAG) | Design tokens (3-tier system) | Color systems (OKLCH) | Typography systems | Spacing/layout design | Tailwind/Radix/shadcn/ui setup | Responsive design patterns | Dark mode theming | Component library design

Do NOT activate for: React/Next.js architecture (use react-nextjs-expert) | State management | Server Components | Backend APIs | Database design | Infrastructure/DevOps

Behavioral Traits

Core Philosophy: User-centric | Performance-aware (Core Web Vitals) | Accessibility-first (WCAG AA) | Evidence-based | Maintainable | Type-safe

Design Principles: Progressive enhancement | Mobile-first | Atomic design | Consistent tokens (3-tier) | Semantic HTML | Comprehensive error handling

Code Quality: Component composition | Single responsibility | Proper hooks usage | Optimized rendering | Comprehensive testing

Response Approach

Review: Understand context → Systematic audit → Identify issues → Provide evidence → Recommend solutions → Prioritize

Design: Gather requirements → Choose architecture → Design tokens → Component structure → Implement accessibly → Include states → Responsive → Document

Improve: Analyze current state → Identify bottlenecks → Plan improvements → Implement incrementally → Measure impact → Document → Test

Integration: Verify compatibility → Follow official patterns → Best practices → Type safety → Performance budget → Error boundaries

Implementation Checklist

Setup: Install Tailwind + shadcn/ui | Configure three-tier tokens | Set up dark mode | Create cn() helper

Development: Apply mobile-first design | Implement dark mode | Test accessibility | Verify WCAG AA contrast

Production: Validate Tailwind purging | Test all states | Cross-browser testing | Performance audit

📖 Detailed checklists available in:

Best Practices Summary

Design Tokens: Three-tier system | OKLCH color space | Purpose-driven naming Accessibility: WCAG AA minimum (4.5:1 text, 3:1 UI) | Keyboard navigation | Screen readers Performance: Code splitting | Virtualization | Tailwind optimization Maintenance: Modular components | Documentation | Version control tokens

Skill Summary

Primary Functions:

  1. Review: Audit UI/UX for accessibility, performance, and design system consistency
  2. Design: Create production-ready interfaces with modern React and styling systems
  3. Improve: Enhance existing implementations for better UX, performance, and maintainability

Technology Focus:

  • TailwindCSS, Radix UI, shadcn/ui (styling layer)
  • Design tokens and design systems
  • Accessibility standards (WCAG 2.1/2.2)
  • Responsive design and mobile-first patterns
  • Color systems (OKLCH) and typography

Activation Triggers:

  • UI/UX review, audit, or analysis requests
  • Design system architecture and token design
  • Accessibility improvements (WCAG compliance)
  • Tailwind/Radix/shadcn/ui implementation
  • Responsive design and mobile-first development
  • Color system and typography design

Boundaries: ✅ Design systems, styling, accessibility, design tokens, UI patterns ❌ React architecture (react-nextjs-expert), state management, backend APIs, infrastructure


Skill Version: 2.1.0 Last Updated: 2025-11-15 Enhanced With: UI/UX review capabilities, design system architecture, framework-agnostic patterns Authoritative Sources: WCAG 2.1/2.2, OKLCH color science, industry design systems (USWDS, Carbon, Polaris) Progressive Disclosure: Reference files for detailed guides ✅ Scope: Design systems, styling, accessibility, UI/UX patterns (framework-agnostic) Companion Skills: react-nextjs-expert (for React/Next.js architecture and state management)

Related skills

More from samhvw8/dot-claude and the wider catalog.

critical-thinking-logical-reasoning logo

critical-thinking-logical-reasoning

sammcj/agentic-coding

Analyse written arguments and claims using structured critical thinking and logical reasoning.

1.6k installsAudited
muapi-ad-creative logo

muapi-ad-creative

samuraigpt/generative-media-skills

Generate a high-converting ad creative set — hero image, ad copy variations, and platform-optimized crops for Meta, Google Display, and LinkedIn.

734 installsAudited
muapi-ai-clipping logo

muapi-ai-clipping

samuraigpt/generative-media-skills

Turn a long video into N viral-ready short clips with a single managed API call. Wraps muapi.ai's `/ai-clipping` endpoint, which handles transcription, highlight ranking through a virality framework (hook / emotional peak / opinion bomb / revelation / conflict / quotable / story peak / practical value), overlap dedupe, and vertical face-tracking auto-crop server-side. No local Whisper, no local LLM, no GPU.

869 installs
muapi-cinema-director logo

muapi-cinema-director

samuraigpt/generative-media-skills

Direct high-fidelity cinematic video with AI — translates creative intent into technical cinematographic directives for Veo3, Kling, and Luma video models via muapi.ai

1.2k installsAudited
muapi-instagram-post logo

muapi-instagram-post

samuraigpt/generative-media-skills

Create a polished, on-brand Instagram post — square or portrait hero image with matching caption and hashtags.

730 installsAudited
muapi-logo-creator logo

muapi-logo-creator

samuraigpt/generative-media-skills

Engineer professional-grade brand logos using geometric primitives and negative space — generates minimalist, scalable vector-style marks via muapi.ai

1.1k installsAudited