The page navigation is complete. You may now navigate the page content as you wish.
Skip to main content

Contribution

How to collaborate with the Design Systems Team and contribute to the Helios Design System.

We’re currently accepting collaborations only from HashiCorp employees. Some resources and links on this page are only available to HashiCorp employees.

Thank you for your interest in contributing to the Helios Design System. We think of contributions as an opportunity for collaboration across teams and are open to various forms of collaboration, even direct contribution, as long as they follow our collaborative process.

Collaboration types

Possible forms of collaboration include, but are not limited to:

Direct contributions

We support a small number of autonomous but coordinated direct contributions. These include bug fixes in the code, new icons, documentation improvements, and small enhancements to existing components.

Contribute a new icon in Figma

If you’d like to add a new icon to the icon library, follow the steps in the Figma library README.

Contribute in code

To work in one of the Helios code packages, consult the corresponding CONTRIBUTING.md file for Tokens, Ember Flight Icons, and Components.

Review the Engineering Checklist for new components if you’re working on a new component.

If you need to test the component in one of our consumers’ codebases, review the instructions for testing a component in Cloud UI.

Why large direct contributions are not currently accepted

Adding new components or patterns to Helios takes significant time and consideration of use cases across all our products. As a team, we also strive to maintain a high bar for consistency in implementation and delivery across both design and code to ensure a systematic and high-quality experience for our consumers when using Helios in their work. This combination of factors means that large direct contributions are not pragmatic for us to support at this time, however, we've developed the collaboration process outlined here to help enable teams to work directly with us to support their needs.

Our collaborative process

Our collaborative process is intended to be a guideline, not a playbook. Each collaboration may be different depending on the complexity of the proposal. This process generally works best for larger collaboration projects, but we’ll help define the necessary steps based on your project type during the kickoff.

Submit a new request

Before submitting a new request, check that the issue doesn’t already exist in our backlog. If no request exists, create a new issue using our intake form. Creating an issue allows us to track and prioritize all requests in one central location easily.

Alternatively, if you just have a question or you’re not sure your project is right for collaboration, reach out to the Design Systems Team in #team-design-systems.

Evaluation of the request

The Design Systems Team will then evaluate each incoming request and provide the Requestor with a decision.

How we evaluate requests

We evaluate requests based on the following criteria:

Possible outcomes

Based on the evaluation criteria, there are different possible outcomes:

Kickoff meeting

We’ll organize a kickoff meeting with the requestor (and any necessary stakeholders) for projects to which we can dedicate time and resources. In this kickoff meeting, we aim to define the following:

Collaborative execution

The dedicated resources from each team will work together to complete the project according to the scope and timeline defined in the kickoff. This process is variable, depending on the project’s complexity, and it can be quite intensive for larger collaborations given the high bar for quality required. The project will need to go through thorough reviews with key stakeholders, as defined in the kickoff.

To get an idea of what this process could look like, please refer to the process followed by the Design Systems Team when building a net-new component.

Implementation and release

Once reviewed and approved, the feature can be implemented and released in Helios.

Resources

Learn how the Collaboration Model for the Helios Design System took shape.