Stepper
FFG-native progress track — a horizontal stepper with done, active, and pending states and a pulsing active bar.
Funded
Jun 1
Released
Jun 3
Clearing
In progress
Delivered
Installation
pnpm dlx shadcn@latest add @ffg/stepperUsage
import { Stepper } from "@/components/ui/stepper";
<Stepper
steps={[
{ label: "Funded", date: "Jun 1", progress: 100, state: "done" },
{ label: "Clearing", note: "In progress", progress: 50, state: "active" },
{ label: "Delivered", progress: 0, state: "pending" },
]}
/>A data-driven progress track. Each step is a thin 2px bar above a label and an optional secondary line. Column count follows the number of steps, so 3/4/5+ tracks lay out evenly.
Each step takes a state:
- done — bar filled to
progress, shows thedate - active — bar filled to
progressand pulsing (thebar-pulsekeyframe), shows thenote - pending — empty or partial bar, no secondary line
Dark mode: the bar track maps to the
mutedtoken and the fill uses the cerulean data-qual accent, so the track stays legible against either background. Labels and dates useforegroundat reduced opacity.