Thank you for your interest in contributing to Ariadne!
We welcome bug reports, questions, pull requests, and general feedback.
We also ask all contributors to familiarize themselves with and follow project's code of conduct, available in the CODE_OF_CONDUCT.md file kept in the repository's main directory.
You can use GitHub issues to report bugs, ask for help, share your ideas, or simply offer feedback. We are curious what you think of Ariadne!
Ariadne is written to support Python 3.9, 3.10, 3.11, 3.12, and 3.13.
We use Hatch for project management
The codebase is formatted using ruff. To format the code, use the following command:
hatch fmt
The contents of the ariadne
package are annotated with types and validated using mypy. To run type checking with mypy, use:
hatch run types:check
Tests are developed using pytest and are managed with Hatch. We use Codecov for monitoring coverage.
To run the tests, use:
hatch test
To run integrations tests use:
hatch run test-integration-fastapi:test
hatch run test-integration-flask:test
hatch run test-integration-starlette:test
To run all checks (formatting, type checking, and tests), you can use:
hatch run check
We require all changes to be done via pull requests, and to be approved by member-ranked users before merging.
We consider all issues which are not assigned to anybody as being available for contributors. The help wanted label is used to single out issues that we consider easier or higher priority on the list of things that we would like to see.
If you've found issue you want to help with, please add your comment to it - this lets other contributors know what issues are being worked on, as well as allowing maintainers to offer guidance and help.
We don't require pull requests to be followed with bug reports. If you've found a typo or a silly little bug that has no issue or pull request already, you can open your own pull request. We only ask that this PR provides context or explanation for what problem it fixes, or which area of the project it improves.