Skip to content

Latest commit

 

History

History
130 lines (86 loc) · 4.59 KB

CONTRIBUTING.md

File metadata and controls

130 lines (86 loc) · 4.59 KB

Contributing to BubbleScan

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.

General Guidelines

  1. 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.
  2. 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.
  3. 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.

How to Contribute

1. Fork the Repository

  1. Go to the BubbleScan repository.
  2. Click on the "Fork" button in the top right corner.

2. Clone Your Fork

In your terminal, clone the repository to your local machine:

git clone https://github.com/oss-slu/bubble_scan.git
cd bubblescan

3. Create a New Branch

Create a new branch to work on your feature, bug fix, or documentation update:

git checkout -b your-branch-name

4. Make Your Changes

Make your changes or improvements. Ensure your code is well-tested, and if you add new functionality, include tests for it.

5. Commit Your Changes

Commit your changes with a meaningful commit message:

git add .
git commit -m "Your commit message"

6. Push to Your Fork

Push your changes to your forked repository:

git push origin your-branch-name

7. Open a Pull Request

Go to the original repository and open a pull request (PR). Provide a clear title and description for your PR.


Code Quality and Best Practices

  1. Code Style:

    • Follow the PEP 8 guidelines for Python code.
    • Use ESLint and Prettier for consistent JavaScript/React formatting.
  2. 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.
  3. 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.
  4. 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.

Issue and Pull Request Guidelines

  1. 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.).
  2. 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.

Bug Reporting

  1. Check for Existing Issues:

    • Before reporting a bug, please search the existing issues to avoid duplicates.
  2. 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.

Getting Help

If you need help or guidance, feel free to reach out by:

We appreciate your contributions and look forward to working with you!

Happy coding!