This project welcomes all forms of contributions, and everything is always appreciated.
But please before contributing ensure to read this document in it's entirety.
To gain the quickest understanding of the codebase a whole please read through the ARCHITECTURE file at the root of the repo.
Our contributing guidelines and conventions surrounding all types of contributions.
Feel free to review our Style Guide to review our coding Style Guide before contributing.
- Keep the barrier to entry low. This codebase does everything it can to reduce the complexity of any single area of code. Hopefully allowing developers to infer the behavior and returns of any function or module easily by looking at similar ones around it. If you PR adds additional complexity or causes something to behave differently than what you would assume from all other features around it, make sure there is a good justification for doing so and that there is no other way to reduce this complexity to outside modules.
- Document, Document, and Document.
- If you are adding a new function ensure to write some type of documentation for it in JSDoc comments.
- If you are adding or modifying an API endpoint and how it behaves, ensure to write the appropriate JSDoc-Like comments.
- Help make sure the rest of our docs stay up to date, such as adding a new Server Status Object Short Code make sure to add it to bubbled_errors.md. Or when adding a new Numeric Error Code ensure to add it to numeric_error_codes.md.
- Be kind. This should be known after reading our CODE_OF_CONDUCT.md, but it deserves to be said again. All interactions should be kind.
As known from the readme, this project will live in two places.
Again the Atom Backend is only ever meant to reach feature parity with the original Atom.io Package Backend. Any improvements to how the backend behaves should go to the Pulsar Backend.
Notice::
The Atom Backend has no reached v1, so all future PR's should be directed to the Pulsar Backend.
If at any time you are unsure where to direct your PR, please feel free to reach out via Issues, in the PR's themselves, or to the Pulsar Discord in the #backend channel.
There a few moving parts within this codebase, and a great deal of care has been put into our docs. Please feel free to read them.
To reiterate all contributors are welcome, and all contributions are welcome.
And as always thanks for contributing!