zarrs

Crates.iozarrs
lib.rszarrs
version0.22.1
created_at2023-09-25 06:02:04.411191+00
updated_at2025-09-19 09:43:24.66444+00
descriptionA library for the Zarr storage format for multidimensional arrays and metadata
homepagehttps://zarrs.dev
repositoryhttps://github.com/zarrs/zarrs
max_upload_size
id982388
size2,032,714
Lachlan Deakin (LDeakin)

documentation

https://docs.rs/zarrs

README

zarrs

Latest Version zarrs documentation msrv downloads build codecov DOI

zarrs is a Rust library for the Zarr storage format for multidimensional arrays and metadata.

[!TIP] If you are a Python user, check out zarrs-python. It includes a high-performance codec pipeline for the reference zarr-python implementation.

zarrs supports Zarr V3 and a V3 compatible subset of Zarr V2. It is fully up-to-date and conformant with the Zarr 3.1 specification with support for:

  • all core extensions (data types, codecs, chunk grids, chunk key encodings, storage transformers),
  • all accepted Zarr Enhancement Proposals (ZEPs) and several draft ZEPs:
    • ZEP 0003: Variable chunking
    • ZEP 0007: Strings
    • ZEP 0009: Zarr Extension Naming
  • various registered extensions from zarr-extensions,
  • experimental extensions intended for future registration, and
  • user-defined custom extensions and stores.

A changelog can be found here. Correctness issues with past versions are detailed here.

Developed at the Department of Materials Physics, Australian National University, Canberra, Australia.

Getting Started

  • Read the documentation (docs.rs), which details:
    • Zarr version support,
    • array extension support (codecs, data types, chunk grids, etc.),
    • storage support,
    • examples of how to use zarrs, and
    • an overview of the zarrs ecosystem including supporting crates and Python and C/C++ bindings.
  • Read The zarrs Book.
  • Review benchmarks of zarrs and zarrs-python compared to zarr-python and tensorstore.
  • Try the command line tools in zarrs_tools:
    • zarrs_reencode: a reencoder that can change codecs, chunk shape, convert Zarr V2 to V3, etc.
    • zarrs_ome: create an OME-Zarr hierarchy from a Zarr array.
    • zarrs_filter: transform arrays: crop, rescale, downsample, gradient magnitude, gaussian, noise filtering, etc.

Licence

zarrs is licensed under either of

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Commit count: 1458

cargo fmt