Skip to main content

Contribution process

note

🚧 This content is under construction 🚧

How to do an evolution?#

Adding, or making evolve a new component require several steps to be done:

1. Check that the evolution hasn't been done yet#

Check in OpenUX documentation and future documentation (dev-xxx branches) that the evolutions doesn't exists already and is not planned to be.

2. Register the evolution#

Contact OpenUX's Core Team (hello@creastel.com) to ask for the component creation. Your demand must include a description of the evolution and examples (e.g. links to equivalent components from other design systems).

If the evolution is validated, the Core Team will add the component to the evolution board, and assign to it an id composed of 3 characters (e.g. btn, nbl, shk).

note

This id is very important and must be used everywhere.

The Core Team will also create a new branch named dev-XXX, where XXX is the evolution id on every Github repository (openux-css, openux-react, openux-docs)

3. Do the evolution in Figma#

Add or update components to Figma project 'OpenUX' and design all of its declinaisons, by paying attention to validate Opquast checklist rules.

caution

Before developing the evolution, check that applicable guidelines of Opquast checklist are observed. This step is mandatory on every evolution.

4. Code the CSS component#

Develop the SASS code in open-ux/css, and add an examples set in debug/index.html (make sure to include all variants, like on Figma).

Then, commit your changes, open a Pull Request and await Core Team to validate, integrate and publish the node module.

5. Code the React component#

Develop the React code in open-ux/components, and add an examples set in debug/index.html (make sure to include all variants, like on Figma).

Then, commit your changes, open a Pull Request and await Core Team to validate, integrate and publish the node module.

6. Create the documentation#

TODO

7. Open PR on each repository#

When steps 4, 5 and 6 are done, open a PR on every repository from your evolution branch to develop and wait the PR to be merged.

caution

Make sure to respect the naming conventions (in each repo root's README)

8. Congrats!#

Your evolution has been done! It will be integrated on a new version soon.