Contributing
March 12, 2024 ยท View on GitHub
:+1::tada: First off, thanks for taking the time to contribute! :tada::+1:
Found an Issue?
Thank you for reporting any issues you find. We do our best to test and make this project as solid as possible, but any reported issue is a real help.
Please follow these guidelines when reporting issues:
- Create a new issue in the issue tracker.
- Follow the provided template and fill out all fields
- Be awesome and consider contributing a pull request
Want to contribute?
You consider contributing changes to this project โ we dig that! Please consider these guidelines when filing a pull request:
- Make sure you read the Code of Conduct
- Fork the repository
- Create a new branch
- Make your changes
- Follow the Coding Rules
- Follow the Commit Rules
- Follow Test guidelines
- Create a pull request
- Make sure you rebased the current master branch
- Squash the commits you don't want to see in the history
- Provide a short title with a maximum of 100 characters
- Provide a more detailed description containing _ What you want to achieve _ What you changed _ What you added _ What you removed
- For significant changes, post also an issue before to know if your idea has a chance to be accepted
Coding Rules
To keep the code base of commitlint neat and tidy the following rules apply to every change
prettieris kingeslintis awesome- Favor micro library over swiss army knives (rimraf, ncp vs. fs-extra)
- Be awesome
use commands
pnpm lintandpnpm formatto be sure your code respect coding rules.
You can also use
npx prettier --write .to fix prettier errors
Commit Rules
To help everyone with understanding the commit history of commitlint the following commit rules are enforced.
- conventional commits
- present tense
- maximum of 100 characters
- for bugs, includes the github tag of the issue in the description.
- message format of
$type($scope): $message - use authorized types: build, ci, chore, docs, feat, fix, perf, refactor, revert, style, test
Using the right type is really important since it is used to increase the version number automatically.
Test
If you add a feature or fix a bug, you need to provide a unit test verifying your
improvement.You can launch tests using pnpm test.
Please follow AAA pattern when writing tests.
Versioning
This project use standard-version to handle versioning automatically.
May the force be with you !!