Glow Tabs

Underline tabs with dithered light rising from the active line.

Glow Tabs in a project dashboard
Still frame

Installation

pnpm dlx shadcn@latest add @gradients-pro/glow-tabs

Needs a Pro account and the Pro registry setup.

Usage

import { GlowTabs } from "@/components/glow-tabs";

<GlowTabs label="Project" tabs={tabs} onValueChange={setTab} />;

Props

PropTypeDefaultDescription
tabsGlowTab[]requiredThe tabs: value, label, and optional panelId (sets aria-controls) and disabled.
labelstringrequiredAccessible name for the tab list.
valuestringnoneControlled value.
defaultValuestringfirst tabInitial value when uncontrolled.
onValueChange(value: string) => voidnoneCalled when the user picks a tab.
palette"ultramarine" | "ember" | "mono" | string[]"ultramarine"A curated ramp, or your own 2 to 6 CSS colours from faint to hot (var(--x) included). Curated ramps switch between a light and a dark version with your theme.
cellnumber2Size of one dither cell in CSS pixels.
scheme"light" | "dark"follows the pageForces a colour scheme. By default it reads a dark or light class (or data-theme) on <html>, then the system setting.
className, other div propsPassed to the tab list.