# NavigationBar A universal header component for navigation and wayfinding. ## Import ```tsx import { NavigationBar } from '@coinbase/cds-web/navigation/NavigationBar' ``` ## Examples ### Web: Logged in Navigation Bar ```jsx live function NavigationWithPress() { const tabs = [ { id: 'all', label: 'All', }, { id: 'watchlist', label: 'Watchlist', }, { id: 'tradable', label: 'Tradable', }, { id: 'gainers', label: 'Gainers', count: 2, }, { id: 'losers', label: 'Losers', }, { id: 'trending', label: 'Trending', }, { id: 'other', label: 'Other', }, ]; const [search, setSearch] = useState(''); const [value, setValue] = useState(tabs[1].id); const showBackButton = useMemo(() => value !== tabs[0].id, [value]); const handleBackPress = useCallback(() => { setValue(tabs[0].id); }, []); return ( ) } end={ } bottom={} > ); } ``` ## Props | Prop | Type | Required | Default | Description | | --- | --- | --- | --- | --- | | `children` | `null \| string \| number \| false \| true \| ReactElement> \| Iterable \| ReactPortal` | Yes | `-` | The middle content. Use the children to render the page title | | `accessibilityLabel` | `string` | No | `-` | Accessibility label for the nav bar | | `bottom` | `null \| string \| number \| false \| true \| ReactElement> \| Iterable \| ReactPortal` | No | `-` | The bottom content. Use to render tabs | | `columnGap` | `0 \| 5 \| 10 \| 0.25 \| 0.5 \| 0.75 \| 1 \| 1.5 \| 2 \| 3 \| 4 \| 6 \| 7 \| 8 \| 9` | No | `2` | Space between the start, children, and end of the nav bar | | `dangerouslyDisableOverflowHidden` | `boolean` | No | `-` | Disable the overflow: hidden style from being injected to the child Col | | `end` | `null \| string \| number \| false \| true \| ReactElement> \| Iterable \| ReactPortal` | No | `-` | Node (icons, avatar, etc) to display at the end of the nav bar | | `paddingBottom` | `0 \| 1 \| 2 \| 3 \| 4 \| 5 \| 6 \| 7 \| 8 \| 9 \| 10 \| 0.25 \| 0.5 \| 0.75 \| 1.5` | No | `2` | - | | `paddingTop` | `0 \| 1 \| 2 \| 3 \| 4 \| 5 \| 6 \| 7 \| 8 \| 9 \| 10 \| 0.25 \| 0.5 \| 0.75 \| 1.5` | No | `2` | - | | `paddingX` | `0 \| 1 \| 2 \| 3 \| 4 \| 5 \| 6 \| 7 \| 8 \| 9 \| 10 \| 0.25 \| 0.5 \| 0.75 \| 1.5` | No | `2` | - | | `rowGap` | `0 \| 5 \| 10 \| 0.25 \| 0.5 \| 0.75 \| 1 \| 1.5 \| 2 \| 3 \| 4 \| 6 \| 7 \| 8 \| 9` | No | `2` | Space between bottom of the nav bar and the rest of its content | | `start` | `null \| string \| number \| false \| true \| ReactElement> \| Iterable \| ReactPortal` | No | `-` | Node (ie Back button) to display at the start of the nav bar | | `testID` | `string` | No | `-` | Used to locate this element in unit and end-to-end tests. Under the hood, testID translates to data-testid on Web. On Mobile, testID stays the same - testID |