Component

Numbered Steps

A static how-it-works step grid with zero-padded ordinal badges, titles, and body copy — ideal for onboarding flows and feature overviews. Not a stateful stepper; use the Steps component for that.

Four steps

The default layout with four items automatically uses a four-column grid.

01

Create an account

Sign up with your email address to get started in seconds.

02

Configure settings

Choose your preferences and connect the tools you already use.

03

Invite your team

Add teammates to your workspace and assign roles.

04

Start building

Use our API and components to ship your first feature.

Three steps

Three items produce a three-column grid by default.

01

Install the package

Add @refraction-ui/react to your project with your package manager.

02

Import components

Import the components you need directly from the package.

03

Ship it

Build accessible, themeable UIs with zero configuration.

Custom columns

Pass columns to override the automatic column count — useful for responsive layouts or condensed sidebars.

01

Install the package

Add @refraction-ui/react to your project with your package manager.

02

Import components

Import the components you need directly from the package.

03

Ship it

Build accessible, themeable UIs with zero configuration.

Installation

$pnpm add @refraction-ui/react

Usage

tsx
import { NumberedSteps } from '@refraction-ui/react'

const steps = [
  { title: 'Create an account', body: 'Sign up with your email address.' },
  { title: 'Configure settings', body: 'Choose your preferences.' },
  { title: 'Invite your team', body: 'Add teammates to your workspace.' },
  { title: 'Start building', body: 'Use our API to ship your first feature.' },
]

export function HowItWorks() {
  return <NumberedSteps items={steps} />
}

Props

PropTypeDefaultDescription
itemsNumberedStepItem[]--The step items to display. Each item has a `title` and `body` string.
columnsnumber--Override the number of grid columns. Defaults to clamping the item count to 2–5.
classNamestring--Additional CSS classes to apply to the grid container.