SecJS is a community driven project. You are free to contribute in any of the following ways.
- Coding style
- Fix bugs by creating PR's
- Share an RFC for new features or big changes
- Report security issues
- Be a part of the community
Majority of SecJS core packages are written in Typescript. Having a brief knowledge of Typescript is required to contribute to the core.
We appreciate every time you report a bug in the packages. However, taking time to submit a PR can help us in fixing bugs quickly and ensure a healthy and stable eco-system.
Go through the following points, before creating a new PR.
- Create an issue discussing the bug or short-coming in the package.
- Once approved, go ahead and fork the repository.
- Make sure to start from the
develop
, since this is the upto date branch. - Make sure to keep commits small and relevant.
- We follow conventional-commits to structure our commit messages. Instead of running
git commit -m "message"
, you must run onlygit commit
, which will show you prompts to create a valid commit message. - Once done with all the changes, create a PR against the
develop
branch.
Sharing PR's for small changes works great. However, when contributing big features to the package, it is required to go through the RFC process.
RFC stands for Request for Commits, a standard process followed by many other frameworks including Ember, yarn and rust.
In brief, RFC process allows you to talk about the changes with everyone in the community and get a view of the core team before dedicating your time to work on the feature.
The RFC proposals are created as issues on SecJS/Rfcs repository. Make sure to read the README to learn about the process in depth.
All the security issues, must be reported via email and not using any of the public channels.
We welcome you to participate in the forum and the SecJS discord server. You are free to ask your questions and share your work or contributions made to SecJS eco-system.
We follow a strict Code of Conduct to make sure everyone is respectful to each other.