Skip to content

StepList

A numbered sequence of steps, each with a title, a line of body text and an optional control. Done steps show a check.

DataServer-rendered

Examples

Setup steps in a Card

The empty-account Overview. The first step is done, so it shows a check and loses its button.

Light

Get set up

Three steps from an empty account to an agent calling your tools.

  1. Add a server (done)

    Paste the URL of any MCP server.

  2. Connect your agent

    Add your Switchboard URL to Claude Code, Codex, Cursor or VS Code.

  3. Make a first call

    Ask your agent to use a tool.

Dark

Get set up

Three steps from an empty account to an agent calling your tools.

  1. Add a server (done)

    Paste the URL of any MCP server.

  2. Connect your agent

    Add your Switchboard URL to Claude Code, Codex, Cursor or VS Code.

  3. Make a first call

    Ask your agent to use a tool.

Example
<Card>
  <CardHeader title="Get set up" description="…" />
  <CardBody>
    <StepList
      steps={[
        { title: 'Add a server', body: 'Paste the URL of any MCP server.', done: true },
        { title: 'Connect your agent', body: '…', aside: <Button size="sm" variant="secondary" href="/dashboard/connect">Connection guides</Button> },
        { title: 'Make a first call', body: 'Ask your agent to use a tool.' },
      ]}
    />
  </CardBody>
</Card>

Usage

Usage
import { StepList } from '@switchboard/ui'

<StepList steps={[{ title, body?, aside?, done? }]} />

Props

Every component also takes mix, for css() and mixins applied after its own style.

StepList

StepList props
PropTypeDefaultDescription
steps*{ title; body?; aside?: RemixNode; done?: boolean }[]–The steps, in order.
level3 | 43Heading level of each step title.

Also accepts every <ol> attribute.

CardHeader (icon)

CardHeader (icon) props
PropTypeDefaultDescription
iconIconName–Accent icon in front of the title: the one colour on a neutral card (Overview "Connect your agent").

SidebarSection (pinned)

SidebarSection (pinned) props
PropTypeDefaultDescription
pinned'bottom'–Pushes the section to the foot of the sidebar nav, with a hairline above (Settings).

Accessibility

  • An <ol>, so screen readers announce the count and position; the visible number is aria-hidden.
  • Done steps add a visually hidden "(done)" to the title; the check is never the only signal.

Guidance

Do

  • Use it for a real sequence, where order matters.
  • Keep one control per step, on the step it belongs to.

Don’t

  • Use it for an unordered feature list (use a Grid of Cards).
  • Show 0-value stats next to it on an empty account.