search⌘K

Dot Status

Last Updated: September 2026

Dot statuses indicate the current stage an entity lives in. They are intended to be real time and support a variety of colors as well as custom labels.

Anatomy

link
Dotted grid scale: 8px
  1. 1Halo
  2. 2Dot

Variants

link

Inactive

Not started / idle. Default label: Not Started.

Active

In progress. Default label: In Progress.

Success

Complete / healthy. Default label: Complete.

Warning

Needs attention. Default label: Warning.

Urgent

Error / blocked. Default label: Error.

Custom label

Override the default status copy with a context-specific label.

Dot only

Pass label="" to render the colored dot without text.

Usage Guidelines

link

When to use

  • •To show a discrete process or record status at a glance.
  • •In tables, lists, or headers where space is limited.
  • •When color plus a short label communicates state clearly.

When not to use

  • •For multi-step workflows — use Stepper.
  • •For categorical labels without status meaning — use Tag.
  • •For loading/in-flight work — use Spinner or Bar.
checkDo

Pair status color with a readable label in dense lists.

closeDon't

Don't rely on color alone when the meaning isn't obvious nearby.

checkDo

Use urgent for errors and name the consequence in the label.

closeDon't

Don't use urgent/warning colors with contradictory labels.

Behaviors

link

Default labels

  • •When label is omitted, DotStatus uses Not Started, In Progress, Complete, Warning, or Error.
  • •Pass an empty string (label="") to hide the label entirely.

Layout

  • •Root is a flex row with a small gap — nest freely in tables and cards.
  • •children is omitted from the public props; use label for text.

Content Guidelines

link

Labels

  • •Keep labels short (1–3 words) and status-oriented.
  • •Prefer sentence case ('In review', not 'IN REVIEW').
  • •Use synthetic demo statuses only — never real patient or claim identifiers.

Accessibility

link

Text & Labels

  • •Prefer a visible label so status is not color-only.
  • •When using label="", ensure nearby text conveys the same meaning.

ARIA attributes

  • •The root is a div — add aria-label if the status is not accompanied by visible text.

Keyboard Support

  • •DotStatus is not interactive and is not in the tab order.

WCAG Compliance Standards

FAQs

link

How do I hide the label?

Pass label="" — omitting label uses the built-in status copy instead.

What's the difference between warning and urgent?

warning is cautionary attention; urgent maps to the danger/error treatment (default label Error).

Can I put custom children inside?

No — children is omitted from the API. Use the label prop for text.

link