Contributing Guide
Spiel is open to contributions!
Development Environment
Spiel uses:
poetry
to manage development dependencies.pre-commit
to run various linters and formatters.pytest
for testing andmypy
for static type-checking.mkdocs
with the Material theme for documentation.
Initial Setup
To set up a local development environment after cloning the repository:
- Install
poetry
. - Run
poetry shell
to create a virtual environment forspiel
and spawn a new shell session with that virtual environment activated. In the future you'll runpoetry shell
again to activate the virtual environment. - Run
poetry install
to install Spiel's dependencies. - Run
pre-commit install
to configurepre-commit
's integration withgit
. Do not commit withoutpre-commit
installed!
Running Tests and Type-Checking
Run pytest
to run tests.
Run mypy
to check types.
Building the Docs Locally
To build the docs and start a local web server to view the results of your edits with live reloading, run
from the repository root.