First off, thank you for considering contributing! All PRs are welcome and help is much appreciated.
- Fork the repository on GitHub.
- Clone your forked repository locally:
git clone https://github.com/dunderrrrrr/blocket_api.git cd blocket_api direnv allow - Create a new branch for your changes:
git checkout -b my-awesome-feature
This project uses uv for dependency management and as a runner.
- Install
uv:pip install uv
- Create a virtual environment and install dependencies:
uv venv uv sync
- Set up the pre-commit hooks:
pre-commit install
If you have nix with flakes enabled, you can use the provided flake.nix to enter a development shell.
nix developThis will provide you with a shell with python, uv, and ruff installed. It will also set up a virtual environment, install all dependencies (including pytest), and configure the pre-commit hooks for you. You can then run the tests as described in the "Running Tests" section.
To run the test suite, use the following command:
uv run pytestBefore submitting your changes, please also run the following checks:
uv run ruff check .
uv run mypy .- Commit your changes with a clear and descriptive commit message. Please try to follow the Conventional Commits specification if possible.
- Push your changes to your forked repository:
git push origin my-awesome-feature
- Open a pull request on the original repository. When you open a pull request, the test suite will be run automatically by our GitHub workflow.
- Please make sure your PR is up to date with the
mainbranch of the original repository. You can do this by runninggit pull upstream mainin your branch.