Skip to main content

Storybook

Stepper

A stepped navigation component used to guide users through a sequential multi-stage process. Use when each step must be completed in order. Don't use for more than 7 steps.

Figma Storybook Docs

Description

What it does

Displays a numbered sequence of steps with clear visual indicators of progress — completed, current, and upcoming — so users always know where they are in a multi-stage process.

Where it appears

Multi-step forms and wizards in Open Point and Social Point, such as creating a new consultation, onboarding a stakeholder, or submitting a community engagement response.

Why it exists

Government workflows frequently require users to provide information across several distinct stages. A stepper enforces order, reduces cognitive load by chunking the process, and provides a persistent progress indicator so users can orient themselves without re-reading the full form.

Anatomy

PartRequired?Notes
Step indicator (circle/icon) Required A numbered circle for upcoming and current steps; a checkmark icon for completed steps. Communicates state at a glance.
Step label Required Short text label naming the step (e.g. 'Contact details', 'Review'). Must be concise — no more than 3 words.
Connector line Required Horizontal or vertical line linking adjacent step indicators. Fills with the interactive colour as steps are completed.
Step subtitle Optional A secondary line of text below the label providing brief context (e.g. 'Required fields only'). Use sparingly.
Step content area Required The region below or beside the stepper where the active step's form or content is rendered. Not part of the stepper component itself but must be clearly associated.
Navigation controls Recommended Back and Next/Submit buttons that live below the step content. Typically a Button pair; the stepper does not render these itself.

Variants

Horizontal

Steps are arranged left-to-right with connector lines between them.

Use for processes with 3–5 steps where horizontal space is available, such as desktop-width multi-step forms in Open Point admin views.

Vertical

Steps are stacked top-to-bottom with connector lines running between them.

Use on narrow viewports or when step labels are longer than two words. Preferred on mobile and within sidebars.

Compact

Reduced-size indicators and labels; connector lines are thinner.

Use when the stepper must coexist with dense content (e.g. inside a dialog or a narrow panel). Minimum indicator size must still meet 44x44px touch target.

States

State Behaviour
Upcoming Step indicator is an outlined circle with a muted fill (--op-color-bg-secondary). Label text uses --op-color-text-secondary. Connector line to this step is unfilled.
Current (active) Step indicator circle uses --op-color-interactive-default fill with white numeral. Label uses --op-color-text-primary and font-weight bold. A visible focus ring (3px, --op-color-interactive-focus) is present when the indicator has keyboard focus.
Completed Step indicator shows a checkmark icon on --op-color-interactive-default background. Connector line leading to this step fills with --op-color-interactive-default. Label text uses --op-color-text-secondary.
Error Step indicator shows an alert icon on --op-color-status-error background. Label uses --op-color-status-error. Use when the user returns to a step that contains a validation error.
Disabled Step indicator and label use --op-color-text-disabled. The step is not clickable or focusable. Reserved for steps locked behind incomplete prerequisites. Avoid overuse — government users need to understand why a step is unavailable.

Usage guidelines

When to use

  • Creating a new consultation in Open Point that has 3 or more distinct phases (e.g. Details, Stakeholders, Notifications, Review).
  • Guiding a community member through a multi-stage submission in Social Point (e.g. Personal info, Your response, Review and submit).
  • Any workflow where the user must complete steps in a fixed order and progress should be saved per step.
  • Onboarding flows where orientation ('you are on step 2 of 5') reduces abandonment.

When not to use

  • Fewer than 3 steps — use a single form with sections or a tabbed layout instead.
  • More than 7 steps — break the process into separate pages or grouped stages.
  • Non-sequential workflows where steps can be completed in any order — use a task list or checklist instead.
  • Simple confirmation flows — a single confirmation dialog or page is sufficient.
  • Navigation between unrelated pages — use the site navigation or breadcrumbs instead.

Do / Don't

Do

Keep step labels to 1–3 words so they remain legible at all viewport widths.

Don't

Don't use full sentences or questions as step labels (e.g. 'What are your contact details?' is too long).

Do

Save progress at each step so users can return without losing data.

Don't

Don't require users to restart the entire process if they navigate away or their session expires.

Do

Allow users to navigate back to completed steps to review or edit their answers.

Don't

Don't lock completed steps — government users frequently need to check earlier answers before submitting.

Do

Show validation errors inline within the step content, and reflect the error state on the step indicator.

Don't

Don't show a generic error at the top of the page without indicating which step contains the problem.

Do

Use the vertical variant on mobile viewports.

Don't

Don't force a 5-step horizontal stepper on a 375px screen — labels will truncate or overflow.

Was this page helpful?

Updated 9 September 2026