Navigation
TabBarMobile
iOS-style bottom tab bar โ fixed at the bottom with icon + label per tab.
Quick Preview
The real component uses position: fixed. This mockup simulates how it looks inside a phone frame.
Fixed positioning: TabBarMobile uses position: fixed; bottom: 0. Mount it once at the root layout so it stays at the bottom of the screen across all pages.
Installation
// Copy fromsrc/components/navigation/TabBarMobile.tsx
Usage
// app/layout.tsximport TabBarMobile from '@/components/navigation/TabBarMobile'const tabs = [{ icon: '๐ ', label: 'Home', href: '/' },{ icon: '๐', label: 'Explore', href: '/explore' },{ icon: '+', label: 'Create', href: '/create' },{ icon: '๐', label: 'Activity', href: '/activity' },{ icon: '๐ค', label: 'Profile', href: '/profile' },]export default function RootLayout({ children }) {return (<html><body className="pb-20 md:pb-0">{children}<TabBarMobile items={tabs} /></body></html>)}
Examples
Prompt Preview
Copy a prompt that recreates this UI
Paste this into your AI coding assistant to generate code that closely matches the reference, including color, size, shape, typography, spacing, and polish.
Copy-ready AI prompt
Starts from the current visual reference and project constraints.
Tweak only product-specific copy or data after the first generation pass.
Props
| Prop | Type | Default | Description |
|---|---|---|---|
items* | TabBarItem[] | - | Array of {icon, label, href} |
activeHref | string | - | Currently active route href |