Welcome to pandera-catalog’s documentation!#
pandera-catalog
Overview#
pandera-catalog is a Python package that provides a database-backed catalog for registering, looking up, and
managing Pandera schemas. It is designed to grow into a SQLAlchemy-connected
(SQLite initially) registry of schema entries, validation rules, and schema metadata — keeping schemas
organized, discoverable, and version-aware.
Installation#
Install the base package:
pip install pandera-catalog
Or with uv:
uv add pandera-catalog
Install optional extras for schema validation helpers using Pydantic:
pip install "pandera-catalog[schema]"
Quick Usage#
import pandera.pandas as pa
from pandera_catalog import PanderaCatalog
# Create a catalog
catalog = PanderaCatalog()
# Define a schema
schema = pa.DataFrameSchema(
columns={
"id": pa.Column(int),
"value": pa.Column(float, pa.Check.greater_than(0)),
}
)
# Register the schema
catalog.register("my_schema", schema)
# Look up the schema
retrieved = catalog.get("my_schema")
print(retrieved)
# List all registered schemas
print(catalog.list())
Loading schemas from YAML#
from pathlib import Path
from pandera_catalog import PanderaCatalog
from pandera_catalog.schemas import load_schema_from_yaml
catalog = PanderaCatalog()
schema = load_schema_from_yaml(Path("schemas/my_schema.yaml"))
catalog.register("my_schema", schema)
See the documentation and examples for more detail.
Developer docs: