Stepper Navigation

Multi-step form with a visual stepper component synced to the wizard.

How It Works

  1. Keep default footer – Pass (slot) => slot.defaultStepper to preserve Next/Back buttons
  2. Sync with Stepper – Bind value to stepper.state.index and onValueChange to stepper.actions.goTo
  3. Disable future steps – Prevent jumping ahead with disabled={idx > stepper.state.index}

The key difference from Multi-Step Wizard:

  • () => null – Hides default UI for fully custom navigation
  • (slot) => slot.defaultStepper – Keeps default footer, lets you add a visual progress indicator

See Stepper Hook for the full API and the Stepper component for styling options.

On this page