pydantic-zarr 0.9.2


pip install pydantic-zarr

  Latest version

Released: Mar 18, 2026


Meta
Author: Davis Bennett
Maintainer: David Stansby
Requires Python: >=3.11

Classifiers

Programming Language
  • Python
  • Python :: 3.11
  • Python :: 3.12
  • Python :: 3.13
  • Python :: 3.14
  • Python :: Implementation :: CPython

pydantic-zarr

PyPI

Pydantic models for Zarr.

Installation

pip install -U pydantic-zarr
# or, with zarr i/o support
pip install -U "pydantic-zarr[zarr]"

Getting help

  • Docs: see the documentation for detailed information about this project.
  • Chat: We use Zulip for project-related chat.

Example

import zarr
from pydantic_zarr import GroupSpec

group = zarr.group(path='foo')
array = zarr.create(store = group.store, path='foo/bar', shape=10, dtype='uint8')
array.attrs.put({'metadata': 'hello'})

# this is a pydantic model
spec = GroupSpec.from_zarr(group)
print(spec.model_dump())
"""
{
    'zarr_format': 2,
    'attributes': {},
    'members': {
        'bar': {
            'zarr_format': 2,
            'attributes': {'metadata': 'hello'},
            'shape': (10,),
            'chunks': (10,),
            'dtype': '|u1',
            'fill_value': 0,
            'order': 'C',
            'filters': None,
            'dimension_separator': '.',
            'compressor': {
                'id': 'blosc',
                'cname': 'lz4',
                'clevel': 5,
                'shuffle': 1,
                'blocksize': 0,
            },
        }
    },
}
"""

History

This project was developed at HHMI / Janelia Research Campus. It was originally written by Davis Bennett to solve problems he encountered while working on the Cellmap Project team. In December of 2024 this project was migrated from the janelia-cellmap github organization to zarr-developers organization.

Wheel compatibility matrix

Platform Python 3
any

Files in release

Extras:
Dependencies:
numpy (>=1.24.0)
packaging (>=21.0)
pydantic (>2.0.0)