nw-ux-web-patterns

Web UI design patterns for product owners. Load when designing web application interfaces, writing web-specific acceptance criteria, or evaluating responsive designs.

322 stars

Best use case

nw-ux-web-patterns is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Web UI design patterns for product owners. Load when designing web application interfaces, writing web-specific acceptance criteria, or evaluating responsive designs.

Teams using nw-ux-web-patterns should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/nw-ux-web-patterns/SKILL.md --create-dirs "https://raw.githubusercontent.com/nWave-ai/nWave/main/nWave/skills/nw-ux-web-patterns/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/nw-ux-web-patterns/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How nw-ux-web-patterns Compares

Feature / Agentnw-ux-web-patternsStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Web UI design patterns for product owners. Load when designing web application interfaces, writing web-specific acceptance criteria, or evaluating responsive designs.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Web UI Patterns

Actionable web interface patterns for requirements gathering and design review. Use when the target platform is web (browser-based applications).

## Navigation Patterns

| Pattern | When to Use | When to Avoid |
|---------|-------------|---------------|
| **Top navigation bar** | 5-7 primary sections, marketing/content sites | Deep hierarchies with 20+ sections |
| **Side navigation** | Complex apps with many sections, admin dashboards | Simple sites with few pages |
| **Breadcrumbs** | Deep hierarchies, e-commerce categories | Flat site structures |
| **Command palette** (Cmd+K) | Power user tools, developer-facing apps | Consumer apps targeting non-technical users |
| **Tab bar** (mobile) | 3-5 primary destinations | More than 5 destinations |
| **Hamburger menu** | Secondary navigation, mobile space constraints | Primary navigation users need frequently |
| **Mega menu** | Large sites with categorized content | Simple sites, mobile interfaces |

**Navigation must answer three questions**: Where am I? Where can I go? How do I get back?

