The ten minimum requirements for code contributions are:
- All Pull Requests must be based off the
developbranch. - The code must be compliant with the configured ESLint rules based on the JS Standard Code Style.
- All PRs should have a dedicated scope (e.g. not mixing code refactorings with delivering a new feature) and reasonable size.
- All new and changed code should have a corresponding unit and/or integration test.
- New and changed challenges must have a corresponding e2e test.
- Noise (e.g. unnecessary comments) generated by AI tools must be removed before opening a PR.
- All status checks must pass for the last commit within your PR.
- All Git commits within a PR must be signed off to indicate the contributor's agreement with the Developer Certificate of Origin.
- Cintributing to translations should be done via Crowdin and not via GitHub PRs.
- Particularly low-effort contributions (e.g. incomplete typo fixes in a single file, trivial text changes, code formatting) or any forms of potential "contribution farming" must not be submitted as PRs. Doing so more than once might be considered spamming and handled accordingly.
You can find our detailed contribution guidelines over here:
https://pwning.owasp-juice.shop/companion-guide/latest/part3/contribution.html
Learn all about our crowdsourced translation project on Crowdin here: https://pwning.owasp-juice.shop/companion-guide/latest/part3/translation.html