Stepper

Data-driven multi-step progress stepper component for checkout wizards, onboarding flows, and form sequences.

// Plain markup
import { Stepper } from "@shavin/ui";

Horizontal (interactive)

  1. Account

    Email & password

  2. 2

    Profile

    Name & avatar

  3. 3

    Workspace

    Team setup

  4. 4

    Done

    Review & finish

const STEPS = [
  { title: "Account", description: "Email & password" },
  { title: "Profile", description: "Name & avatar" },
  { title: "Workspace", description: "Team setup" },
  { title: "Done", description: "Review & finish" },
];

const [current, setCurrent] = useState(1);

<Stepper steps={STEPS} current={current} />

Vertical

  1. Account

    Email & password

  2. Profile

    Name & avatar

  3. 3

    Workspace

    Team setup

  4. 4

    Done

    Review & finish

<Stepper steps={STEPS} current={2} orientation="vertical" />

Titles only (no descriptions)

  1. Cart

  2. 2

    Shipping

  3. 3

    Payment

<Stepper
  steps={[{ title: "Cart" }, { title: "Shipping" }, { title: "Payment" }]}
  current={1}
/>

Small (size='sm')

  1. Account

    Email & password

  2. 2

    Profile

    Name & avatar

  3. 3

    Workspace

    Team setup

  4. 4

    Done

    Review & finish

<Stepper steps={STEPS} current={1} size="sm" />

Props

PropTypeDefault
steps*Step[]
current*number
orientation"horizontal" | "vertical"
sizeStepSize
classNamestring

* required

Configure Theme
Theme
Accent Color
Custom
Gray Family
Appearance
Radius
Scaling
Panel Style
Heading Font
Body Font