Thank you for your interest in contributing to Bumblebee! This guide will help you get started with the project and outline our contribution process.
We're committed to providing a welcoming environment for all contributors. Please:
- Treat all participants with respect and kindness
- Provide constructive feedback
- Consider different perspectives and experiences
- Avoid offensive language and behavior
- Fork the repository on GitHub
- Clone your fork locally:
git clone https://github.com/YOUR-USERNAME/bumblebee.git cd bumblebee - Add the original repository as an upstream remote:
git remote add upstream https://github.com/socioy/bumblebee.git
- Install Anaconda or Miniconda
- Create and activate the environment:
conda env create -f environment.yml conda activate bumblebee
- Create a virtual environment:
# On macOS/Linux python3 -m venv venv source venv/bin/activate # On Windows python -m venv venv .\venv\Scripts\activate
pip install -r requirements.txt-
Create a branch: Create a new branch from
mainfor your workgit checkout -b feature/your-feature-name
-
Make your changes: Write code, add tests, and update documentation as needed
-
Follow coding standards: Ensure your code follows our style guide by running:
black # sort python code isort . # sort imports
-
Test Your Changes
Before committing your changes, ensure your modifications work correctly. This step is critical for maintaining build integrity and overall functionality.
You can validate your work with the following steps:
-
Build the package:
python setup.py sdist bdist_wheel
-
(Optional) Create a fresh virtual environment:
- On macOS/Linux:
python3 -m venv test-env source test-env/bin/activate - On Windows:
python -m venv test-env .\test-env\Scripts\activate
- On macOS/Linux:
-
Install the newly built package:
pip install dist/bumblebee-1.0.0-py3-none-any.whl
Alternatively, use your preferred testing method to ensure everything functions as expected.
After building, run your tests to confirm that everything functions as expected.
-
Commit your changes: Use clear, descriptive commit messages:
git commit -m "add: brief description of what you did" -
Push to your fork:
git push origin feature/your-feature-name
-
Open a Pull Request: Submit a PR against the
devbranch of the original repository
- Fill out the PR template completely
- Link any relevant issues
- Include screenshots or examples for UI changes
- Update documentation if needed
- All changes should be manually tested before submission
- PRs require approval from at least one maintainer
If you encounter any problems or have questions:
- Check existing issues first
- If you can't find a related issue, create a new one with details about your problem or question
Your contributions help make Bumblebee better for everyone. We appreciate your time and effort!