Contribution

Learn how to contribute components, patterns and improvements to the design system.

Contributing means sharing work that could be useful beyond your own product team.

If you have designed or built a component or pattern that solves a problem, contributing it means other teams can benefit from that work and avoid duplicating effort.

You can contribute:

  • new components
  • new patterns
  • improvements to something already in the system

Before you propose a contribution

Check whether what you need already exists in the design system, or whether something close enough could work with a small tweak.

Only propose a contribution if it genuinely does not exist and cannot be adapted from what is already there.

How the process works

  • Propose your component or pattern
  • The proposal is reviewed and agreed
  • You design and build it following the contribution standards
  • The central team reviews the design, code and documentation
  • It is tested
  • It is added to the system with full guidance

If something is not ready, the central team will tell you what needs to change before it can be approved.

Contribution standards

All contributions must meet these standards to be accepted.

  • Accessible Must meet WCAG 2.2 AA as a minimum and aim to go further. This must be proven through testing.
  • Consistent Must use design system atomic components where appropriate and follow foundational guidance, unless the contribution is specifically intended to update that guidance.
  • Useful There must be evidence that other products and services will use it, not just the team proposing it.
  • Unique Must not duplicate something already in the system. If it is intended to replace an existing component or pattern, there must be evidence it is a genuine improvement.
  • Versatile Must work across a range of services, browsers, assistive technologies and devices.

Roles

Designer and developer contributors

Propose and build new components, patterns, guidance and improvements.

Central design system team

Review and approve designs and code, maintain documentation, uphold accessibility standards and make sure contributions are consistent across the system.

Product team PMs and designers

Make sure their teams prioritise user needs throughout the process.