We think of contributions as an opportunity for collaboration and are open to them as long as they follow our collaborative process.
Direct contributions
We support a small number of coordinated direct contributions. These include bug fixes, new icons, documentation improvements, and small enhancements to existing components.
Code contributions
- See the
CONTRIBUTING.mdfile for instructions specific to Tokens or Components. - Review the Engineering Checklist when building new components.
- Follow the instructions to test your component in consumer repositories, if required.
Our collaborative process
For larger initiatives, such as new components or multi-product patterns, we work closely with product teams from intake through release.
1. Submit a request
Check the backlog to ensure the request doesn’t already exist, then submit an intake form.
If you have questions before submitting or want to discuss an idea, contact us in #team-design-systems.
2. Evaluation
We evaluate incoming requests based on:
- Reusability across products and alignment with the design system as a whole
- Impact on existing components, e.g., breaking changes
- Implementation complexity, effort, and current team capacity
If accepted, we will schedule a kickoff meeting. If we cannot take on the project immediately, we will help prioritize it for future cycles or provide alternative guidance.
3. Kickoff meeting
During the kickoff meeting, we will define:
- Team roles, key stakeholders, and approvers
- Project scope and delivery plan
- Timeline, milestones, and deadlines
- Open questions, risks, and unknowns
- Communication plan
4. Implementation and release
Once the work has been reviewed and approved for release:
- We will: Document the new artifacts on the website, publish the release, and announce the updates.
- You will: Implement the released artifacts in your product and provide feedback on the rollout.