Skip to main content

Component lifecycle

The three-axis component status model — Figma, Storybook, and Docs — what each status means and how components move through it.

Every component in Orbit tracks three separate statuses — not one blended one. A component can be fully designed in Figma while its Storybook implementation hasn’t started, or built and stable in Storybook while its Orbit doc page is still being written. Blending those into a single status hid exactly that kind of gap; tracking them separately surfaces it.

Status is never a quality signal — a component that’s Under Consideration in Figma isn’t “worse” than one that’s For Implementation, and In Progress in Storybook isn’t “behind” some universal timeline. Each axis is its own independent signal of readiness.

Status badges show a platform label and a status icon — hover any badge for the full status name. See the full status table for every component at once.

Figma status

Where the component is in Figma — is it designed, and is the spec locked.

Under Consideration

A designer or engineer has proposed a need for the component. Nothing is committed yet — the DS Working Group hasn’t agreed to take it on.

Planned

The DS Working Group has committed to the component and queued it up, but no design work has started yet.

Designing

Actively in the design phase — anatomy, variants, states, and usage guidance are being worked out. Not yet ready for engineering to build against.

Ready for Dev

The spec is locked in Figma and published to the library. Safe for engineering to build against — the design won’t shift underneath them.

Storybook status

Where the component is in code — is it built, and how much can you rely on its API staying put.

Not Started

No Storybook story or Code Connect mapping exists yet — regardless of how far along the Figma design is.

In Progress

A Storybook story exists and is being built out or reviewed — not yet signed off as a reliable implementation to build product UI on.

Beta

Shipped and usable, but its API may still shift before it’s safe to build on long-term. Use it, but expect the possibility of a breaking change before Stable.

Stable

Locked and safe to consume without checking back — any change would be a deliberate, communicated breaking change.

Deprecated

Being phased out — don’t use for new work. A deprecated component must always point to its replacement.

Docs status

Whether the Orbit page itself — anatomy, variants, usage, tokens, accessibility — is written up.

Not Started

No Orbit page exists for the component yet.

In Progress

The page exists and has real content — this is the default for any page that’s been written, not a rough sketch. It moves to Complete only once someone has signed off on it as final.

Complete

Reviewed and signed off as final — not something derived automatically, always a deliberate call by whoever reviewed the page.

How statuses are managed

Status is managed by the DS Working Group. Individual contributors don’t update status themselves — they raise a request or signal readiness, and the DS Working Group confirms the transition after review.

Figma status moves Under Consideration → Planned → Designing → Ready for Dev, in that order — a component doesn’t skip Designing on its way to Ready for Dev.

Storybook status moves Not Started → In Progress → Beta → Stable, or to Deprecated from Beta or Stable at any point. It’s independent of Figma status — a component can sit at Ready for Dev in Figma for a long time before Storybook work even starts, and that gap is exactly what tracking the two separately is meant to surface.

Docs status moves Not Started → In Progress → Complete. In Progress is the default the moment a page exists with real content; Complete is a deliberate sign-off, not something inferred from how much of the page is filled in.

Questions about a specific component’s status? Raise them in #platform-design-system on Slack, or check the full status table for where everything currently stands.

Was this page helpful?