Key principles: consistent placement across all pages | highlight current location | limit primary nav to 5-7 items (Hick's Law) | provide search as alternative for content-heavy apps

## Form Design

### Layout
- Labels above input fields (highest completion rates in eye-tracking studies)
- One column layouts outperform multi-column for most forms
- Group related fields with visual proximity and clear section headings
- Primary action buttons left-aligned with form fields

### Validation: Reward Early, Punish Late
- Validate on blur (when user leaves field), not while typing
- Remove error messages immediately when user corrects the field
- Show success indicators only when helpful (e.g., password strength)
- Validation summary at top for longer forms, plus inline errors

### Error Messages Must Include
1. What went wrong (plain language) | 2. Where the error is (highlight field) | 3. How to fix it (specific guidance, not "invalid input")

### Progressive Forms
- Split long forms across multiple steps (one-thing-per-page pattern)
- Show progress indicators for multi-step forms
- Allow saving progress and returning later
- Reduce fields through smart defaults and progressive disclosure

## Data Display Patterns

| Pattern | Best For | Key Considerations |
|---------|----------|-------------------|
| **Tables** | Structured data with multiple attributes, comparison | Sortable columns, fixed headers, responsive collapse |
| **Cards** | Browsable collections with images/summaries | Consistent sizes, clear click targets, max 3-4 per row |
| **Lists** | Sequential items, search results, feeds | Clear boundaries, scannable titles, secondary info on right |
| **Dashboards** | KPI monitoring, status overviews | Important metrics top-left, max 7 widgets, allow customization |

### Pagination vs Infinite Scroll
- **Pagination**: Goal-directed tasks (search, admin panels) -- gives position and control
- **Infinite scroll**: Discovery browsing (social media, galleries) -- reduces friction

## Responsive Design

### Mobile-First Approach
Design mobile layout first, then enhance for larger screens. Ensures core content and functionality are prioritized.

### Breakpoints (starting points)
360-480px: Mobile | 768px: Tablet | 1024-1280px: Small desktop | 1440px+: Large desktop

### Key Techniques
- **Fluid typography**: `clamp()` for smooth scaling; `rem`/`em` over `px` for accessible sizing
- **Container queries**: Components respond to container size (not viewport), enabling reusable components
- **Responsive images**: Serve appropriate sizes; use `srcset` and `picture` elements

## Component Patterns

| Component | Use For | Anti-pattern |
|-----------|---------|-------------|
| **Modal dialog** | Decisions requiring immediate attention; blocks until resolved | Information not requiring action; stacking modals |
| **Toast/snackbar** | Non-critical confirmation ("Item saved") | Critical errors or info users must not miss |
| **Drawer/sheet** | Supplementary content or filters alongside main view | Primary content or complex multi-step forms |
| **Popover/tooltip** | Contextual help or previews on hover/focus | Critical info or complex interactions |
| **Command palette** | Quick action access via keyboard | Only navigation method (need visual alternatives) |

## Motion and Micro-interactions

### When Motion Helps
Showing cause and effect (button press ripple) | Guiding attention to changes (new item slides in) | Providing feedback (spinners, progress bars) | Explaining spatial relationships (drawer slides from side) | Maintaining context during transitions (shared element transitions)

### When Motion Distracts
Decorative animations with no function | Animations delaying task completion | Rapid/large-scale motion (respect `prefers-reduced-motion`) | Looping animations that cannot be paused

**Duration guidelines**: 100-200ms for simple state changes | 200-500ms for complex transitions | never exceed 500ms for functional animations

## Design System Guidance

### When to Use Existing vs Custom

| Situation | Recommendation |
|-----------|---------------|
| Internal tools, admin dashboards | Use existing system (Material UI, Ant Design, Radix) |
| Consumer product with strong brand | Custom system on headless library (Radix, Headless UI) |
| MVP or prototype | Use existing system; customize later |
| Platform with strict brand guidelines | Custom system, adopt token architecture from established systems |

**Established systems to evaluate**: Material Design (Google) | Fluent Design (Microsoft) | Carbon (IBM) | Polaris (Shopify) | Primer (GitHub) | Lightning (Salesforce)

### Design Tokens
Atomic values defining visual design: colors, spacing, typography, shadows.

| Level | Example | Purpose |
|-------|---------|---------|
| **Global** | `color-blue-500: #3B82F6` | Raw palette values |
| **Semantic** | `color-primary: {color-blue-500}` | Meaningful names |
| **Component** | `button-bg: {color-primary}` | Component-specific references |

Use 8px spacing grid. Use modular typography scale (1.25 or 1.333 ratio).

## Web-Specific Anti-Patterns

| Anti-Pattern | Alternative |
|-------------|-------------|
| Autoplay video with sound | Mute by default, user-initiated play |
| Full-page interstitials on mobile | Inline or bottom-sheet prompts |
| Captchas for every action | Risk-based authentication, invisible captchas |
| Horizontal scrolling for content | Responsive layout fitting viewport |
| Form validation only on submit | Inline validation with reward-early-punish-late |
| Mystery meat navigation (icons only) | Label all nav items; icons supplement, not replace |
| Stacking modals | Inline expansion or navigate to new page |

## Acceptance Criteria Template (Web)

```gherkin
Feature: [Feature Name]
  # Platform: web
  # Key heuristics: [applicable Nielsen heuristics]
  # Accessibility: WCAG 2.2 AA

  Scenario: Happy path
    Given [context]
    When [user action]
    Then [expected visible result]
    And system provides feedback within 100ms
    And the action can be undone via [mechanism]

  Scenario: Error state
    Given [context leading to error]
    When [user action that triggers error]
    Then an error message explains what happened
    And the error message suggests what to do next
    And the error is shown inline next to the relevant field

  Scenario: Empty state
    Given no [resources] exist yet
    When the user navigates to the [resource] view
    Then a helpful message explains what [resources] are
    And a clear call to action creates the first one

  Scenario: Keyboard accessibility
    Given the user navigates with keyboard only
    When they tab through the interface
    Then all interactive elements are reachable
    And focus indicators are visible
```

Related Skills

nw-ux-tui-patterns

322
from nWave-ai/nWave

Terminal UI and CLI design patterns for product owners. Load when designing command-line tools, interactive terminal applications, or writing CLI-specific acceptance criteria.

nw-ux-desktop-patterns

322
from nWave-ai/nWave

Desktop application UI patterns for product owners. Load when designing native or cross-platform desktop applications, writing desktop-specific acceptance criteria, or evaluating panel layouts and keyboard workflows.

nw-sd-patterns

322
from nWave-ai/nWave

Core distributed systems patterns - load balancing, caching, sharding, consistent hashing, message queues, rate limiting, CDN, Bloom filters, ID generation, replication, conflict resolution, CAP theorem

nw-sd-patterns-advanced

322
from nWave-ai/nWave

Advanced distributed patterns - event sourcing, CQRS, saga, stream processing, append-only log, exactly-once delivery, sequencer, double-entry ledger, erasure coding, order book, watermarks

nw-design-patterns

322
from nWave-ai/nWave

7 agentic design patterns with decision tree for choosing the right pattern for each agent type

nw-data-architecture-patterns

322
from nWave-ai/nWave

Data architecture patterns (warehouse, lake, lakehouse, mesh), ETL/ELT pipelines, streaming architectures, scaling strategies, and schema design patterns

nw-command-design-patterns

322
from nWave-ai/nWave

Best practices for command definition files - size targets, declarative template, anti-patterns, and canonical examples based on research evidence

nw-architecture-patterns

322
from nWave-ai/nWave

Comprehensive architecture patterns, methodologies, quality frameworks, and evaluation methods for solution architects. Load when designing system architecture or selecting patterns.

nw-ux-principles

322
from nWave-ai/nWave

Core UX principles for product owners. Load when evaluating interface designs, writing acceptance criteria with UX requirements, or reviewing wireframes and mockups.

nw-ux-emotional-design

322
from nWave-ai/nWave

Emotional design and delight patterns for product owners. Load when designing onboarding flows, empty states, first-run experiences, or evaluating the emotional quality of an interface.

nw-user-story-mapping

322
from nWave-ai/nWave

User story mapping for backlog management and outcome-based prioritization. Load during Phase 2.5 (User Story Mapping) to produce story-map.md and prioritization.md.

nw-tr-review-criteria

322
from nWave-ai/nWave

Review dimensions and scoring for root cause analysis quality assessment