mirror of https://github.com/JoshKarpel/spiel
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1.6 KiB
1.6 KiB
Contributing Guide
!!! info "Spiel is open to contributions!"
- [Report bugs and request features](https://github.com/JoshKarpel/spiel/issues)
- [General discussion](https://github.com/JoshKarpel/spiel/discussions)
- [Pull requests](https://github.com/JoshKarpel/spiel/pulls)
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
Use pytest
to run tests.
Types will automatically be checked as part of the test suite run;
mypy
can also be run standalone.
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
mkdocs serve
from the repository root.