Skip to content

Installation

Probatio is pure Python, and the core has zero runtime dependencies. There is nothing to compile, no build step, and no native extension to match against your platform. Install it and import it.

Pick your package manager:

Terminal window
uv add probatio

Probatio needs Python 3.12 or newer. It is tested on CPython 3.12, 3.13, 3.14, and 3.15. If you can run those, you can run Probatio.

The core has no runtime dependencies, and there are no extras to install. Probatio validates parsed Python objects: parsing and serialization stay with the caller. Parse your JSON, YAML, or TOML with whatever library you already use, then hand the result to a schema. See the loading and dumping guide for the pattern.

A tiny schema, validated:

from probatio import Schema, Required, Optional
schema = Schema(
{
Required("name"): str,
Optional("port", default=8080): int,
}
)
schema({"name": "app"}) # {'name': 'app', 'port': 8080}

If that returns the dict with port filled in, you are set. Read the quick start next.