Thank you for your interest in contributing to the BubbleScan project! We're excited to have you join our efforts to improve the software and make it even more effective. Below are some guidelines to help you get started with contributing.
-
Be Respectful:
- Follow the Code of Conduct at all times.
- Be respectful in discussions and when reviewing or providing feedback.
- Constructive criticism is welcomed, but please be kind and patient with others.
-
Hacktoberfest Participation:
- BubbleScan is participating in Hacktoberfest! Contributions made between October 1st and October 31st will count towards your Hacktoberfest goals.
- All contributions must follow the Hacktoberfest rules (i.e., PRs should be meaningful, not spammy).
- PRs should be made to
main
branch unless otherwise specified.
-
Contribution Types:
- Bug Fixes: Found a bug? Help us fix it! Open an issue and submit a pull request (PR) once you’ve fixed it.
- Feature Additions: Have a feature idea that aligns with the project? Open an issue to discuss it before submitting a PR.
- Documentation: If you spot areas in the documentation that need improvement, please submit a PR.
- Testing: Help us improve our code coverage by adding unit, integration, or end-to-end tests.
- Go to the BubbleScan repository.
- Click on the "Fork" button in the top right corner.
In your terminal, clone the repository to your local machine:
git clone https://github.com/oss-slu/bubble_scan.git
cd bubblescan
Create a new branch to work on your feature, bug fix, or documentation update:
git checkout -b your-branch-name
Make your changes or improvements. Ensure your code is well-tested, and if you add new functionality, include tests for it.
Commit your changes with a meaningful commit message:
git add .
git commit -m "Your commit message"
Push your changes to your forked repository:
git push origin your-branch-name
Go to the original repository and open a pull request (PR). Provide a clear title and description for your PR.
-
Code Style:
- Follow the PEP 8 guidelines for Python code.
- Use ESLint and Prettier for consistent JavaScript/React formatting.
-
Comments and Documentation:
- Add comments where necessary to explain complex logic.
- Update relevant documentation (e.g.,
README.md
) if your PR involves changes to functionality or usage.
-
Testing:
- Write tests for all new features and bug fixes.
- Ensure that all tests pass before submitting a PR.
- Tests should cover edge cases and failure scenarios.
-
Commit Messages:
- Use meaningful commit messages that explain why the change was made.
- Example format:
Fix issue with file upload not accepting PDF
,Add unit tests for custom sheet processing
, etc.
-
Submitting an Issue:
- If you discover a bug, want to request a feature, or have a question, feel free to open an issue.
- Before submitting, check if a similar issue already exists.
- Clearly describe the problem or request and include any relevant details (error messages, steps to reproduce, etc.).
-
Opening a Pull Request:
- Ensure your PR references an issue (if applicable) by adding
Closes #issue_number
in the PR description. - Provide a detailed description of what your PR does, including any screenshots or links to documentation where appropriate.
- Make sure your PR passes all tests and checks.
- Ensure your PR references an issue (if applicable) by adding
-
Check for Existing Issues:
- Before reporting a bug, please search the existing issues to avoid duplicates.
-
Creating a New Bug Report:
- When creating a new issue, be sure to include:
- A clear title.
- Steps to reproduce the issue.
- Expected and actual results.
- Any relevant error messages or screenshots.
- When creating a new issue, be sure to include:
If you need help or guidance, feel free to reach out by:
- Commenting on an issue or pull request.
- Reaching out via [[email protected]].
We appreciate your contributions and look forward to working with you!
Happy coding!