Skip to main content

Steps

Show the named stages of an ordered workflow. Steps is a display-only indicator; keep the current index and any form or panel state in your application.

import { Steps } from '@jbpark/ui-kit';

<Steps
current={1}
items={[
{ title: 'Account', description: 'Create your account' },
{ title: 'Profile', description: 'Add your details' },
{ title: 'Review', description: 'Confirm and submit' },
]}
/>;

Props​

PropTypeDefaultDescription
itemsreadonly Item[]requiredOrdered workflow stages.
currentnumber0Zero-based current index. Out-of-range values are clamped to the first or last item.
orientation'horizontal' | 'vertical''horizontal'Layout direction.
classNamestring-Navigation root class.
classNames{ list?, item?, indicator?, title?, description?, connector? }-Classes for internal parts.
aria-labelstring'Progress'Accessible name of the workflow.

Each Item has a required title and optional key, description, icon, and status: 'error'. Steps before current are completed; later steps are upcoming. An error overrides the derived visual state. The current list item always receives aria-current="step", including when it is in error. Status text is available to screen readers. Custom icons are decorative, so provide meaningful stage names in title.

The component also accepts native <nav> props such as dir, style, and id. It does not render links or buttons; use your own navigation controls to move through a workflow.