Contributing
Everything you need to know about contributing to our design system and how you can help us.
Introduction
A design system can only achieve its maximum potential when there's input from everyone involved in using it, whatever your team or pillar. We encourage you to contribute, no matter your position or knowledge of the system.
Ways to contribute
We're always on the lookout for new contributions and will be happy to discuss them with you if you decide to get involved. However, new feature requests and changes to existing components or foundations will need to be discussed with the PIE team before they are accepted and work is carried out.
Suggest a design change
If you identify an area of improvement within our foundations or components, let us know and we will determine what the best way to address it might be. You can suggest these changes or concerns through our #help-designsystem Slack channel.
If the change is accepted and work is carried out, we’ll keep you informed about our progress and will make sure to check in with you regularly until your request is resolved.
Below you can find the process we’ll follow to implement your suggested design changes and improvements.
Propose new components or documentation
Before creating a new component or piece of documentation, please make sure there isn’t already a solution that would fit your needs. If you are unsure about this, please get in touch with us so we can help you figure out what the best way forward might be.
We have a Partnership process in place to determine whether a new component needs to be created. Please make sure you read it and follow the steps outlined when proposing a new component.
Volunteer to work with us
If you have a particular interest in design systems or would like to help us out with the design, development or documentation of PIE, you can reach out to us at any time to become a new PIE advocate.
We’re always happy to hear about new ideas and opinions on how to improve our system, and will welcome any feedback, suggestions or support from you.
If you decide to get involved, we’ll help you determine how to get started and the steps we’ll need to take in order to complete our collaboration.
Design checklist
To ensure consistency and maintain high product quality, we’ve put together a checklist of things to keep in mind when proposing new components.
Design for scalability and flexibility
Ensure the component is responsive, flexible and future-proof. Think about all the places it might be used - when, why and how - and design your new component accordingly.
Use our Foundation libraries
Make sure you use styles from our Foundation libraries when using colour, typography, spacing, etc. Ensuring brand alignment is key to preserving a high quality and consistent experience.
Use appropriate naming and supporting information
Assign it a name that is descriptive and identifiable, and add a component description in Figma. This will ensure your new component is easily discoverable and usable.
Define variants and interactive states
Outline all options for the component to ensure all use cases are covered. This will enhance the consistency of the component and set a standard for its use within products.
Write documentation
Define usage guidelines, document best practices, warn of common mistakes and describe how to correctly use the component in designs. This will help others understand how to use your new component.