tsimport {XDSTabMenu} from '@xds/core/TabList'
| Guidance | Practices |
|---|---|
| Do | Keep tab labels short and descriptive so users can quickly scan available sections. |
| Do | Use XDSTabMenu to group overflow items when horizontal space is limited rather than scrolling tabs off-screen. |
| Do | When using hasDivider with action buttons alongside tabs, use a smaller button size (sm) so the actions don’t overpower the tab row. |
| Don't | Use tabs for sequential steps or workflows — use a stepper or wizard pattern instead. |
| Don't | Place more than 6–8 visible tabs before the overflow menu — prioritize the most important categories. |
| Don't | Confuse TabList with XDSSegmentedControl or XDSToggleButton. TabList is for navigation between views. SegmentedControl and ToggleButton are input controls — SegmentedControl always has exactly one selected option, while ToggleButton can be toggled on or off. |
tsx'use client';import {XDSTabList, XDSTab, XDSTabMenu} from '@xds/core/TabList';export default function TabMenuShowcase() {return (<XDSTabList value="settings" onChange={() => {}}><XDSTab value="overview" label="Overview" /><XDSTab value="activity" label="Activity" /><XDSTabMenulabel="More"options={[{value: 'settings', label: 'Settings'},{value: 'integrations', label: 'Integrations'},{value: 'billing', label: 'Billing'},]}/></XDSTabList>);}