Skip to content
forked from LDeakin/zarrs

A rust library for the Zarr V3 storage format for multidimensional arrays and metadata

License

Notifications You must be signed in to change notification settings

bjoern234/zarrs

 
 

Repository files navigation

zarrs

Latest Version zarrs documentation msrv build codecov

A rust library for the Zarr V3 storage format for multidimensional arrays and metadata.

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

zarrs is experimental and in limited production use. Use at your own risk! Correctness issues with past versions are detailed here.

A changelog can be found here.

Getting Started

Example

let store_path: PathBuf = "/path/to/store".into();
let store: zarrs::storage::ReadableWritableListableStorage =
    Arc::new(zarrs::storage::store::FilesystemStore::new(&store_path)?);

let array_path: &str = "/group/array"; // /path/to/store/group/array
let array = zarrs::array::Array::new(store, array_path)?;

let chunk: ndarray::ArrayD<f32> = array.retrieve_chunk_ndarray(&[1, 0])?;
println!("Chunk [1,0] is:\n{chunk}");

zarrs Ecosystem

  • zarrs_tools: Various tools for creating and manipulating Zarr v3 data. Includes zarrs benchmarks.
  • zarrs_ffi: A subset of zarrs exposed as a C API.

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.

About

A rust library for the Zarr V3 storage format for multidimensional arrays and metadata

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 100.0%