Standard Navigation
Mobile Bottom Tab Bar
Fixed, app-style bottom navigation for 3-5 top-level destinations on phone-width screens. Clear active state, icon + label pairing, and safe-area padding so it never collides with an iOS home indicator or Android gesture bar.
$ velocityx add standard-mobile-bottom-tab-bar
Built for react.
Needs react already installed
as a peer dependency.
An Astro-only project needs @astrojs/react wired up first — this won't run on its own in plain Astro.
Full docs for Mobile Bottom Tab Bar →
Needs a licence key —
subscribe here, then
velocityx loginonce.
Props
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
| items | { id: string, label: string, href: string, icon: ReactNode, badge?: number|string }[] | No | [] | 3-5 items |
| activeId | string | Yes | id of the current destination | |
| onNavigate | (id: string) => void | Yes | called before following href; return false to prevent navigation | |
| label | string | No | 'Primary' | accessible name for the <nav> |
| className | string | No | '' |
File this creates
The CLI writes this path into your project, relative to its root — nothing else moves.
components/velocity/standard-mobile-bottom-tab-bar/MobileBottomTabBar.jsx Using the Mobile Bottom Tab Bar component
Install it with velocityx add standard-mobile-bottom-tab-bar.
The CLI writes the source straight into your project — no runtime dependency, no registry
lock-in, and it themes itself from the same primary-*/accent-* scale as the rest of the library.
Related components
More from Standard Navigation.
In-page section links that highlight themselves as the reader scrolls, so a long docs or landing page always shows where you are without you having to hunt for it. Tracks visibility with IntersectionObserver, never a scroll handler, so it costs nothing on long pages.
reactA 'waffle' product switcher popover for suites that have grown past one nav bar into several standalone apps — a grid of icon tiles for every section, the current one marked, fully arrow-key navigable and closes cleanly on outside click or route change.
reactHeader for a drill-down screen: a real back link to the parent (not a history hack), the page title and optional subtitle, and an overflow menu for secondary actions that don't need a permanent button.
reactWayfinding trail for deep page hierarchies that collapses middle segments behind an ellipsis on narrow screens, keeping the root and current page always visible, with the current page shown as text rather than a dead link.
react