diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..3857b46 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,74 @@ +# Contributing to our projects + +We welcome you to contribute to our projects, whether reporting a bug, suggesting an improvement, or submitting fixes, improvements, or new code. To ensure a smooth collaboration process please follow these guidelines. + +## Found a bug? + +### Search for existing issues + +Before creating a new issue, please search existing [issues](https://github.com/overextended/ox_lib/issues) to see if it has already been reported. + +### Add details to existing issues + +If you have found an **active** issue which matches your own, please provide any additional details or context that might help us to resolve it. + +### Create a new issue + +If there is no **open** issue addresing your bug, please create a new issue - you can also reference a **closed** issue if you are certain they are related. Make sure to: + +- Use the bug report template when creating an issue. +- Include a descriptive title and a clear and detailed description of the problem. +- Provide simple steps to reproduce the bug. +- Include all relevant code samples. +- Provide any additional information that could help diagnose the problem. + +## Patched a bug? + +- Submit a new pull request that includes **only the changes related to the fix**. +- Clearly explain the problem being addressed and how your solution fixes it. +- Reference any open issues or pull requests that your changes will resolve. + +## Suggesting improvements or new features + +Not all suggested improvements or features will be accepted. + +Changes may be declined if they do not align with our design philosophy, are incomplete, not well-planned, or introduce unnecessary complexity or breaking changes to the codebase. + +### Open an issue + +Open a new issue to discuss your suggestion, and wait for feedback from the community and maintainers. + +### Submit a draft + +If you have started working on your idea, feel free to submit a **draft pull request** to gather initial feedback. + +### Cosmetic changes + +Pull requests that do not contribute meaningful improvements to the project's stability or functionality, such as changes to formatting or unused variables, will not be accepted. + +## How to submit a pull request + +- Fork the repository and, optionally, create a new branch for your changes. +- If applicable, include example code to demonstrate your changes. +- Ensure your code's style is consistent with the project, e.g. uses the same indentation and string quotations. +- If you have modified or introduced new APIs, open a pull request to our [documentation](https://github.com/overextended/overextended.github.io). We will not accept undocumented code. + +## Contributor License Agreement + +This Contributor License Agreement ("Agreement") is entered into between the contributor ("Contributor") and Overextended ("Owner") for the purpose of contributing to this repository (the "Project"). + +By submitting any code, documentation, or other materials (collectively, the "Contribution") to this project, the Contributor agrees to the following terms: + +1. **License Grant** + Subject to the Contributor retaining all ownership rights in their Contribution, the Contributor hereby grants the Owner a perpetual, irrevocable, worldwide, non-exclusive license to: + + - Use, reproduce, modify, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute the Contribution, + - Incorporate the Contribution into the Project or any derivative works thereof, **under the terms of the Project's License**. + +2. **Representation and Warranties** + The Contributor represents and warrants that: + - The Contribution is original and is the Contributor's own work. + - The Contribution does not violate any third-party rights, including copyright, patent, trademark, or trade secret rights. + - The Contributor has full power and authority to enter into this Agreement and grant the rights herein. + +By submitting a Contribution to the Project, the Contributor acknowledges that they have read, understood, and agree to be bound by the terms of this Agreement.