We are glad that you are interested in contributing to Semi UI. Please take some minutes to read the following guidelines:
Semi Team will maintain two resident branches: main
and release
, we will release the code follow our Publishing Period
- main: This branch is just a snapshot of the latest stable release. After minor release, we will merge
release
into this branch. - release: Bug fixes and feature development will merge into this branch first, new version will be released based on this branch on release day.
We use Github issues to track bugs. In order to understand and fix bugs faster, when reporting a bug, you can also reproduce the problem through the template we provide. we recommend you
If you have an idea to provide or optimize features, we recommend that you use Github issues to suggest a new issue
The Semi Design team will take every Pull Request seriously. We will review and merge your code. It is also possible to suggest some modifications to your code. To open a Pull Request, please follow the steps below:
- Fork our repo, then clone your fork
git clone https://github.com/<your-username>/semi-design.git
cd semi-design
- Checkout a topic branch
git checkout -b <TOPIC_BRANCH_NAME>
Before installing the enviroment,make sure that there is a dependency of
lerna
andyarn
locally, if not, should run:
corepack enable
npm install --global lerna
- Install the dependencies
npm run bootstrap
- Next, make the modifications you want to make, which can be bug fixes or development of new features
- You can verify your change by running storybook (
npm start
) and official website (npm run docsite
) locally - Add accompanying tests for your change, ensure all tests pass
npm run test:unit
- Open a Pull Request against
release
of source repo
We may ask or help you to modify the PR according to the situation. For inappropriate PR, we will close it with an explanation.
If your changes involve style changes or Design Token changes, please read Semi SCSS Variable Writing/File Citation Specification
The documentation site is based on gatsby, and the code is in the src
directory.
The component documentation is located in the md file under the semi-ui
component folder. Take tooltip as an example:
- Chinese document
packages/semi-ui/tooltip/index.md
- English document
packages/semi-ui/tooltip/index-en-US.md
To get started:
npm run docsite
If you are interested in helping us improve the doc, please modify the md file of the component and submit your changes according to the Pull Request guidelines