If you have a question or need clarification, you can:
- Reach out to us at the official bsoc discord server.
- Open an issue.
Basic knowledge of git and github is a must for contributing to open source. We recommend you to go through the following tutorial or just google them:
If you are facing problems about understanding common github terminology refer this.
That's great! 🎉 If you have some knowledge of git and github you can proceed to contributing (given that you know the tech stack), we recommend the following:
- Go through the issues and ask us to assign you one of the unassigned issues if you think you can solve them. If you're very new to the platform or the tech stack prefer
good-first-issues
as they are curated for first time contributors. - If you have some questions about the issue you can comment there or ask on the discord server.
- Once you are assigned an issue you can start working on it. Do refer this great introduction to get an idea about the process of creating a pull request.
- Also don't just ask yourself to be assigned any open issue. Study a little what the issue is about, do some research on your own or ask the maintainers and then if you think you can do it ask yourself to be assigned to the issue.
- If you have some questions or face some difficulties during implementation feel free to reach out to us by messaging us on the discord server of commenting in the issue.
- Once you successfully open a pull request we will review the changes proposed by you and suggest some changes if necessary.
- And done! Now your PR will be merged. Congratulations. 🎉
That's no problem at all! Yes, really. As long as willing to put in effort and curious, and motivated enough to learn you can contribute. After all you are here to learn. Here are some recourses regarding the project's tech stack that will help you get started:
Never hesitate to contribute just because you think you don't know enough or you need to learn/practice more. Just start exploring the issue once you have gone through the above recourses. If you are stuck somewhere you can always contact us or your mentors, but we highly recommend you to google first. Just do the best you can and let us correct you.
This project is using the conventional commits standard. Please follow these steps to ensure your commit messages are standardized:
- Commit messages should have this format:
<type>[optional scope]: <description>
- Type must be one of the following:
- build: Changes that affect the build system or external dependencies
- ci: Changes to our CI configuration files and scripts
- docs: Documentation only changes
- feat: A new feature
- fix: A bug fix
- perf: A code change that improves performance
- chore: A code change that neither fixes a bug nor adds a feature
- refactor: A code change that improves code quality or makes it easier to maintain
- style: Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)
- test: Adding missing tests or correcting existing tests
- Description should be concise and in present imperative tense as mentioned here.
- Example:
feat: add dark-mode
https://www.digitalocean.com/community/tutorials/how-to-create-a-pull-request-on-github
Hope to see you in the PRs! 😉