Smart, pythonic, ad-hoc, typed polymorphism for Python.
- Provides a bunch of primitives to write declarative business logic
- Enforces better architecture
- Fully typed with annotations and checked with
mypy
, PEP561 compatible - Allows to write a lot of simple code without inheritance or interfaces
- Pythonic and pleasant to write and to read (!)
- Easy to start: has lots of docs, tests, and tutorials
pip install classes
You might also want to configure
mypy
correctly and install our plugin
to fix this existing issue:
# In setup.cfg or mypy.ini:
[mypy]
plugins =
classes.contrib.mypy.typeclass_plugin
We also recommend to use the same mypy
settings we use.
Make sure you know how to get started, check out our docs!