Metadata-Version: 2.4
Name: hdmf_zarr
Version: 0.13.0
Summary: A package defining a Zarr I/O backend for HDMF
Project-URL: Homepage, https://github.com/hdmf-dev/hdmf-zarr
Project-URL: Bug Tracker, https://github.com/hdmf-dev/hdmf-zarr/issues
Author-email: Oliver Ruebel <oruebel@lbl.gov>, Matthew Avaylon <mavaylon@lbl.gov>, Ryan Ly <rly@lbl.gov>, Stephanie Prince <smprince@lbl.gov>
License: BSD
License-File: LICENSE.txt
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: MacOS
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: Unix
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Scientific/Engineering :: Medical Science Apps.
Requires-Python: >=3.10
Requires-Dist: hdmf>=4.1.0
Requires-Dist: numcodecs<0.16.0,>=0.12.0
Requires-Dist: numpy>=1.24.0
Requires-Dist: pynwb>=2.8.3
Requires-Dist: threadpoolctl>=3.1.0
Requires-Dist: zarr<3.0,>=2.18.0
Provides-Extra: all
Requires-Dist: fsspec; extra == 'all'
Requires-Dist: s3fs; extra == 'all'
Requires-Dist: tqdm>=4.41.0; extra == 'all'
Provides-Extra: full
Requires-Dist: fsspec; extra == 'full'
Requires-Dist: s3fs; extra == 'full'
Requires-Dist: tqdm>=4.41.0; extra == 'full'
Description-Content-Type: text/x-rst

.. image:: docs/source/figures/logo_hdmf_zarr.png
     :width: 400

hdmf-zarr
=========

The ``hdmf-zarr`` library implements a Zarr v2 backend for HDMF as well as convenience classes for integration of Zarr with PyNWB to support writing of NWB files to Zarr.

**Status:** The Zarr backend is **under development** and may still change. See the `overiew page <https://hdmf-zarr.readthedocs.io/en/stable/overview.html>`_ for an overview of the available features and known limitations of hdmf-zarr.

Support for Zarr v3 is planned. You can track progress of the support in https://github.com/hdmf-dev/hdmf-zarr/issues/202.


Documentation Status
--------------------

Latest release: 

.. image:: https://readthedocs.org/projects/hdmf-zarr/badge/?version=stable
     :target: https://hdmf-zarr.readthedocs.io/en/stable/?badge=stable
     :alt: Documentation status for latest release

Dev branch: 

.. image:: https://readthedocs.org/projects/hdmf-zarr/badge/?version=dev
     :target: https://hdmf-zarr.readthedocs.io/en/dev/?badge=dev
     :alt: Documentation status for dev branch

CI / Health Status
------------------

.. image:: https://codecov.io/gh/hdmf-dev/hdmf-zarr/branch/dev/graph/badge.svg
    :target: https://codecov.io/gh/hdmf-dev/hdmf-zarr

.. image:: https://github.com/hdmf-dev/hdmf-zarr/actions/workflows/run_coverage.yml/badge.svg
    :target: https://github.com/hdmf-dev/hdmf-zarr/actions/workflows/run_coverage.yml

.. image:: https://github.com/hdmf-dev/hdmf-zarr/actions/workflows/run_tests.yml/badge.svg
    :target: https://github.com/hdmf-dev/hdmf-zarr/actions/workflows/run_tests.yml

.. image:: https://github.com/hdmf-dev/hdmf-zarr/actions/workflows/run_all_tests.yml/badge.svg
    :target: https://github.com/hdmf-dev/hdmf-zarr/actions/workflows/run_all_tests.yml

.. image:: https://github.com/hdmf-dev/hdmf-zarr/actions/workflows/check_external_links.yml/badge.svg
    :target: https://github.com/hdmf-dev/hdmf-zarr/actions/workflows/check_external_links.yml

.. image:: https://github.com/hdmf-dev/hdmf-zarr/actions/workflows/deploy_release.yml/badge.svg
    :target: https://github.com/hdmf-dev/hdmf-zarr/actions/workflows/deploy_release.yml

.. image:: https://github.com/hdmf-dev/hdmf-zarr/actions/workflows/ruff.yml/badge.svg
    :target: https://github.com/hdmf-dev/hdmf-zarr/actions/workflows/ruff.yml

.. image:: https://github.com/hdmf-dev/hdmf-zarr/actions/workflows/codespell.yml/badge.svg
    :target: https://github.com/hdmf-dev/hdmf-zarr/actions/workflows/codespell.yml

.. image:: https://github.com/hdmf-dev/hdmf-zarr/actions/workflows/HDMF_dev.yaml/badge.svg
    :target: https://github.com/hdmf-dev/hdmf-zarr/actions/workflows/HDMF_dev.yaml

----------------

If you use HDMF or hdmf_zarr in your research, please use the following citation:

* A. J. Tritt, O. Ruebel, B. Dichter, R. Ly, D. Kang, E. F. Chang, L. M. Frank, K. Bouchard,
  *"HDMF: Hierarchical Data Modeling Framework for Modern Science Data Standards,"*
  2019 IEEE International Conference on Big Data (Big Data),
  Los Angeles, CA, USA, 2019, pp. 165-179, doi: 10.1109/BigData47090.2019.9005648.
* HDMF-Zarr, RRID:SCR_022709

Documentation
-------------

See the ``hdmf-zarr`` documentation for details: https://hdmf-zarr.readthedocs.io

Usage
-----

The library is intended to be used in conjunction with HDMF. ``hdmf-zarr`` mainly provides
with the ``ZarrIO`` class an alternative to the ``HDF5IO`` I/O backend that ships with HDMF.
To support customization of I/O settings, ``hdmf-zarr`` provides ``ZarrDataIO`` (similar to
``H5DataIO`` in HDMF). Using ``ZarrIO`` and ``ZarrDataIO`` works much in the same way as ``HDF5IO``.
To ease integration with the NWB data standard and PyNWB, ``hdmf-zarr`` provides the ``NWBZarrIO``
class as alternative to ``pynwb.NWBHDF5IO``. See the tutorials included with the documentation for more details.
