Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Contributor docs] Component Lifecycle proposal #4775

Closed
wants to merge 5 commits into from
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
71 changes: 71 additions & 0 deletions contributor-docs/external-component-status.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
# External Component Status

When communicating component readiness to consumers, we provide simple component statuses. We intentially decouple this from the accessibility status.

`Ready` + `New` > `Deprecating` > `Deprecated`

## New

**Description**: The component is new and ready to use, with ongoing support and potential changes.

**Criteria**:

- Used in production environments.
- Initial feedback incorporated.
- Documentation in progress.

**Activities**:

- Iterative improvements based on feedback.
- Communicating upcoming changes to users.
- Supporting users in adopting the new component.

**Note:** The component should only be labelled as new in a new release and should be migrated to ready on a specific target date, usually within 3 months.

## Ready

**Description**: The component is ready for use.

**Criteria**:

- Implemented and tested.
- Comprehensive documentation available.
- Meets accessibility requirements.

**Activities**:

- Finalized design and development.
- Tested in various environments.
- Providing ongoing support and guidance.

## Deprecating

**Description**: The component is no longer recommended but can be used as needed with caution, with plans to be deprecated in a future major release.

**Criteria**:

- Documentation includes alternative components or patterns.
- Deprecation date announced.
- Migration paths considered and documentation started.

**Activities**:

- Communicating deprecation plans to users.
- Supporting the component until its removal.
- Encouraging migration to new components.

## Deprecated

**Description**: The component is no longer recommended and should not be used. Officially deprecated in a major release. Users need to migrate to alternatives.

**Criteria**:

- Deprecation warnings included in the component.
- Removal date announced and documented.
- Migration paths provided and accessible.

**Activities**:

- Removing the component from the design system.
- Assisting users in migrating to alternative components.
- Updating documentation to reflect the deprecation.
Loading