PLAIN PYTHON · ZERO RUNTIME DEPS
Getting started
Install zodify and validate your first Python dict, including a useful failure.
Install the recorded release
Run python -m pip install zodify==0.6.0 in a virtual environment. Examples on this site require Python 3.10 or later and no optional packages.
Pass the schema first and data second. Returned dicts contain validated values. Invalid input raises ValueError by default.
from zodify import validate
schema = {"name": str, "age": int}
assert validate(schema, {"name": "Ada", "age": 36}) == {"name": "Ada", "age": 36}
try:
validate(schema, {"name": "Ada", "age": "36"})
except ValueError:
pass # String input is rejected by default.
else:
raise AssertionError("Expected validation failure")
print("quickstart: passed")
Expected output: quickstart: passed