GitHub

Stepper

Animated multi-step progress indicator with active state transitions

Basic Usage

Loading...

Installation

pnpm add @corew500/ui

Usage

import { Stepper } from "@corew500/ui/stepper"

<Stepper>Content</Stepper>

Variants

stepperVariants

AxisValuesDefault
size
smdefaultlg
default

API Reference

Props

PropTypeDefaultDescription
initialStepnumber1Initial step number (1-indexed)
onStepChange(step: number) => voidCallback when step changes
onFinalStepCompleted() => voidCallback when final step is completed
disableStepIndicatorsenumfalseDisable clicking on step indicators to navigate
backButtonTextstringBackBack button text
nextButtonTextstringContinueNext button text
completeButtonTextstringCompleteComplete button text (last step)
renderStepIndicator(props: { step: number; currentStep: number; onStepClick: (step: number) => void; }) => ReactNodeCustom step indicator renderer
sizeenum

Accessibility

Keyboard Navigation

  • Navigation buttons are keyboard accessible
  • Step list uses role="tablist" for semantics

Screen Readers

  • - Step indicators use aria-label for screen readers
  • Active step uses aria-current="step"
  • Icons use aria-hidden="true" as they are decorative

Localization

Translatable Content

  • - All button text is customizable via props
  • Pass pre-translated strings for i18n support

Related

Related Components