Skip to content
ExamsLibraryFor agentsConnect your agent
metaMeta: working with agents·7/26

Design vocabulary

The precise word for each design phenomenon, and where this skill goes deeper. The lexicon behind articulate-precisely. Seeded by Index's articulate module.

Raw markdown On GitHub

The skill's working lexicon: the precise word for a design phenomenon, plus where the skill treats it in depth. Use it to name things exactly per articulate-precisely — in a critique, name the phenomenon; in a request, name the change.

Seeded by Index's articulate module (Emil Kowalski & Glenn Carstens-Peters — index.how/to/articulate). The glosses here are this skill's own; → node points to the node that goes deeper. Terms in bold with no arrow are vocabulary the skill adopts but does not yet cover in a dedicated node — name them precisely even where there is no node to open.

How to use this file

  • Don't read it top to bottom. Jump to the category, grab the word, follow the arrow if you need depth.
  • One job: stop the agent saying "weird." If a critique reaches for a vague word ("off," "clean," "modern"), the right word is almost always here.
  • Pair it with the principle. articulate-precisely is why precision matters; review-checklist is what to scan when reviewing. This file is a naming index, not a rulebook — the rules live in the linked nodes.

01 — Typography

How text is set, spaced, and read.

  • Kerning — space between two specific letters, tuned by hand. Distinct from tracking.
  • Tracking — uniform letter-spacing across a run; uppercase and small text usually need more. → line-length-tracking
  • Leading — line-height; the vertical space between lines. Too tight suffocates, too loose stops reading as a paragraph.
  • Optical kerning — spacing judged by eye instead of the font's metric tables; closes the gaps the defaults leave.
  • Tabular nums — fixed-width digits so changing numbers don't jitter in a column. Essential for tables, prices, timers. → data-is-content
  • Type scale — a fixed set of sizes (often a ratio) you pick from rather than inventing per use. → type-scale-and-rhythm
  • Weight — stroke thickness. Bold is for hierarchy; italic is for linguistic stress or citation, not hierarchy. → typography-humanity
  • x-height — height of the lowercase; why two fonts at the same px read as different sizes. → typography-humanity
  • Cap height — height of the capitals; with x-height it governs perceived size. Matters when matching a fallback.
  • Ligature — two glyphs merged to dodge a collision (fi, fl). Decorative ligatures are display-only.
  • Font smoothing — antialiasing of glyph edges; antialiased renders lighter on Mac, worse on non-retina.
  • Text overflow / truncation — cut at a word boundary with a real ellipsis character, never mid-word. → copy-voice
  • Hyphenation — breaking a word across lines; best left to the browser to place.
  • Clamp — fluid sizing with a min, preferred, and max in one declaration (clamp()); scales between breakpoints.
  • Widow — classically, a paragraph's lone last line carried to the top of the next column or page; colloquially also the lone word left on a last line. text-wrap: pretty targets the trailing-word case. → line-behavior
  • Orphan — a paragraph's lone first line stranded at the bottom of a column or page — the mirror of a widow. CSS orphans/widows set the minimums, but support is uneven, so it is often fixed by hand.
  • Font stack — the ordered fallback list; a size-matched fallback prevents reflow when the web font loads.
  • Line length — the measure; ~65 characters reads comfortably, wider loses the next line. → line-length-tracking
  • Variable font — one file spanning weight/width axes; lets you animate weight without layout shift.
  • Superscript / subscript — sup/sub are oversized by default and break line rhythm; size and shift them by hand.

02 — Color

