Back to docsRecipe

Design system lifecycle

A repeatable process for shipping, governing, and retiring design tokens and components across a multi-product org.

1Propose

Open a lightweight RFC in your design-tools repo. Include the token name, fallback value, affected surfaces, and a screenshot of the current vs proposed render. Tag the design-eng rotation.

2Ship

Merge the token into the source-of-truth JSON and cut a semver release. CI publishes to the CDN and pushes a PR that bumps the token package in every registered consumer.

3Adopt

Consumers merge the auto-opened bump PR within 48 hours. Linters forbid hardcoded values that duplicate an existing token. A dashboard tracks adoption percentage per product.

4Deprecate

Mark the token as deprecated in the schema. The next major version removes it. A codemod ships alongside the breaking release to auto-migrate consumers to the replacement token.

5Retire

Once adoption of the replacement reaches 100% across all tracked surfaces, archive the deprecated token entry. The schema retains a tombstone record for historical queries.

Tip: Run the adoption dashboard weekly. Products that lag beyond the 48-hour SLA automatically escalate to their eng-manager channel.