To contribute to this project, please follow these steps:
- Fork and clone this repository
- Make your changes on your fork.
- If you modify the code (for a new feature or bug fix), please add corresponding tests.
- Check for linting issues see below
- Ensure all tests pass see below
- Submit a pull request
For more detailed information about pull requests, please refer to GitHub's guides.
At the moment we are using pip as our package manager. Please make sure to include all the required libraries in requirements.txt
at the time of build.
To ensure our standards, make sure to install pre-commit before starting to contribute.
pre-commit install
We use Flake8
for linting our code. You can use the linter by running the following code.
make linting
We use Flake8
as our code formatter. You can format the code using the following code.
make formatting
We use codespell
for spell checking our code. For running the spellchecker run the following code.
make spellcheck
we use pytest
for integration testing the RAGGENIE. and unittest
for unit testing individual components.
for unit testing run the following code
make unit-test
for integration testing run the following code
make integration-test