How color is defined, mixed, and applied.

  • sRGB — the legacy default space; every hex value lives here. Narrower gamut than modern screens can show.
  • P3 — a wider gamut most current displays support; reaches greens and reds sRGB cannot describe.
  • OKLCH — a perceptually uniform space; equal lightness actually looks equally bright. Best for generating palettes.
  • Alpha — the transparency channel. An alpha border recedes into the surface; a solid hex sits on top of it.
  • Semantic token — a color named for its job, not its value (--border-subtle, not #e0e0e0). → using-design-md
  • Contrast ratio — luminance difference of foreground to background; WCAG wants 4.5:1 body, 3:1 large/UI. → contrast-and-color-scheme
  • Tinted neutral — a grey with a slight hue bias; pure #808080 reads as a placeholder, a tint reads as chosen. → color-monochromatic
  • Saturation — a color's intensity; a fully-saturated brand hue that sings on a light page can buzz on a dark one — drop it roughly a quarter to settle it.
  • Chroma — OKLCH's perceptually-accurate saturation. Reduce chroma for a light tint; reducing opacity instead just greys it. → color-monochromatic
  • Gradient — a transition between colors; built in OKLCH it stays vivid where sRGB/HSL go grey at the midpoint.
  • Opacity vs visibility — opacity:0 still takes space and catches clicks; visibility:hidden kills interaction but keeps space.
  • Dark mode — surfaces built dark, brightest at the top of the layer stack; light tokens rarely translate directly. → dark-mode
  • Blending — how a layer mixes with what is beneath. Multiply darkens, Screen lightens, Overlay does both.

03 — Iconography

How icons are drawn and balanced.

  • Stroke weight — icon line thickness; it has to scale with size or it disappears small and looks frail large. → icon-systems
  • Optical centre — where a shape looks centred vs where it mathematically is; a play triangle must nudge right. → icon-systems
  • Filled vs outlined — two styles signalling state; filled often means active/selected, outlined means default. → icon-systems
  • Cap style — how a stroke ends, square or round; rounded ends usually read intentional in UI, blunt square ends can look like an untuned default.
  • Pixel hinting — nudging paths onto the pixel grid at small sizes so a 16px glyph doesn't turn to mush.
  • Icon library — a single family tuned to one size, weight, and corner radius; pulling glyphs from a second set — however close — leaves small inconsistencies that pile up. → icon-systems
  • Icon size system — the defined sizes (12/16/20/24/48) each ideally drawn for its context, not scaled from one master.
  • Meaning collision — the same icon doing two jobs (a star for favourite and rating); users learn neither.
  • Contextual swap — switching outlined↔filled to mark a state change; only works if the convention is consistent.
  • Breathing room — the deliberate spacing between a glyph and its text (start ~6–8px); design it as a property of the component, not whatever the flex gap happens to leave.
  • Unified weight — icon stroke matched to the adjacent text weight, so they read as one family. → icon-systems
  • Metaphor accuracy — whether the glyph still means what it depicts (a floppy disk for save) as the audience ages.

04 — Layout

How space and structure organise a page.

  • Border radius — corner rounding; an inner radius = outer radius − padding, or the gap shows. → border-radius
  • Gap — space between flex/grid children, set on the parent; unlike margin it leaves no trailing space.
  • Negative space — the empty area that gives a layout its edges and steers the eye; packing things tighter erases the structure the eye was reading, it doesn't add content.
  • Flexbox — the row/column layout model controlling direction, alignment, and grow/shrink.
  • Auto layout — Figma's flexbox: elements that space themselves and resize with content.
  • Layout shift — content jumping as the page loads (images, fonts, reorders); reserve space to prevent it. → sticky-and-scroll-tells
  • Overflow — what happens past a container's bounds; hidden clips silently and breaks child sticky positioning.
  • Sticky positioning — scrolls then pins at a threshold; a parent with overflow:hidden silently breaks it. → sticky-and-scroll-tells
  • Aspect ratio — fixed width:height; setting it reserves space before media loads and prevents layout shift.
  • Viewport units — units relative to the window; dvh accounts for mobile browser chrome that vh ignores. → viewport-custom-design
  • Safe area — the screen region clear of notches and home indicators; fixed bottom chrome must inset for it. → viewport-custom-design
  • Max-width — a cap on container width so lines don't stretch unreadable on wide screens. → line-length-tracking
  • Breakpoint — where layout changes; set it where the content breaks, not at assumed device widths. → viewport-custom-design
  • Responsive — a layout that adapts via fluid sizing, flexible media, and breakpoints. The web baseline.
  • Grid — a column system organising layout; 12 is conventional, 8 often suits simpler layouts.
  • Asymmetry — columns or elements weighted on purpose rather than mirrored; the imbalance is what carries energy. A perfectly balanced grid is safe and usually inert. → visual-imperfection
  • Baseline grid — horizontal rhythm from body line-height; great for editorial, usually overkill in product UI.
  • Z-index — stacking order on a plane; modals, tooltips, dropdowns need explicit values or they clip behind. → tray-rules

05 — Interaction

How elements respond to input.

  • Affordance — the cue a control gives about how to operate it; a raised edge says press, an underline says click. Strip the cue and the user is left to experiment.
  • Hover state — the change on cursor-over; confirm interactivity with cursor + color, not color alone. → hover-states-subtle
  • Focus state — the keyboard-focus indicator; never delete it, replace it. → accessibility-baseline
  • Active state — the pressed change; a small scale or color shift, or the button feels dead. → responsive-feedback
  • Disabled state — non-interactive; a muted token is more reliable than opacity, which can pass or fail contrast. → accessibility-baseline
  • Cursor — the pointer contract: pointer = clickable, text = selectable, default = static. The wrong one lies.
  • Pointer events — whether an element catches input; none makes a decorative layer present but click-through.
  • Optimistic update — update the UI before the server confirms; feels instant, needs a rollback path. → optimistic-updates
  • Debounce — delay a function and reset on each trigger; stops a request per keystroke (~300ms is common).
  • Touch target — the tappable area; 44×44px minimum, even when the visible element is smaller. → accessibility-baseline
  • Copy to clipboard — needs visible confirmation (a checkmark for a beat) or users click it again thinking it failed. → responsive-feedback
  • Skip link — a visually-hidden link, revealed on focus, that jumps past nav to main content. → accessibility-baseline
  • Hydration mismatch — server HTML and the first client render disagree (a theme, a date, a stored toggle), so the page flashes or React throws; set persisted state before first paint. → ui-polish-pass
  • FOUC — flash of unstyled (or wrongly themed) content before styles or fonts apply; a blocking theme script and preloaded fonts prevent it. → performance-discipline
  • Light dismiss — closing an overlay by clicking outside or pressing Escape, without a dedicated button; popovers and menus expect it, destructive dialogs often shouldn't. → keyboard-patterns
  • Race condition — two async results landing out of order, so an older response overwrites a newer one (search-as-you-type); cancel or ignore stale requests. → optimistic-updates
  • Passive listener — a touchstart/wheel handler marked { passive: true }, promising not to call preventDefault, so scrolling never waits on script. → performance-discipline

06 — Motion

How things move and transition. The largest cluster in this skill — see animation-decision-framework first.

  • Easing — the speed curve of an animation; a custom cubic-bezier almost always beats the CSS built-ins. → easing-curves
  • Ease-out — fast then slow; the default for things entering the screen. → easing-curves
  • Ease-in — slow then fast; for things leaving. On an entrance it feels reluctant. → easing-curves
  • Ease-in-out — slow-fast-slow; for moves across the screen (a toggle, a sliding card). Overkill for simple enter/exit.
  • Stagger — list items animating in sequence (~40ms apart); all-at-once reads as a flash. → stagger-choreography
  • Duration — UI is sub-300ms; hovers ~150ms, buttons 100–160ms, >400ms with no feedback looks broken. → duration-table
  • Transition property — animate only transform and opacity; all catches layout props and janks. → transform-opacity-only
  • Reduced motion — the prefers-reduced-motion preference; any significant movement must honour it. → prefers-reduced-motion
  • Skeleton shimmer — a gradient sweep on a skeleton to suggest activity; must respect reduced motion. → empty-loading-states
  • Spring — physics-based easing that overshoots and settles; reads more alive than a fixed curve. → spring-animations
  • Choreography — timing several animations as one phrase so attention lands in one place; uncoordinated motion just scatters the gaze. → stagger-choreography
  • Enter vs exit asymmetry — enter decelerates in, exit accelerates away; a reversed enter feels like arriving backwards. → compose-subtract-asymmetry
  • Shared axis transition — motion direction reflects spatial relationship: forward animates right, back animates left. → fly-not-teleport
  • Motion as feedback — press-compress, error-shake, success-draw: the motion is the response, not decoration. → responsive-feedback
  • GPU compositing — transform/opacity run on the GPU and skip layout recalc; animating width/top forces reflow per frame. → transform-mastery

Motion: the finer words

When "make it animate" is the whole prompt, the agent guesses. One of these names usually settles which of several animations is meant.

  • Fade / scale in / slide in / pop in — four different entrances: opacity only; growing from ~0.95 to 1 together with a fade; arriving from an edge; overshooting the final size and settling. A pop is a spring with bounce, so keep it for celebratory moments. → never-scale-from-zero, spring-animations
  • Reveal — a clip-path or mask uncovers content in place, so nothing moves. → clip-path-tricks
  • Origin-aware animation — a popover or menu grows out of the control that opened it (its transform-origin set to the trigger), not out of its own centre. → transform-mastery
  • Transform origin — the anchor a scale or rotation pivots on. Wrong for nearly every popover by default. → transform-mastery
  • Skew / 3D tilt / perspective — slanting the axes; rotating in X or Y for depth; how close the virtual viewer sits (a lower value exaggerates the depth). Use them sparingly: a tilt card is a marketing-surface move, not a product one. → marketing-vs-product-ui
  • Keyframes / interpolation (tween) — the stops you author versus the frames the engine fills in between them.
  • Stepped animation — jumps between discrete states (steps()), as a countdown or a sprite does; smooth easing would be wrong there.
  • Fill mode — whether an element holds an animation's first or last frame outside its active time (forwards keeps the end state).
  • Orchestration — sequencing several animations so they read as one gesture; it is the plan, and stagger-choreography is one technique inside it.
  • Asymmetric easing — a curve that accelerates and decelerates at different rates. Real motion is asymmetric, which is why ease-in-out often reads mechanical. → easing-curves
  • Linear — constant speed. Right for spinners, marquees and progress tied to time; wrong for anything that starts or stops. → easing-curves
  • Velocity / momentum — how fast and which way something moves at the moment you touch it, and motion that keeps going after the input ends. A spring inherits velocity; a tween restarts from zero. → gesture-momentum
  • Stiffness · damping · mass — the three spring dials: how hard it pulls, how fast it loses energy, how heavy it is. Name the dial instead of saying "bouncier". → spring-animations
  • Interruptible animation — it can be redirected mid-flight and curves toward the new target instead of jumping or finishing first. CSS transitions retarget; keyframe animations restart. → spring-animations
  • Crossfade / morph / layout animation — two elements swapping in one spot; one shape becoming another; an element animating to its new size or position instead of snapping. → cross-blur-transitions, morphing-icons, fly-not-teleport
  • Continuity / shared element transition — before and after are visibly the same object (a thumbnail grows into the card it opens), so the user never loses the thread. → fly-not-teleport
  • Direction-aware transition — forward slides one way and back slides the other. Also called a shared-axis transition (above).
  • Scroll reveal / scroll-driven animation — content animating as it enters the viewport, versus animation whose progress is the scroll position. The first is usually decoration. → sticky-and-scroll-tells
  • Page transition / view transition — animation between routes; the browser's View Transitions API morphs the elements two states share. → fly-not-teleport
  • Press feedback / ripple / hold to confirm — a scale-down while held (~0.97); a circle spreading from the tap point (Material's idiom, foreign elsewhere); a fill that completes while the button is held, guarding destructive actions. → responsive-feedback, destructive-actions
  • Number ticker / typewriter — digits rolling to a value (with tabular figures, or the width jitters); text appearing one character at a time. Both read as gimmicks when used for routine updates. → line-length-tracking
  • Mask — like clip-path, but the edge can fade. A mask fade is how overflowing animated content gets clipped softly without breaking the animation. → clip-path-tricks
  • Frame rate / dropped frame / jank — frames drawn per second (60 is the floor and 120 is common); a frame that missed its deadline; the visible stutter of several in a row. → performance-discipline
  • Layout thrashing — reading and writing layout in alternation, or animating width, height, top or left, so the browser re-lays the page out every frame. → transform-opacity-only, debugging-animations
  • Opacity vs visibility — opacity: 0 keeps both the space and the clicks; visibility: hidden keeps the space and drops the clicks; display: none drops both. Fading something out leaves invisible click targets behind unless you also set pointer-events: none or visibility.
  • Filled vs outlined (contextual swap) — outlined icons for the default state and filled ones for active or selected, applied as one rule everywhere or not at all. → icon-systems

07 — Accessibility

How interfaces work for everyone. The baseline is non-negotiable — see accessibility-baseline.

  • WCAG — the contrast standard most teams use; AA is 4.5:1 body, 3:1 large/UI. → contrast-and-color-scheme
  • APCA — a newer perceptual contrast model accounting for size and weight; sometimes disagrees with WCAG.
  • Screen reader — reads the UI aloud; navigates by DOM order, headings, and ARIA roles, not visual layout. → accessibility-baseline
  • Tab order — the keyboard focus sequence; should match reading order, broken when DOM and visual order diverge.
  • Prefers color scheme — the media query for system theme; the right way to honour dark mode without a custom toggle. → dark-mode
  • aria-label — an accessible name for a control with no visible text; describe the action ("Search"), not the icon.
  • Focus trap — keeping keyboard focus inside an open modal so it can't escape to the page behind. → tray-rules
  • DOM order — the HTML sequence screen readers follow; reordering visually with CSS desyncs seen from read.
  • Semantic HTML — the right element for the job; a button gets keyboard, focus, and role for free, a div does not.
  • Label association — tying a label to its input via for/id so clicking the label focuses the field. → forms-validation
  • Color-only state — color as the sole signal (a red border) is invisible to colorblind users; always pair with icon or text.

08 — Information architecture

How content is structured and found.

  • Progressive disclosure — reveal complexity as the user goes deeper instead of dumping it all on one screen.
  • Navigation — the system for moving between areas; labels should match how users describe things, not internal naming.
  • Mental model — the assumptions a user already holds about how a thing behaves; architecture that fits them feels obvious, architecture that fights them makes users feel stupid.
  • Hierarchy — the deliberate ordering of importance; with none, every element shouts equally and the user hears nothing.
  • Empty state — the no-content-yet view; explain why and offer the first action. "No data" ends the journey. → empty-loading-states
  • Error state — what shows on failure; say what broke and a specific way to recover. → states-are-the-work
  • Onboarding — the best kind delivers value immediately; one completed action beats a watched tour. → delight-impact-curve
  • Confirmation dialog — a gate before a destructive action; describe what is lost, keep safe and destructive far apart.
  • Wayfinding — the signals (breadcrumbs, active nav, titles, URL) that say where you are and where you can go. → url-as-state
  • Signpost — an element whose sole job is to orient (a section header, a step counter); you only notice it once it's gone.
  • Labelling — the wording on nav and categories; when users search for something they should have browsed to, the query is a receipt for a mislabel.
  • Depth — levels of nav to reach content; past three, users lose track — add wayfinding or flatten.
  • Search as escape hatch — high search volume for browsable things is a sign the IA failed, not that search needs work.
  • Content inventory — a complete list of everything before restructuring; skipping it just moves broken content.
  • Card sorting — a research method: real users cluster items the way they expect to find them, exposing where the team's labels and the user's expectations split.

09 — Copywriting

How words guide and reassure. The skill's voice work lives in copy-voice.

  • Microcopy — the small text (labels, errors, placeholders) that outsizes its length in how trustworthy a product feels. → copy-voice
  • CTA — the primary action label; "Save changes" outperforms "Submit." Own the action, don't apologise for it. → copy-voice
  • Error message — name what went wrong and how to fix it; "Invalid input" names nothing. → forms-validation
  • Placeholder — hint text that vanishes on typing; it cannot replace a label — the reminder is gone when needed.
  • Sentence case — cap only the first word and proper nouns — the UI default; capitalising Every Word gives microcopy a stiff, contractual tone.
  • Front-loading — lead with the word that carries the meaning, because eyes grab the first token and move on; "3 errors" lands before "There were some problems with your submission" finishes. → copy-voice
  • Inline error — the message next to the offending field; a top-of-form summary makes users hunt. → forms-validation
  • Voice — a product's fixed character in language — warm or clinical, plain or technical. Voice is the constant; tone is what flexes by moment.
  • Tone — how the voice adapts to the moment (encouraging in onboarding, careful around destructive actions).
  • Success message — specific and brief ("Saved", not "Done"); often neglected, never a press release.
  • Destructive language — say "Delete"/"Remove" plainly; softening a permanent action ("clear", "reset") misleads.
  • Scannability — copy built for the glance: lead with the outcome, keep clauses short, stay active. Most UI text is skimmed, not read — write for that.
  • Truncation strategy — where and how overflowing text gets cut; a heading, a nav label, and a body line each want a different cut rule, never one global ellipsis. → copy-voice
  • Contextual help — one sentence placed at the moment of need; cheaper than a tooltip (hover) or docs (navigate).
  • Numeric formatting — 1,000 vs 1000, 3.5k vs 3,500; consistency matters more than the convention, match the locale. → data-is-content

10 — Tools

How design is made and shared.

  • Design system — shared components, tokens, patterns, and guidelines; a living product, not a static doc. → using-design-md
  • Source of truth — the one place a team defers to; increasingly the codebase, not the Figma file. → using-design-md
  • Variables — named, reusable values updated from one place; change once, everything referencing it updates.
  • Tokens — design decisions as named variables both tools and code reference; what makes a system portable. → using-design-md
  • Visual language — the cohesive color/type/shape/motion/tone that makes a product recognisable without its name. → marketing-vs-product-ui
  • Artboard / Frame — a named canvas for a screen or component; Figma frames also define clipping and auto layout.
  • Prototype — an interactive mockup to test a flow; fidelity should match the question being asked.
  • Handoff — design moving to engineering; done well it is shared tokens and an available designer, not guesswork. → using-design-md
  • Redline / annotation — measurements and notes on a design to communicate intent; less needed with a shared system. → agentation-workflow
  • Moodboard — a reference collection to align on direction; the best ones make an argument, the worst are Pinterest. → taste-is-trained
  • HiDPI / Retina — 2×+ pixel-density screens; assets, icons, and borders must account for 2× and sometimes 3×.
  • Open Graph — the share-preview metadata (image, title, description); the first impression for most who don't visit.
  • Skeuomorphism — modelling an interface on a physical object (a leather calendar, a legal-pad notes app) to borrow familiarity. Shadows and gradients alone are depth, not skeuomorphism.

11 — Analysis

How design decisions are measured.

  • A/B test — two variants run live to measure which wins; only as good as the metric chosen.
  • Heatmap — a visualisation of clicks/taps/scroll; spots affordance problems and content nobody reaches.
  • Session recording — replayed footage of one real user's path; where an aggregate heatmap blurs, a recording puts a face on the moment someone gave up — much harder to dismiss.
  • Funnel — the staged path to a goal (sign-up, checkout, activation); every step that sheds users is a problem to diagnose, not a law of nature.
  • Conversion — the moment a visitor takes the desired action; design moves it via clarity, trust, and friction.
  • Bounce rate — share who leave without acting; high on a key page signals an expectation mismatch.
  • Retention — how many return after the first visit; harder and more important than acquisition.
  • Churn — the rate at which existing users leave — retention read backwards; a rising number is the product admitting it no longer earns the return visit.
  • NPS — likelihood-to-recommend, 0–10; a blunt instrument, widely used as a rough satisfaction signal.
  • Scroll depth — how far down users actually read; content below the fold reaches fewer than assumed. → sticky-and-scroll-tells

12 — Components

The building blocks. Their state behaviour is where craft lives — see states-are-the-work. For the pairs people confuse, see component-confusables.

  • Button — the primary trigger; needs distinct default/hover/active/focus/disabled/loading, one primary per view. → hover-default-imperative
  • Input — a text field; needs a persistent label above it, not just a placeholder, and a distinct state each. → forms-validation
  • Textarea — a multi-line input; same state treatment as a single-line field. → forms-validation
  • Select — a one-of-many dropdown; the native element is accessible but hard to style, customs need keyboard care.
  • Checkbox — a binary toggle; clicking the label should toggle it, not just the box. → forms-validation
  • Radio group — exactly one of a set; distinct from checkboxes, which allow several.
  • Switch — an on/off with immediate effect; for settings that apply without a save.
  • Slider — a value within a range; update live on drag, not only on release.
  • Modal / Dialog — an overlay that interrupts and demands attention; trap focus, make the background inert. → component-confusables
  • Sheet — a panel sliding from a screen edge; same focus and dismissal rules as a modal. → component-confusables
  • Drawer — a bottom sheet pulled up from the base; a common mobile dialog replacement. → component-confusables
  • Popover — a click-anchored overlay that can hold interactive content (links, buttons). Not a tooltip. → component-confusables
  • Tooltip — a hover label that cannot hold interactive content; if you need a link inside, use a popover. → component-confusables
  • Toast — a temporary auto-dismissing notification; duration should track reading time, not a flat 2s. → sonner-principles
  • Badge — a small label attached to another element and read-only; numeric implies a count. → component-confusables
  • Tag — a label the user can pick up, toggle, or remove — it categorises and it's interactive. A badge is pinned on; collapsing the two hides a real difference. → component-confusables
  • Accordion — stacked expand/collapse sections; good for FAQs, not a substitute for tabs when comparing.
  • Tabs — switches between related views in one space; for filtering the same content, not navigating unrelated sections.
  • Stepper — a multi-step flow showing progress; show the steps upfront to set expectations.
  • Carousel — a horizontal scroll row; on desktop often a sign the layout wasn't solved. The first item gets the attention.
  • Navigation menu — top-level or flyout structure; labels reflect how users think, not how it was built.
  • Sidebar — persistent edge navigation; works when users move between sections often.
  • Breadcrumb — a location trail in a hierarchy; navigate back at depth without the browser button. → url-as-state
  • Pagination — page controls for lists too long to load at once; infinite scroll is the tradeoff alternative.
  • Skeleton — a placeholder holding content's shape while it loads; better than a spinner for list/page loads. → empty-loading-states
  • Spinner — an indeterminate loader; fine for short action waits, a skeleton wins for page/list loads. → empty-loading-states
  • Avatar — a small user image; needs a fallback (initials or icon) when the image fails. → avatar-systems
  • Card — a contained surface grouping content; inner radius < outer, and a fully-linked surface kills text selection. → cards-design
  • Data table — a row/column grid; right-align numbers with tabular nums — alignment does zebra-striping's job. → data-is-content
  • Combobox — a typeable input whose list narrows with each character; feels like free text but only lets the user land on a valid option.
  • Command menu — a keyboard-triggered search for navigating or acting; for power users avoiding the mouse.
  • Progress — a bar for a determinate process; for unknown durations use a spinner instead.
  • Separator — a visual divider; often overused where spacing would do the same job.

13 — Sound

The words for what an interface sounds like. This category is the skill's own extension of the Index module; see [[MOC-sound]].

  • Transient — the sharp onset of a sound; the part you sync to a frame. → sound-motion-sync
  • Earcon — a short abstract tone whose meaning is learned (rising = success); distinct from an auditory icon, which imitates a real sound. → sound-palette
  • Contour — the pitch shape of a sound over time: rising, falling, flat. Carries meaning before timbre does. → sound-palette
  • Timbre / material — what the sound is made of — wood, glass, breath. A product has one. → sound-palette
  • Envelope (ADSR) — attack, decay, sustain, release; UI sounds are nearly all attack and decay. → sound-spec
  • Tail — the decay after the event; the first thing to cut. → sound-spec
  • Dry / wet — without / with reverb; UI sounds are dry. → sound-generation-elevenlabs
  • One-shot / loop — a sound that plays once vs one that sustains a state (processing, recording). → sound-spec
  • Sprite — several sounds in one file addressed by offset; one decode for the whole family. → sound-spec
  • LUFS / dBFS / true peak — perceived loudness, sample level, and the reconstructed peak; the three numbers a spec names. → sound-spec
  • Ducking — lowering one track (a bed) while another (a hit, a voice) plays. → launch-video-music, sound-from-motion
  • Pre-roll — silence before a file's transient; a sync bug disguised as an asset. → sound-motion-sync
  • Whoosh / riser / stinger / braam — the motion-graphics vocabulary: movement, tension build, a brand hit, a cinematic drone. Product UI uses none of them. → launch-video-sound
  • Audio-haptic harmony — Apple's term for sound, haptic, and visual describing the same physical event at the same instant. → sound-motion-sync

14 — Launch film

The words for a rendered film's editorial choices. Like Sound, this category is the skill's own extension of the Index module; see [[MOC-launch-video]].

  • Register — the editorial mode that fixes a film's cut rate, stillness and loudness; pick it before anything else. → launch-video-registers
  • Poster frame — 1-4 frames of the finished title or hero at t = 0, then a cut; it fixes the autoplay thumbnail. → launch-video-structure
  • Cut the curve — HyperFrames' lateral hard cut taken at peak speed: the exit accelerates into the cut and the entry decelerates out of it on mirrored curves, so the speed is equal on both sides. Inside a HyperFrames project the stamped eases win (hyperframes-reconciliation). → launch-video-seams
  • Scale cut — scale changed by a cut rather than a zoom: a one- or two-frame jump of ~2-3× on the element being read. → launch-video-cuts
  • Subtractive punctuation — the low end or the whole mix taken away just before a key beat, so the reveal lands on something withheld. → launch-video-sound

Sources

  • Index — Say Precisely What You Mean, Emil Kowalski & Glenn Carstens-Peters — index.how/to/articulate. The 188-term articulate module this lexicon is seeded from; the canonical reference, arriving fall 2026. Glosses here are this skill's own.
  • Launch film terms: HKTITAN's launch-film corpus (Skale and acclaimed films, measured 2026-09-28, docs/research/launch-films/) and heygen-com/hyperframes .agents/skills/cut-the-curve/SKILL.md (Apache-2.0, repo-internal).
  • Cross-linked throughout to this skill's own clusters: [[MOC-philosophy]], [[MOC-motion]], [[MOC-surface]], [[MOC-typography]], [[MOC-components]], [[MOC-layout]], [[MOC-anti-patterns]], [[MOC-sound]], [[MOC-launch-video]].

metavocabularyreferencearticulation