The following is a set of guidelines for contributing to Diginext. Please spend several minutes reading these guidelines before you create an issue or pull request.
We have adopted a Code of Conduct that we expect project participants to adhere to. Please read the full text so that you can understand what actions will and will not be tolerated.
All work on Diginext happens directly on GitHub. Both core team members and external contributors send pull requests which go through the same review process.
Wanna give me a hand? Get started here: DEVELOPER.md
According to our release schedule, we maintain two branches, main
and feature
. If you send a bugfix pull request, please do it against the main
branch, if it's a feature pull request, please do it against the feature
branch.
We are using GitHub Issues for bug tracking. The best way to get your bug fixed is by providing reproduction steps with this template.
Before you report a bug, please make sure you've searched existing issues, and read our FAQ.
If you intend to change the public API or introduce new feature, we also recommend you use our issue helper to create a proposal issue.
Working on your first Pull Request? You can learn how from this free video series:
How to Contribute to an Open Source Project on GitHub
To help you get your feet wet and get you familiar with our contribution process, we have a list of good first issues that contain bugs or small features that have a relatively limited scope. This is a great place to get started.
If you decide to fix an issue, please be sure to check the comment thread in case somebody is already working on a fix. If nobody is working on it at the moment, please leave a comment stating that you intend to work on it so other people don't accidentally duplicate your effort.
If somebody claims an issue but doesn't follow up for more than two weeks, it's fine to take over it but you should still leave a comment.
The core team is monitoring for pull requests. We will review your pull request and either merge it, request changes to it, or close it with an explanation.
Before submitting a pull request, please make sure the following is done:
- Fork the repository and create your branch from the correct branch.
- Run
npm install
in the repository root.For Windows 10 development environment, if you run into error
gyp err! find vs msvs_version not set from command line or npm config
, please install the latest Python v3 and Desktop development with C++ through Visual Studio Installer before runningnpm install
- If you've fixed a bug or added code that should be tested, add tests!
- Ensure the test suite passes (npm run test). Tip:
npm test -- --watch TestName
is helpful in development. - Run
npm test -- -u
to update the jest snapshots and commit these changes as well (if there are any updates). - Ensure the UI change passes
npm run test-image
,Runnpm run test-image -- -u
to update UI snapshots and commit these changes as well (if there are any updates), UI test base on Docker, need download the corresponding installation according to the platform - Make sure your code lints (npm run lint). Tip: Lint runs automatically when you
git commit
(Use Git Hooks).
Sending a Pull Request to react-component:
If it's a bugfix pull request, after it's merged, the core team will release a patch release for that component as soon as possible, then you only need to reinstall Diginext (DX) in your project to get the latest patch release. If it's a feature pull request, after it's merged, the core team will release a minor release, then you need raise another pull request to Diginext to update dependencies, document and TypeScript interfaces (if needed).
After cloning dx
, run npm install
to fetch its dependencies. Then, you can run several commands:
npm start
runs Diginext website locally.npm run lint
checks the code style.npm test
runs the complete test suite.
- Docker: https://www.docker.com/
If you are an active contributor and are willing to work with Diginext Team in our opensource workflow, you can apply to be a outside collaborator.
Working on your first Pull Request? You can learn how from this free series How to Contribute to an Open Source Project on GitHub