docs/components/bottom-navigation
Sections
Components
Utilities
Forms
Hooks
Copy Markdown
Fixed bottom nav for mobile-first apps.
PreviewCode
HomeSearchNewsProfile
CLIManual
pnpmbunnpmyarn
pnpm dlx shadcn@latest add @shark/bottom-navigation
BottomNavigation
└── BottomNavigationList
└── BottomNavigationItem
├── BottomNavigationItemIcon
└── BottomNavigationItemLabel
import {
BottomNavigation,
BottomNavigationList,
BottomNavigationItem,
BottomNavigationItemIcon,
BottomNavigationItemLabel,
} from "@/components/ui/bottom-navigation";
<BottomNavigation defaultValue="home">
<BottomNavigationList>
<BottomNavigationItem value="home">
<BottomNavigationItemIcon>
<HomeIcon />
</BottomNavigationItemIcon>
<BottomNavigationItemLabel>Home</BottomNavigationItemLabel>
</BottomNavigationItem>
<BottomNavigationItem value="notifications">
<BottomNavigationItemIcon>
<BellIcon />
</BottomNavigationItemIcon>
<BottomNavigationItemLabel>Notifications</BottomNavigationItemLabel>
</BottomNavigationItem>
</BottomNavigationList>
</BottomNavigation>
Don't include
position: absoluteon theBottomNavigationList. It's just for the examples.
Use aria-label on the BottomNavigationItem to give the item a label for screen readers.
PreviewCode
Use the asChild prop on BottomNavigationItem with Link.
PreviewCode
Root wrapper for the bottom navigation bar.
| Prop | Type | Default |
|---|---|---|
value | string | - |
defaultValue | string | - |
onValueChange | (details: ValueChangeDetails) => void | - |
className | string | - |
asChild | boolean | false |
Fixed bar at the bottom. Typically holds nav items.
| Prop | Type | Default |
|---|---|---|
className | string | - |
asChild | boolean | false |
Single navigation link or button.
| Prop | Type | Default |
|---|---|---|
value | string | required |
disabled | boolean | false |
className | string | - |
asChild | boolean | false |
Holds the item icon.
| Prop | Type | Default |
|---|---|---|
className | string | - |
asChild | boolean | false |
Holds the item label text.
| Prop | Type | Default |
|---|---|---|
className | string | - |
asChild | boolean | false |
For a complete list of props, see the Ark UI documentation.
[
Previous page
Badge ](/docs/components/badge)[
Next page
Breadcrumb ](/docs/components/breadcrumb)
On This Page
InstallationAnatomyUsageDisclaimerExamplesIcon onlyWith linksAPI ReferenceBottomNavigationBottomNavigationListBottomNavigationItemBottomNavigationItemIconBottomNavigationItemLabel