Files
documentation/docs/introduction/contributing.md
Eshan Roy (Eshanized) da917c09d3 @eshanized updated the website 🎉 !!!
2024-04-26 12:31:52 +05:30

77 lines
4.6 KiB
Markdown

---
sidebar_position: 7
---
# Contribution Guidelines
Thank you for considering contributing to **Snigdha OS**! We welcome contributions from everyone.
## Getting Started
Before contributing, please ensure you have read and understood our [Code of Conduct](https://snigdhaos.org/documentation/introduction/code_of_conduct). By participating, you are expected to uphold this code.
## How Can You Contribute?
There are several ways you can contribute to **Snigdha OS**:
જ⁀➴ **Reporting Bugs**: If you encounter a bug, please open an issue on our issue tracker. Be sure to include details such as steps to reproduce, expected behavior, and actual behavior. Bugs can be reported in two ways.
- 👉 If you don't know which repository is having the bug, then raise issue on our universal issue tracker. **[SNIGDHAOS ISSUES](https://github.com/Snigdha-OS/snigdhaos-issues/issues/new/choose)**
- 👉 If you know the specefic repository name, then raise the issue on the specific repository.
જ⁀➴ **Requesting Features**: If you have a feature request or an idea for improving the project, please open an issue on our issue tracker. We welcome your suggestions and feedback.
જ⁀➴ **Code Contributions**: We welcome code contributions via pull requests (PRs). Here are the steps to contribute code:
- 👉 Fork the repository to your GitHub account. Read [How to fork a github repository?](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/fork-a-repo)
- 👉 Clone the forked repository to your local machine. Read [how to clone a github repository in my local machine?](https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository)
- 👉 Create a new branch for your feature or bug fix. Read [how to create new branch on forked repository?](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-and-deleting-branches-within-your-repository)
- 👉 Make your changes and ensure they follow our [coding standards](/introduction/coding-standard).
- 👉 Write tests to cover your changes if applicable.
- 👉 Run existing tests and ensure they pass with your changes.
- 👉 Commit your changes with clear and descriptive commit messages.
- 👉 Push your changes to your forked repository.
- 👉 Open a pull request against the `master` branch of our repository. Read [how to open a pull request on github](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request)
- 👉 Provide a clear description of your changes in the pull request, including any relevant information for reviewers.
જ⁀➴ **Documentation Contributions**: Improving documentation is also a valuable contribution. If you find errors or areas that need clarification, please submit a pull request with your proposed changes.
## Code Standards
When contributing code, please adhere to the following standards:
- 👉 Follow the style guide for the programming language used in the project.
- 👉 Write clear, concise, and descriptive code comments.
- 👉 Ensure your code is well-tested, and add tests for any new functionality.
- 👉 Keep your commits atomic and focused on a single logical change.
- 👉 Use clear and descriptive commit messages following the [Conventional Commits](https://www.conventionalcommits.org/) format.
- 👉 If your change requires updating documentation, please include those updates in your pull request.
## Code Review Process
All code contributions will go through a review process before being merged. Here's what to expect during the review process:
- 👉 Your pull request will be assigned to one or more reviewers.
- 👉 Reviewers will provide feedback and suggest changes if necessary.
- 👉 You may need to address the feedback by making additional changes to your code.
- 👉 Once all feedback has been addressed, and the code meets our standards, it will be merged into the main repository.
## Code of Conduct
Please note that by contributing to **Snigdha OS**, you are agreeing to abide by our [Code of Conduct](/introduction/code_of_conduct). Any violations of the code of conduct will not be tolerated and may result in your contributions being rejected or your participation in the project being revoked.
## Need Help?
If you have any questions or need assistance with contributing, feel free to reach out to us via:
- [Email: hello@snigdhaos.org](mailto:hello@snigdhaos.org)
- [Forum](https://forum.snigdhaos.org)