It is highly appreciated that you take the time to help improve 馃尣 Evergreen.
Please see our issue template for issues specifically.
Preferably we like to introduce new components by following these steps.
To better understand if your component is wanted by 馃尣 Evergreen, submit a component request first as an issue. Explain why you want the component. Potentially include a design or component API.
Smaller atoms and primitives are favored over bigger complex components.
This can be a wireframe or high fidelity mockup. Include this in your issue if possible.
We hope to formalize the 馃尣 Evergreen design language more as we go. As a general rule of thumb try to follow these constraints:
- Use
colorand thetypographycomponents. - 8px soft grid, (4px under 40px is also good).
- Don't force line heights on grid if it looks poorly.
- Write down how you would like to use this component.
- Write down the component API and prop types.
- Try to use
ui-boxfor your components. - Try to make all heights possible.
- Base the text style (font size) on the height.
Include this in your issue if possible.
Use a scaffolding scripts to bootstrap your component:
$ yarn create-package:components package-name ComponentName
Make sure to write stories to document your component.
Finally submit a PR with your new feature or component.
We'll add you to the contributors section.