Interactive gallery
Play with the patterns
Every interactive example from across the lessons, in one place. Click, type, drag, and toggle — then follow the link to the full lesson behind each.
Navigation & disclosure
Navigation patterns Lesson →
Home
Mock page content
Top bar — best for a handful of top-level destinations on desktop/web. Always visible, low interaction cost.
Tabs Lesson →
Tabs let users switch between peer views within the same context, without navigating away. Keep tab labels short and parallel.
Accordion Lesson →
Showing only what a user needs at each step, and revealing advanced or secondary detail on demand. It lowers cognitive load by deferring complexity until it is relevant.
For scannable, independent sections where users want one topic at a time — FAQs, settings groups, or long forms. Avoid hiding content users always need behind a click.
Single-open keeps focus and saves space but costs a click to compare sections. Multi-open lets users compare but can get long. Match the choice to the task.
Yes, when each header is a real button with aria-expanded, controls its panel via aria-controls, and the panel is reachable in reading and tab order.
Dropdown menu Lesson →
Command palette Lesson →
Overlays & feedback
Modal dialog Lesson →
Focus moves into the dialog, is trapped while open, returns to the trigger on close, and Esc dismisses it.
Toasts & undo Lesson →
Toasts appear here
Confirmations are non-blocking and auto-dismiss; destructive actions pair with an undo window instead of a confirm dialog — recovery over prevention.
System states Lesson →
Skeleton screens preserve layout and feel faster than a spinner for content-heavy views.
Forms & data
Form validation Lesson →
Modern practice: persistent top-aligned labels, validation on blur (not every keystroke), and specific, recoverable error messages tied to the field with aria-describedby.
Sortable table Lesson →
| Ada Lovelace | Designer | Active | 2d ago |
| Alan Turing | Engineer | Active | 9d ago |
| Grace Hopper | PM | Invited | 1d ago |
| Katherine Johnson | Researcher | Inactive | 21d ago |
| Linus Torvalds | Engineer | Active | 5d ago |
Sortable headers expose aria-sort, right-align numeric columns, and use a subtle row hover for scannability.
Pagination patterns Lesson →
Pagination — best when users need to find a known item, jump around, or remember a position. Keeps the page bounded and footers reachable.
Search autocomplete Lesson →
Good autocomplete filters as you type, highlights the match, supports full keyboard control, and degrades gracefully when there are no results.
Filtering Lesson →
Monstera
Plant · Premium
Snake plant
Plant · Budget
Pruning shears
Tool · Budget
Watering can
Tool · Premium
Terracotta pot
Pot · Budget
Ceramic planter
Pot · Premium
Fiddle-leaf fig
Plant · Premium
Trowel
Tool · Budget
Filters apply instantly, show their active state, expose a count, and offer a one-click reset — and an empty result still explains what happened.
Onboarding flow Lesson →
Welcome to Acme
A quick 3-step setup gets you to value fast. Good onboarding shows the destination, not just a tour of buttons.
Strong onboarding is short, shows progress, asks only for what’s needed, and ends at a first win — not a feature tour.
Motion & microinteractions
Microinteractions Lesson →
Each microinteraction has a clear trigger, immediate visual feedback, and a calm resting state — the smallest unit of good interaction design.
Easing & timing Lesson →
Ease-out — fast start, gentle stop. The default for UI: elements entering or responding to input.
Reduced motion Lesson →
Card entrance
Respect the OS prefers-reduced-motion setting: replace large or looping motion with a minimal fade. Never remove feedback entirely — just the intensity.
Visual & typography
Visual hierarchy Lesson →
New feature
Real-time collaboration
Work together on the same canvas with live cursors, comments, and instant sync across every device.
Size, weight, color, and spacing guide the eye: eyebrow → headline → body → action. You know where to look first.
Gestalt grouping Lesson →
Proximity: elements placed close together are perceived as a group — spacing alone creates structure.
Elevation Lesson →
Higher elevation = larger, softer shadows and more separation from the background. In dark mode, prefer raising surface lightness over shadows, which are nearly invisible on dark backgrounds.
Spacing grid Lesson →
Every gap, padding, and size is a multiple of 8px (8, 16, 24, 32…). A single spacing unit makes layouts feel consistent and removes arbitrary, eyeballed values.
Type scale Lesson →
Every size is the base (16px) multiplied by the ratio raised to a step. One ratio yields a consistent, musical hierarchy instead of arbitrary sizes.
Grid systems Lesson →
A column grid gives every element a shared place to start and stop. Components span a number of columns, so layouts stay aligned even as content changes. 12 columns is the web default because it divides cleanly into halves, thirds, and quarters.
Font pairing Lesson →
Field guide
The shape of a letter carries meaning.
Pairing two typefaces is about contrast with harmony: a display face with personality for headlines, and a highly legible workhorse for body text. The two should differ enough to create hierarchy, yet share a similar era, proportion, or mood so they feel intentional together.
Serif display over a clean sans — editorial, warm, and trustworthy. A safe, timeless pairing.
Dark mode & elevation Lesson →
Base surface
Level 0
Raised card
Level 1
Popover
Level 2
In light mode, elevation comes from progressively larger, softer drop shadows on white surfaces.
Foundations & accessibility
Hick’s Law Lesson →
Predicted decision time
0.35s
The time to choose grows logarithmically with the number of options (T = b·log₂(n+1)). Group, prioritize, or progressively disclose choices instead of exposing them all at once.
Contrast checker Lesson →
The quick brown fox
jumps over the lazy dog — 14px body text sample.
4.83:1
AAWCAG 2.2 requires 4.5:1 for normal text and 3:1 for large text (≥24px, or ≥19px bold). Don’t rely on low-contrast “light gray on white” for body copy.
Touch targets Lesson →
Small targets cause mis-taps, especially for motor impairments and one-handed use. WCAG 2.2 sets a 24×24px floor (2.5.8); 44×44px is the comfortable target on touch.
Color-blindness simulator Lesson →
Color only (fragile)
Color + icon + label (robust)
Deuteranopia (green-blind, the most common CVD): red and green are nearly indistinguishable. This is why color alone fails. The takeaway: never encode meaning with color alone — pair it with an icon, label, or pattern (WCAG 1.4.1).
AI & prompting
Anatomy of a prompt Lesson →
Write 3 options for an empty-state headline plus a one-line subtext.
A good prompt reads like a creative brief. Watch the specificity climb as you add a role, context, constraints, examples, and an explicit output format — a bare task alone leaves the model guessing.