gui-design-principles
Comprehensive design principles and best practices for creating beautiful, functional GUI applications including dashboards, web apps, and mobile apps
What this skill does
## Overview This skill provides essential design principles, patterns, and guidelines for developing high-quality graphical user interfaces. It encompasses visual design, user experience, accessibility, and modern UI/UX best practices across web, desktop, and mobile platforms. ## Design Foundations ### Core Design Principles **Visual Hierarchy** - Establish clear information hierarchy with size, weight, and spacing - Use contrast to guide attention to important elements - Implement progressive disclosure for complex interfaces - Follow the "F-Pattern" and "Z-Pattern" for natural eye movement **Color Theory** - Use limited color palettes (3-5 primary colors maximum) - Ensure sufficient contrast ratios (WCAG AA: 4.5:1, AAA: 7:1) - Implement consistent color meanings across the interface - Use color purposefully for branding, actions, and feedback **Typography** - Choose readable fonts optimized for screens - Establish clear type scale (h1-h6, body, small, caption) - Maintain consistent line spacing (1.4-1.6 for body text) - Limit font families to 2-3 maximum for consistency **Spacing & Layout** - Use consistent spacing units (4px, 8px, 16px grid system) - Implement proper visual rhythm with consistent margins/padding - Ensure adequate touch targets (44px minimum for mobile) - Use white space strategically to reduce cognitive load ### Responsive Design Principles **Mobile-First Approach** - Design for smallest screen first, then enhance for larger screens - Use flexible grids and layouts that adapt to screen size - Optimize touch interactions for mobile devices - Consider content prioritization for different screen sizes **Breakpoint Strategy** - Mobile: 320px - 768px - Tablet: 768px - 1024px - Desktop: 1024px - 1440px - Large Desktop: 1440px+ **Flexible Components** - Use relative units (%, rem, em, vh, vw) - Implement fluid typography with clamp() function - Create adaptive layouts with CSS Grid and Flexbox - Design components that work across all screen sizes ## UI Component Design ### Button Design - **Primary Actions**: High contrast, clear call-to-action - **Secondary Actions**: Subtle styling, less emphasis - **Danger Actions**: Red color scheme, clear warnings - **Disabled States**: Clear visual feedback, reduced opacity - **Loading States**: Progress indicators, disabled during action ### Form Design - **Input Fields**: Clear labels, helpful placeholders, validation states - **Error Handling**: Inline error messages, clear error indicators - **Success States**: Confirmation messages, positive feedback - **Accessibility**: Proper labels, ARIA attributes, keyboard navigation ### Navigation Design - **Consistent Placement**: Same location across all pages - **Clear Labels**: Descriptive, concise navigation labels - **Visual States**: Active, hover, and visited states - **Breadcrumb Navigation**: For hierarchical content ### Card & Container Design - **Consistent Spacing**: Uniform padding and margins - **Visual Separation**: Borders, shadows, or background colors - **Content Hierarchy**: Clear title, subtitle, body structure - **Interactive Elements**: Hover states and transitions ## Modern Design Systems ### Design Tokens ```css /* Color Tokens */ --color-primary: #3b82f6; --color-secondary: #64748b; --color-success: #10b981; --color-warning: #f59e0b; --color-danger: #ef4444; --color-background: #ffffff; --color-surface: #f8fafc; --color-text: #1e293b; --color-text-muted: #64748b; /* Spacing Tokens */ --space-xs: 4px; --space-sm: 8px; --space-md: 16px; --space-lg: 24px; --space-xl: 32px; --space-2xl: 48px; /* Typography Tokens */ --font-size-xs: 12px; --font-size-sm: 14px; --font-size-base: 16px; --font-size-lg: 18px; --font-size-xl: 20px; --font-size-2xl: 24px; --font-size-3xl: 30px; /* Shadow Tokens */ --shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05); --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1); --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1); ``` ### Component Library Structure - **Base Components**: Button, Input, Card, Modal - **Layout Components**: Grid, Container, Sidebar, Header - **Navigation Components**: Menu, Breadcrumb, Tabs, Pagination - **Feedback Components**: Alert, Toast, Spinner, Progress - **Data Display**: Table, List, Badge, Avatar ## Dashboard Design Best Practices ### Data Visualization - **Chart Selection**: Choose appropriate chart types for data - Line charts: Trends over time - Bar charts: Comparisons between categories - Pie charts: Parts of a whole (max 5-7 segments) - Scatter plots: Correlations and distributions - **Color Usage**: Use color consistently and meaningfully - **Accessibility**: Provide patterns and textures in addition to color - **Interactivity**: Tooltips, zoom, filter capabilities ### Layout Patterns - **Header**: Clear title, key metrics, primary actions - **Sidebar**: Navigation, filters, secondary information - **Main Content**: Primary data visualization and insights - **Footer**: Summary, export options, help links ### Real-time Updates - **Smooth Transitions**: Animate data changes smoothly - **Loading States**: Clear indicators during data updates - **Error Handling**: Graceful degradation when data unavailable - **Performance**: Optimize for frequent updates without lag ## Accessibility Guidelines ### WCAG 2.1 Compliance - **Perceivable**: Information must be presentable in ways users can perceive - **Operable**: Interface components must be operable - **Understandable**: Information and UI operation must be understandable - **Robust**: Content must be robust enough for various assistive technologies ### Keyboard Navigation - **Tab Order**: Logical tab order through interactive elements - **Focus Indicators**: Clear visible focus states - **Shortcuts**: Keyboard shortcuts for common actions - **Skip Links**: Allow skipping to main content ### Screen Reader Support - **Semantic HTML**: Use proper HTML5 semantic elements - **ARIA Labels**: Descriptive labels for complex components - **Alternative Text**: Meaningful alt text for images - **Announcements**: Dynamic content changes announced ## Mobile App Design ### Touch Interactions - **Touch Targets**: Minimum 44px for comfortable tapping - **Gesture Support**: Swipe, pinch, long press interactions - **Haptic Feedback**: Vibration for important actions - **Thumb-Friendly Design**: Place primary actions in easy reach zones ### Platform Guidelines - **iOS**: Human Interface Guidelines compliance - **Android**: Material Design principles - **Cross-Platform**: Consistent experience while respecting platform conventions ### Performance Considerations - **Optimized Assets**: Compressed images, efficient code - **Offline Support**: Critical functionality available offline - **Battery Optimization**: Minimize battery drain - **Network Awareness**: Adapt to connection quality ## CSS Framework Integration ### Tailwind CSS Strategy - **Utility-First**: Rapid development with utility classes - **Component Abstraction**: Create reusable component classes - **Design System**: Consistent design tokens and variants - **Responsive Design**: Mobile-first responsive utilities ### Modern CSS Features - **CSS Grid**: Complex layouts with fewer elements - **Flexbox**: Flexible box layouts for components - **Custom Properties**: CSS variables for theming - **Container Queries**: Component-based responsive design ## Animation & Micro-interactions ### Motion Principles - **Purposeful Animation**: Every animation should have a purpose - **Natural Movement**: Follow physical laws and expectations - **Performance**: Use transform and opacity for smooth 60fps - **Accessibility**: Respect prefers-reduced-motion settings ### Common Animations - **Page Transitions**: Smooth navigation between views - **Loading States**: Engaging waiting experiences - **Hover Effects**: Subtle feedback for interactive elements - **State Changes**: Clear feedback for status updates ## Implementation Guidelines ### File Structure ``` src/ ├── compo
Related in Design
contribute
IncludedLocal-only OSS contribution command center. Auto-refreshes the user's in-flight PR and issue state on invoke so conversations start with full context — no need to brief Claude on what's in flight. Helps the user find issues to contribute to on GitHub, builds per-repo dossiers of what each upstream expects (CLA, DCO, branch convention, AI policy, draft-first, review bots, issue templates), runs deterministic gates before any external action so AI-assisted contributions don't reach maintainers as slop. State is markdown-only: candidate files at ~/.contribute-system/candidates/, repo dossiers at ~/.contribute-system/research/, append-only event log at ~/.contribute-system/log.jsonl. No database, no cloud calls. Use when the user asks about their PRs / issues / contributions, wants to find new work to take on, claim an issue, build/refresh a repo's dossier, or draft a Design Issue or PR. Trigger with "/contribute", "what's my PR status", "find a contribution", "claim issue X", "draft a Design Issue for Y", "refresh dossier for Z".
architectural-analysis
IncludedUser-triggered deep architectural analysis of a codebase or scoped subtree across eight modes — information architecture, data flow, integration points, UI surfaces, interaction patterns, data model, control flow, and failure modes. This skill should be used when the user asks to "diagram this codebase," "map the architecture," "show the data flow," "give me an ERD," "trace control flow," "find the integration points," "verify the layout pattern," "audit the UX architecture," or any similar request whose primary deliverable is mermaid diagrams plus cited reports under docs/architecture/. Dispatches haiku/sonnet sub-agents in parallel for per-mode exploration, then verifies every citation mechanically before any node lands in a diagram. Not for one-off prose explanations of code (use code-explanation) or for high-level system design from scratch (use system-design).
mcp
IncludedModel Context Protocol (MCP) server development and tool management. Languages: Python, TypeScript. Capabilities: build MCP servers, integrate external APIs, discover/execute MCP tools, manage multi-server configs, design agent-centric tools. Actions: create, build, integrate, discover, execute, configure MCP servers/tools. Keywords: MCP, Model Context Protocol, MCP server, MCP tool, stdio transport, SSE transport, tool discovery, resource provider, prompt template, external API integration, Gemini CLI MCP, Claude MCP, agent tools, tool execution, server config. Use when: building MCP servers, integrating external APIs as MCP tools, discovering available MCP tools, executing MCP capabilities, configuring multi-server setups, designing tools for AI agents.
react-native-skia
IncludedDesign, build, debug, and optimise high-polish animated graphics in React Native or Expo using @shopify/react-native-skia, Reanimated, and Gesture Handler. Use when the user wants canvas-driven UI, shaders, paths, rich text, image filters, sprite fields, Skottie, video frames, snapshots, web CanvasKit setup, or performance tuning for custom motion-heavy elements such as loaders, hero art, cards, charts, progress indicators, particle systems, or gesture-driven surfaces. Also use when the user asks for fluid, glow, glass, blob, parallax, 60fps/120fps, or GPU-friendly animated effects in React Native, even if they do not explicitly say "Skia". Do not use for ordinary form/layout work with standard views.
plaid
IncludedProduct Led AI Development — guides founders from idea to launched product. Six capabilities: Idea (discover a product idea), Validate (pressure-test the idea against fatal flaws, problem reality, competition, and 2-week MVP feasibility), Plan (vision intake + document generation), Design (translate image references into a design.md spec), Launch (go-to-market strategy), and Build (roadmap execution). Use when someone says "PLAID", "plaid idea", "help me find an idea", "product idea", "idea from my business", "idea from my expertise", "plaid validate", "validate my idea", "pressure-test", "is this idea good", "find fatal flaws", "validate the problem", "plan a product", "define my vision", "generate a PRD", "product strategy", "plaid design", "design from image", "translate image to design", "create design.md", "extract design tokens", "plaid launch", "go-to-market", "launch plan", "GTM strategy", "launch playbook", "plaid build", "build the app", "start building", or "execute the roadmap".
nextjs-framer-motion-animations
IncludedAdds production-safe Motion for React or Framer Motion animations to Next.js apps, including reveal, hover and tap micro-interactions, whileInView, stagger, AnimatePresence, layout and layoutId transitions, reorder, scroll-linked UI, and lightweight route-content transitions. Use when the user asks to add, refactor, or debug Motion or Framer Motion in App Router or Pages Router codebases, especially around server/client boundaries, reduced motion, LazyMotion, bundle size, hydration, or route transitions. Avoid for GSAP-style timelines, WebGL or 3D scenes, heavy scroll storytelling, or CSS-only effects unless Motion is explicitly requested.