Canonical inventory
Navigation · core
Tabs
navigation.tabsTabs switch one shared content region between a small set of peer views.
tabsthe control that changes viewsthe wayfinding element
States5
Touch target44px
Evidence6
Introduced by8 kits
Visual specimen
Same contract. Every kit voice.
Translation table
What code calls it.
Webrole=tablistThe closest native or standardized web primitive.direct
ARIAtablistThe primary accessibility role or state pattern.direct
SwiftUITabViewThe nearest named SwiftUI API.direct
AppKitNSTabViewThe nearest named AppKit API.direct
Anatomy
Every part, named.
- 1Tab list
- 2Tab labels
- 3Selected-tab indicator
- 4Tab panels
- 5Arrow-key and focus behavior
Often confused with
Similar shape. Different contract.
Segmented tabs
navigation.segmented-tabsShares a visual family, but has a different role, state model, or interaction contract.
Pill tabsnavigation.pill-tabsShares a visual family, but has a different role, state model, or interaction contract.
Bottom navigationnavigation.bottom-navShares a visual family, but has a different role, state model, or interaction contract.
Prompt · paste into your agent
Ask for the exact thing.
Implement the canonical Tabs component (navigation.tabs). Tabs switch one shared content region between a small set of peer views. Support these states: default, hover, focus-visible, active, disabled. Use semantic design tokens rather than raw visual values. Preserve a minimum 44px touch target where interactive. Provide and verify: implementation, state-matrix, responsive, keyboard, touch, reduced-motion. Keep the component API stable so every Studio kit can supply its own rendering without changing the behavior contract.Studio contract
What must be proven.
Required states
default · hover · focus-visible · active · disabled
Required evidence
implementation · state-matrix · responsive · keyboard · touch · reduced-motion
Source union
mavan · jade · lumen · aurora · cabana · purple-rain · spatial · margin