tabs
neobrutalui/tabsFreeComponent
Switch between multiple content sections with tab controls.
Live preview
live · rendered by the registry
Rendered by neobrutalui on their own page — this is the component running, not a screenshot of it.Install it
npx shadcn@latest add https://www.neobrutalui.live/r/tabs.jsonSource
1"use client"23import * as React from "react"4import { Tabs as BaseTabs } from "@base-ui/react/tabs"5import { cn } from "@/lib/utils"67const Tabs = BaseTabs.Root89type TabsListProps = React.ComponentPropsWithoutRef<typeof BaseTabs.List>1011const TabsList = React.forwardRef<12 React.ComponentRef<typeof BaseTabs.List>,13 TabsListProps14>(({ className, ...props }, ref) => (15 <BaseTabs.List16 ref={ref}17 className={cn(18 "inline-flex items-center gap-1 rounded-base border-2 border-black bg-white p-1",19 className20 )}21 {...props}22 />23))24TabsList.displayName = "TabsList"2526type TabsTriggerProps = React.ComponentPropsWithoutRef<typeof BaseTabs.Tab>2728const TabsTrigger = React.forwardRef<29 React.ComponentRef<typeof BaseTabs.Tab>,30 TabsTriggerProps31>(({ className, ...props }, ref) => (32 <BaseTabs.Tab33 ref={ref}34 className={cn(35 "inline-flex items-center justify-center whitespace-nowrap rounded-base px-4 py-2 text-sm font-bold transition-colors focus-brutal disabled:pointer-events-none disabled:opacity-50 data-active:border-2 data-active:border-black data-active:bg-main data-active:text-black data-[state=inactive]:bg-transparent data-[state=inactive]:hover:bg-main/50 text-black",36 className37 )}38 {...props}39 />40))41TabsTrigger.displayName = "TabsTrigger"4243type TabsContentProps = React.ComponentPropsWithoutRef<typeof BaseTabs.Panel>4445const TabsContent = React.forwardRef<46 React.ComponentRef<typeof BaseTabs.Panel>,47 TabsContentProps48>(({ className, ...props }, ref) => (49 <BaseTabs.Panel50 ref={ref}51 className={cn(52 "mt-4 rounded-base border-2 border-black bg-white p-4 shadow-brutal focus-brutal text-black",53 className54 )}55 {...props}56 />57))58TabsContent.displayName = "TabsContent"5960export { Tabs, TabsList, TabsTrigger, TabsContent }
What it pulls in
Other registry items
More from neobrutalui
All 24 items| Component | Registry | Kind | Access | Installs | Command |
|---|---|---|---|---|---|
| accordionaccordion | neobrutalui | Components | Free | 2 deps | |
| alertalert | neobrutalui | Components | Free | 1 dep | |
| avataravatar | neobrutalui | Components | Free | no deps | |
| badgebadge | neobrutalui | Components | Free | 1 dep | |
| buttonbutton | neobrutalui | Components | Free | 1 dep | |
| cardcard | neobrutalui | Components | Free | no deps | |
| checkboxcheckbox | neobrutalui | Components | Free | 2 deps | |
| date-pickerdate-picker | neobrutalui | Components | Free | 2 deps |
