+
+
+
+
+
diff --git a/conf.py b/conf.py
index 29fcaf35..55152f5e 100644
--- a/conf.py
+++ b/conf.py
@@ -17,15 +17,12 @@
"myst_parser",
"sphinx_reredirects",
"sphinx_design",
- "sphinxcontrib.bibtex"]
+ "sphinxcontrib.bibtex",
+]
bibtex_bibfiles = ["references.bib"]
source_suffix = [".rst", ".md"]
myst_heading_anchors = 5
-myst_enable_extensions = [
- "deflist",
- "strikethrough",
- "colon_fence"
- ]
+myst_enable_extensions = ["deflist", "strikethrough", "colon_fence"]
templates_path = ["_templates"]
exclude_patterns = [
@@ -57,7 +54,7 @@
"latest/index": "../specifications/0.5/index.html",
"latest/": "../specifications/0.5/index.html",
"dev/index": "../specifications/dev/index.html",
- "dev/": "../specifications/dev/index.html"
+ "dev/": "../specifications/dev/index.html",
}
# -- Options for HTML output -------------------------------------------------
@@ -78,6 +75,8 @@
"use_download_button": True,
}
+html_favicon = "images/favicon-16x16.png"
+
html_static_path = ["_static"]
html_css_files = [
@@ -93,6 +92,7 @@
"_html_extra",
]
+
def build_served_html():
import glob
import subprocess
@@ -102,34 +102,58 @@ def build_served_html():
from pathlib import Path
os.chdir(Path(__file__).parent)
- versions = [d for d in os.listdir("specifications") if os.path.isdir(os.path.join("specifications", d))]
+ versions = [
+ d
+ for d in os.listdir("specifications")
+ if os.path.isdir(os.path.join("specifications", d))
+ ]
for version in versions:
# copy schemas to _html_extra
- os.makedirs(f'_html_extra/{version}/schemas', exist_ok=True)
- schemas = glob.glob(f'specifications/{version}/**/*.schema', recursive=True)
+ os.makedirs(f"_html_extra/{version}/schemas", exist_ok=True)
+ schemas = glob.glob(f"specifications/{version}/**/*.schema", recursive=True)
for schema in schemas:
- shutil.copy2(schema, f'_html_extra/{version}/schemas/')
- print(f'✅ Copied schemas for version {version}')
-
+ shutil.copy2(schema, f"_html_extra/{version}/schemas/")
+ print(f"✅ Copied schemas for version {version}")
+
# find 'pre_build.py' in 'specifications' subdirectories
- script = glob.glob(f'specifications/{version}/**/pre_build.py', recursive=True)[0]
+ script = glob.glob(f"specifications/{version}/**/pre_build.py", recursive=True)[
+ 0
+ ]
+
+ # Inject shared OME boilerplate next to index.bs so the legacy Bikeshed
+ # build renders OME branding instead of falling back to the W3C default.
+ # Kept here in the superproject so we never have to edit, commit, and
+ # bump every ngff-spec version submodule (the includes were lost exactly
+ # that way during the ngff -> ngff-spec migration).
+ spec_dir = os.path.dirname(script)
+ for inc in ("header.include", "copyright.include"):
+ src = os.path.join("boilerplate", inc)
+ if os.path.exists(src):
+ shutil.copy2(src, os.path.join(spec_dir, inc))
+ print(f"✅ Injected {inc} for version {version}")
+ else:
+ print(
+ f"⚠️ Missing boilerplate/{inc}; {version} will use Bikeshed defaults"
+ )
subprocess.check_call([sys.executable, script])
- print('✅ Built rendered examples/schemas for version', version)
+ print("✅ Built rendered examples/schemas for version", version)
# build jupyter-book docs in specification submodules
- myst_file = glob.glob(f'specifications/{version}/**/myst.yml', recursive=True)[0]
- bikeshed_output = f'specifications/{version}/index.html'
+ myst_file = glob.glob(f"specifications/{version}/**/myst.yml", recursive=True)[
+ 0
+ ]
+ bikeshed_output = f"specifications/{version}/index.html"
# copy built html files to _html_extra
try:
if os.path.exists(bikeshed_output):
- shutil.copy2(bikeshed_output, f'_html_extra/{version}/index.html')
- print(f'✅ Found legacy bikeshed, serving as extra html for {version}')
+ shutil.copy2(bikeshed_output, f"_html_extra/{version}/index.html")
+ print(f"✅ Found legacy bikeshed, serving as extra html for {version}")
except Exception as e:
- print(f'⚠️ Could not copy served html for version {version}: {e}')
+ print(f"⚠️ Could not copy served html for version {version}: {e}")
+
build_served_html()
-
\ No newline at end of file
diff --git a/images/favicon-16x16.png b/images/favicon-16x16.png
new file mode 100644
index 00000000..d894595a
Binary files /dev/null and b/images/favicon-16x16.png differ
diff --git a/readthedocs.yml b/readthedocs.yml
index 4f2967e9..f643b380 100644
--- a/readthedocs.yml
+++ b/readthedocs.yml
@@ -3,7 +3,7 @@ version: 2
build:
os: ubuntu-24.04
tools:
- python: "3.10"
+ python: "3.13"
nodejs: "22"
submodules:
@@ -21,4 +21,4 @@ python:
install:
- requirements: requirements.txt
- method: pip
- path: specifications/dev
\ No newline at end of file
+ path: specifications/dev
diff --git a/requirements.txt b/requirements.txt
index 3479fbfd..19336c7f 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,4 +1,4 @@
-bikeshed<4.2
+bikeshed
myst-parser
pydata-sphinx-theme
json-schema-for-humans
diff --git a/resources/data/index.md b/resources/data/index.md
index 72b3286e..98d996d9 100644
--- a/resources/data/index.md
+++ b/resources/data/index.md
@@ -1,27 +1,71 @@
-Data Resources
-==============
-
-| Catalog | Hosting | Zarr Files | Size |
-| ------------------------------------------------------------------------ | -----------------------------------------------------| ------------ | -------- |
-| [BIA Samples](https://bit.ly/bia-ome-ngff-samples) | EBI | 90 | 200 GB |
-| [BioFile Finder](https://bff.allencell.org/datasets) | AWS Open Data Program & others | 78091 | ? TB |
-| [CryoET Data Portal](https://cryoetdataportal.czscience.com) | AWS Open Data Program | 37585 | 70 TB |
-| [Cell Painting Gallery](https://github.com/broadinstitute/cellpainting-gallery) | AWS Open Data Program | 136 | 20 TB |
-| [CZB-Zebrahub](https://zebrahub.ds.czbiohub.org/imaging) | czbiohub | 5 | 1.2 TB |
-| [DANDI](https://dandiarchive.org/dandiset/000108) ([identifiers.org][dandi2],[github][dandi3]) | AWS Open Data Program | 3914 | 355 TB |
-| [JAX](https://images.jax.org/webclient/userdata/?experimenter=-1) | The Jackson Laboratory | 17000 | 192 TB |
-| [Glencoe](https://glencoesoftware.com/ngff) | Glencoe Software, Inc. | 8 | 165 GB |
-| [IDR Samples](https://idr.github.io/ome-ngff-samples/) | EBI | 88 | 3 TB |
-| [IDR Studies](https://livingobjects.ebi.ac.uk/bioimaging-integrator-data/pages/idr_ngff_data.html) | EBI | 1644 | 47 TB |
-| [MoBIE](https://mobie.github.io/specs/ngff.html) | EMBL-HD | 21 | 2 TB |
-| [Neural Dynamics](https://registry.opendata.aws/allen-nd-open-data/) | AWS Open Data Program | 90 | 200 TB |
-| [Open SciVis](https://registry.opendata.aws/ome-zarr-open-scivis/) | AWS Open Data Program | 624 | 372 GB |
-| [Sanger](https://www.sanger.ac.uk/project/ome-zarr/) | Sanger, UK | 10 | 1 TB |
-| [SpatialData](https://github.com/scverse/spatialdata-notebooks/tree/main/datasets) | EMBL-HD | 10 | 25 GB |
-| [SSBD](https://ssbd.riken.jp/ssbd-ome-ngff-samples) | SSBD | 5000 | 20 TB |
-| [webKnossos](https://zarr.webknossos.org) | scalable minds | 69 | 70 TB |
-
-OME-Zarr 0.5 data has been collected during [the OME 2024 NGFF challenge](https://ome.github.io/ome2024-ngff-challenge/).
-
-[dandi2]: https://identifiers.org/DANDI:000108
-[dandi3]: https://github.com/dandisets/000108
+# Data Resources
+
+Looking for test data? [IDR Samples](https://idr.github.io/ome-ngff-samples/) aims at covering the different corners of the specification.
+
+After this quick reference, you can find a diverse set of data resources in OME-Zarr format, illustrating the range of scientific stories enabled by the format.
+
+Do you have a data resource in OME-Zarr format that you would like to share? Is there something missing? Please submit an [issue](https://github.com/ome/ngff/issues) or [pull request](https://github.com/ome/ngff/pulls) to update this list.
+
+## Sample data
+
+Resources curating OME-Zarr sample data, for demonstration and testing purposes.
+
+| Name | Link | Description |
+| -------- | ------- | ------- |
+| IDR Samples | [](https://idr.github.io/ome-ngff-samples/) | A comprehensive set of OME-Zarr samples from IDR, covering all OME-Zarr versions |
+| BIA Samples | [](https://uk1s3.embassy.ebi.ac.uk/bia-integrator-data/pages/omengff.html) | Sample OME-Zarr datasets from the BioImage Archive for testing |
+| Sanger Institute Samples | [](https://www.sanger.ac.uk/project/ome-zarr/) | Datasets from the Sanger Institute that have been converted to OME-Zarr to test and encourage the file format |
+| SSBD samples | [](https://ssbd.riken.jp/ssbd-ome-ngff-samples) | Sample OME-Zarr datasets from the Systems Science of Biological Dynamics database (SSBD) for testing and demonstration purposes |
+| OME 2024 NGFF challenge | [](https://ome.github.io/) | Close to 500 TB of data in the OME-Zarr 0.5 format |
+
+## Data portals
+
+Imaging data portals with curated OME-Zarr data, including public repositories. The content in the repositories may grow with time as new datasets become available.
+
+| Name | Link | Description |
+| -------- | ------- | ------- |
+| CryoET Data Portal | [](https://cryoetdataportal.czscience.com) | Cryo-electron tomography (cryoET) data repository |
+| BioFile Finder | [](https://bff.allencell.org/datasets) | A platform from the Allen Institute for Cell Science to browse lists of files, with first-class OME-Zarr support |
+| JAX OMERO | [](https://images.jax.org/webclient/userdata/?experimenter=-1) | The Jackson Laboratory public OMERO instance, links to OME-Zarr files are available in the key-value |
+| webknossos Zarr Gallery | [](https://zarr.webknossos.org) | A collection of mostly Electron Microscopy OME-Zarr datasets from webKnossos, a platform for large-scale 3D image data visualization and analysis. |
+| IDR Studies | [](https://livingobjects.ebi.ac.uk/bioimaging-integrator-data/pages/idr_ngff_data.html) | A collection of OME-Zarr datasets from the Image Data Resource (IDR), a public repository for bioimaging data |
+
+## Datasets
+
+These are datasets available in OME-Zarr format, hosted in various locations. They represent some of the different scientific stories enabled by OME-Zarr.
+
+| Name | Link | Description |
+| -------- | ------- | ------- |
+| Open SciVis | [](https://registry.opendata.aws/ome-zarr-open-scivis/) | A collection of of volumetric datasets in OME-Zarr format, including several CT scans. ([source](https://github.com/InsightSoftwareConsortium/OMEZarrOpenSciVisDatasets)) |
+| Herculaneum Scrolls | [](https://registry.opendata.aws/vesuvius-challenge-herculaneum-scrolls/) | Scrolls carbonized by Mount Vesuvius eruptions imaged via X-ray micro-CT, made available in OME-Zarr format. ([source](https://github.com/ScrollPrize/open-data)) |
+| VoDaSuRe | (https://augusthoeg.github.io/VoDaSuRe/) | A large-scale dataset covering volumetric super-resolution data with micro-CT ([arXiv](https://arxiv.org/abs/2603.23153); [dataset](https://huggingface.co/datasets/AugustHoeg/VoDaSuRe)) |
+
+## Atlases
+
+These are "atlas"-like datasets, which provide a comprehensive view of a particular biological system. The metadata-rich, streaming-friendly nature of OME-Zarr makes it ideal for sharing and visualizing large, complex datasets that are often associated with atlases.
+
+The [WebAtlas pipeline](https://cellatlas.io/webatlas) ([Li et al, 2024](https://www.nature.com/articles/s41592-024-02371-x)) demonstrates how OME-Zarr can be used in the context of deploying such atlases in the context of spatial transcriptomics. The examples, however, cover also other types of data, including volumetric electron microscopy, expansion microscopy and light sheet imaging.
+
+##
+
+| Name | Link | Description | Publication | Sample |
+| -------- | ------- | ------- | ------- | ------- |
+| Zebrahub | [](https://zebrahub.ds.czbiohub.org/imaging) | Multimodal atlas of zebrafish development including light-sheet imaging | [Lange et al., 2024](https://doi.org/https://doi.org/10.1016/j.cell.2024.09.047) | [zebrahub](https://zebrahub.sf.czbiohub.org/ngv?name=ZMNS001) |
+| ExÂME: Expansion Microscopy Atlas of Microbial Eukayotes | [](https://www.dudinlab.com/exame) | An atlas of expansion microscopy images of microbial eukaryotes, including OME-Zarr datasets (see also [S-BIAD2095](https://www.ebi.ac.uk/biostudies/bioimages/studies/S-BIAD2095); [highlight](https://www.nature.com/immersive/d41586-026-00901-5/index.html)) | [Mikus et al., 2024](https://doi.org/10.1101/2024.10.18.618984) | [vizarr](https://uk1s3.embassy.ebi.ac.uk/bia-zarr-test/vizarr/index.html?source=https://uk1s3.embassy.ebi.ac.uk/bia-integrator-data/S-BIAD2095/d39625f2-590d-4e19-9f61-37489318b1c0/3c55c404-49e4-4e9d-bb76-c028b08835d3.ome.zarr/0) |
+| The Human Organ Atlas | [](https://human-organ-atlas.esrf.fr/) | Atlas of organs using Hierarchical Phase-Contrast Tomography (HiP-CT) | [Walsh et al., 2026](https://www.science.org/doi/10.1126/sciadv.adz2240) | [Human Organ Atlas](https://human-organ-atlas.esrf.fr/datasets/2439291070) |
+| The Genetic Tools Atlas | [](https://brain-map.org/bkp/experiment/genetic-tools/genetic-tools-atlas) | A searchable web tool representing information and data on enhancer-adeno-associated viruses (enhancer AAVs) and mouse transgenes | [Ben-Simon et al., 2025]() | [atlas](https://knowledge.brain-map.org/data/7CVKSF7QGAKIQ8LM5LC/specimens/3PILF5KFKGJILDK30H2) |
+| Platynereis cell atlas | [](https://platynereis.com/resources/image/) | An expression atlas registered to a whole-body electron microscopy volume of the nereid *Platynereis dumerilii* | [Vergara et al., 2021](https://doi.org/10.1016/j.cell.2021.07.017) | [neuroglancer](https://tiago.bio.br/links?go=platy-atlas) |
+| OpenOrganelle | [](https://openorganelle.janelia.org/) | An open-access volume electron microscopy atlas of whole cells and tissues | [Xu et al., 2021](https://www.nature.com/articles/s41586-021-03992-4) | [neuroglancer](https://tiago.bio.br/links?go=open-organelle) |
+
+---
+
+# Other resources
+
+These are resources that may not be exclusively OME-Zarr, but include some OME-Zarr data that may be of interest to the community.
+
+| Name | Link | Description |
+| -------- | ------- | ------- |
+| DANDI | [](https://dandiarchive.org/) | BRAIN Initiative archive for publishing and sharing neurophysiology data (e.g. [000108](https://dandiarchive.org/dandiset/000108)) |
+| Cell Painting Gallery | [](https://broadinstitute.github.io/cellpainting-gallery) | A collection of datasets from the Cell Painting assay, a high-content image-based assay for profiling cellular phenotypes (e.g. [cpg0004-lincs](https://idr.github.io/idr0125-way-cellpainting/)). |
+| AIND - Mouse Neuroanatomy and Physiology Data | [](https://registry.opendata.aws/allen-nd-open-data/) | Datasets from the Allen Institute for Neural Dynamics, including OME-Zarr. |
+| SpatialData datasets | [](https://spatialdata.scverse.org/en/latest/tutorials/notebooks/datasets/README.html) | A collection of spatial omics datasets using the SpatialData specification, which includes OME-Zarr. |
diff --git a/resources/ecosystem/index.md b/resources/ecosystem/index.md
new file mode 100644
index 00000000..10f38025
--- /dev/null
+++ b/resources/ecosystem/index.md
@@ -0,0 +1,73 @@
+# Ecosystem
+
+Workflows and data formats that adopt OME-Zarr and build upon it for extended capabilities and interoperabilitieswith additional systems.
+
+It extends the [tools](../tools/index.md) section by including projects that are not necessarily tools for viewing, writing, reading, converting, validating or processing OME-Zarr data, but that are still part of a ecosystem of projects with first-class, dedicated support for OME-Zarr.
+
+It fits microscope acquisition software, analysis pipelines, standards and extensions, gallery-like displays, integrative workflows, and the like.
+
+## Standards and extensions
+
+| Name | Link | Description | Status |
+| -------- | ------- | ------- | ------ |
+| SpatialData | [](https://github.com/scverse/spatialdata) | An open and universal framework for processing spatial omics data. | [published](https://www.nature.com/articles/s41592-024-02212-x) |
+| BIDS | [](https://bids-specification.readthedocs.io/en/stable/common-principles.html#imaging-files) | A community-developed standard for organizing and describing neuroscientific data, currently adding support for OME-Zarr. | [work in progress](https://github.com/bids-standard/bids-specification/pull/2392) |
+
+
+## Gallery-like displays
+
+Tooling for sharing collections of OME-Zarr datasets in different ways.
+| Name | Link | Description |
+| -------- | ------- | ------- |
+| BioFileFinder | | A platform from the Allen Institute for Cell Science to browse lists of files, with first-class OME-Zarr support. |
+| Fileglancer | | A webapp for browsing, sharing, and viewing OME-Zarr images. |
+| Zallery | | A React-based gallery for browsing OME-Zarr datasets, developed by the SSBD (RIKEN). |
+| Zarrcade | | Searchable web-based OME-Zarr image galleries developed by Janelia. |
+| Zowser | | A gallery template for sharing sets of images built upon the [ome2024-ngff-challenge](https://ome.github.io/ome2024-ngff-challenge/). |
+
+## Microscope acquisition software
+
+| Name | Link | Description |
+| -------- | ------- | ------- |
+| mesoSPIM-control | [](https://github.com/mesoSPIM/mesoSPIM-control) | Python/PyQt acquisition software for mesoSPIM light-sheet microscopes with OME-Zarr multi-scale output support. |
+| Squid | [](https://github.com/Cephla-Lab/Squid)| An open-source confocal microscope with software to acquire and write OME-Zarr data. |
+
+## Integrative workflows
+
+Tools that integrate OME-Zarr into workflows that support OME-Zarr as either as an input, output or intermediate format for processing/management pipelines.
+
+| Name | Link | Description |
+| -------- | ------- | ------- |
+| Fractal | [](https://fractal-analytics-platform.github.io/) | A framework to process OME-Zarr data at scale with modular processing tasks and to prepare it for interactive visualization. |
+| hoct | [](https://github.com/royerlab/hoct) | Higher-Order Cell Tracking is a predictive deep learning model for tracking cells from segments and images. |
+| Nyxus | [](https://github.com/PolusAI/nyxus) | A scalable library for calculating features from intensity-label image data. |
+| Mastodon | [](https://mastodon.readthedocs.io/) | A large-scale tracking and track-editing framework for large, multi-view images. |
+| multiview-stitcher | []((https://github.com/multiview-stitcher/multiview-stitcher)) | Python package for aligning, fusing, and stitching large 2D/3D image datasets, with first-class support for OME-Zarr workflows. |
+| NL-BIOMERO| [](https://github.com/NL-BioImaging/NL-BIOMERO) | An OMERO integration for in-place OME-Zarr import and remote execution of containerized bioimage workflows on HPC systems directly from OMERO.web.|
+| omero-zarr-pixel-buffer | [](https://github.com/glencoesoftware/omero-zarr-pixel-buffer) | An OMERO server extension for reading OME-Zarr data from local or S3 storage. |
+
+## Data sharing
+
+Platforms with dedicated support for sharing OME-Zarr datasets, open to public data submission.
+
+| Name | Link | Description |
+| -------- | ------- | ------- |
+| BioImage Archive | [](https://www.ebi.ac.uk/bioimage-archive/) | A public repository for bioimaging data, with support for submissions of OME-Zarr datasets. |
+| HuggingFace Hub | [](https://huggingface.co/datasets) | A platform for sharing machine-learning datasets, with [ongoing updates](https://github.com/huggingface/datasets/pull/8135) for first-class support for OME-Zarr datasets. |
+
+Of course, many other platforms support sharing OME-Zarr datasets, but don't necessarily parse the OME metadata or provide any kind of custom support.One may share OME-Zarr datasets and get a DOI (but no S3-like access) in platforms like [Zenodo](https://zenodo.org), [Figshare](https://figshare.com), [Dryad](https://datadryad.org), etc.
+
+Conversely, one may not get a DOI, but may be able to share datasets with S3-like access for streaming/testing in platforms like [HuggingFace Buckets](https://huggingface.co/buckets), [Cloudflare R2](https://www.cloudflare.com/developer-platform/r2/), [AWS S3](https://aws.amazon.com/s3/), [Google Cloud Storage](https://cloud.google.com/storage), [Microsoft Azure Blob Storage](https://azure.microsoft.com/en-us/products/storage/blobs/), etc. Some of them offer free tiers for small and medium public datasets, as well as programs for supporting open science data sharing (like [AWS Open Data](https://aws.amazon.com/opendata/), [Google Cloud Public Datasets](https://cloud.google.com/datasets), [Microsoft Azure Open Datasets](https://azure.microsoft.com/en-us/services/open-datasets/), etc).
+
+## Extended metadata frameworks
+
+While these projects do not *adopt* OME-Zarr, they are resources studied in the context of extending the metadata capabilities of OME-Zarr.
+
+They are all projects which users of OME-Zarr may find useful to be aware of for workflows that require more complex metadata management, or for integration with other ecosystems.
+
+
+| Name | Link | Description | Status |
+| -------- | ------- | ------- | ------ |
+| Thumbnails convention | [](https://github.com/clbarnes/zarr-convention-thumbnails) | A convention for storing thumbnail images in PNG or JPEG format alongside OME-Zarr datasets. | [work in progress](https://github.com/clbarnes/zarr-convention-thumbnails)|
+| RO-Crate | [](https://www.researchobject.org/ro-crate/) | An approach to packaging research data with metadata with pilots for OME-Zarr integration. | [work in progress](https://www.researchobject.org/ro-crate/ome) (see also the [ome2024-ngff-challenge](https://github.com/ome/ome2024-ngff-challenge/)) |
+| BioCroissant | [](https://github.com/mlcommons/BioCroissant) | A community effort to extend the [Croissant](https://github.com/mlcommons/croissant) standard for packaging and sharing machine learning datasets in biology. | [work in progress](https://github.com/mlcommons/BioCroissant/discussions/5)|
diff --git a/resources/index.md b/resources/index.md
index 53ef8247..5c31cb79 100644
--- a/resources/index.md
+++ b/resources/index.md
@@ -7,12 +7,11 @@
*/index
```
-This section provides resources related to OME-Zarr for users from all experience levels.
+This section provides resources related to OME-Zarr for users from all experience levels.
* [Data Resources](data/index.md) - A list of publicly available OME-Zarr datasets for testing and exploration.
* [Publications](publications/index.md) - Publications and preprints related to OME-Zarr and NGFF.
* [Tools](tools/index.md) - A list of tools for viewing, reading, writing, converting, validating and processing OME-Zarr data.
* [Learning and Teaching Resources](learning-and-teaching-material/index.md) - A collection of tutorials, guides, slides, notebooks and other materials for OME-Zarr.
* [OME-Zarr Ambassador Toolkit](ambassador-toolkit/index.md) - Slides, talking points and FAQs for confidently giving talks about OME-Zarr.
-
-
+* [Ecosystem](ecosystem/index.md) - Workflows and data formats that adopt OME-Zarr and build upon it
diff --git a/resources/tools/index.md b/resources/tools/index.md
index 1c24977e..484b95bc 100644
--- a/resources/tools/index.md
+++ b/resources/tools/index.md
@@ -2,16 +2,22 @@
A list of tools and libraries with OME-Zarr support. These are developed by various members of the NGFF community. If you think your tool/library should be listed here, please [open a pull request](https://github.com/ome/ngff).
+For tools supporting the core Zarr specification, agnostic to NGFF, see the [Zarr documentation](https://zarr.dev/implementations/).
+
+While some tools would fit multiple categories, we assigned each tool to a single candidate best matching category.
+
## Contents
-- [Tools with a graphical interface (ex. a website)](#tools-with-a-graphical-interface)
+- [Tools](#tools)
+ - [Contents](#contents)
+ - [Tools with a graphical interface](#tools-with-a-graphical-interface)
- [Zarr viewers](#zarr-viewers)
- - [Zarr converters](#zarr-converters-with-a-ui)
-- [Tools for the programmatically inclined](#tools-for-the-programmatically-inclined)
+ - [Zarr converters (with a UI)](#zarr-converters-with-a-ui)
+ - [Tools for the programmatically inclined](#tools-for-the-programmatically-inclined)
- [Zarr converters](#zarr-converters)
- - [Zarr readers and writers](#zarr-readers--writers)
- - [Validating Zarr](#zarr-validation)
-- [Other zarr tools and libraries](#other-tools-and-libraries)
+ - [Zarr readers \& writers](#zarr-readers--writers)
+ - [Zarr validation](#zarr-validation)
+ - [Rendering libraries](#rendering-libraries)
## Tools with a graphical interface
@@ -24,14 +30,19 @@ Want to view a Zarr? Use one of these.
| Name | Link | Description |
| -------- | ------- | ------- |
-| AGAVE | [](https://www.allencell.org/pathtrace-rendering.html) | Desktop application for viewing multichannel volume data powered by your GPU |
-| FIJI (MoBIE / BigDataViewer) | [](https://mobie.github.io/) | [FIJI](https://fiji.sc/) plug-in for exploring and sharing big multi-modal image and associated tabular data |
-| FIJI (n5-ij) | [](https://github.com/saalfeldlab/n5-ij) | [FIJI](https://fiji.sc/) plug-in for loading and saving image data to OME-Zarr and other formats supported by the N5 API |
+| AGAVE | [](https://www.allencell.org/pathtrace-rendering.html) | Desktop application for viewing multichannel volume data powered by your GPU |
+| FIJI (MoBIE) | [](https://mobie.github.io/) | MoBIE is a [FIJI](https://fiji.sc/) plug-in for exploring and sharing big multi-modal image and associated tabular data |
+| FIJI (BigDataViewer) | [](https://imagej.net/plugins/bdv/) | BigDataViewer ships with [FIJI](https://fiji.sc/) and opens local or remote OME-Zarr via its HDF5/N5/Zarr/OME-NGFF Viewer, with support for multiscale pyramids and labels |
+| FIJI (n5-ij) | [](https://github.com/saalfeldlab/n5-ij) | n5-ij is a [FIJI](https://fiji.sc/) plug-in for loading and saving image data to OME-Zarr and other formats supported by the N5 API |
+| FIJI (ome-zarr-fiji) | [](https://github.com/BioImageTools/ome-zarr-fiji-java) | ome-zarr-fiji is a [FIJI](https://fiji.sc/) plug-in offering drag & drop / copy & paste handlers for OME-Zarrs data.|
+| Ilastik | [](https://www.ilastik.org) | An interactive learning and segmentation toolkit |
| ITKWidgets | [](https://github.com/InsightSoftwareConsortium/itkwidgets) | Python tool for interactively viewing images (ex. in Jupyter) |
| Kiln | [](https://github.com/MPanknin/kiln-render) | A WebGPU-native out-of-core rendering system for virtualized volumetric data |
| Microscopy Nodes |[](https://github.com/aafkegros/MicroscopyNodes) | [Blender](https://www.blender.org/) add-on for visualizing high-dimensional microscopy data |
| napari | [](https://github.com/ome/napari-ome-zarr) | [napari](https://napari.org/) plug-in for viewing Zarr |
| Neuroglancer | [](https://github.com/google/neuroglancer) | A browser-based volume viewer |
+| Odon | [](https://github.com/alexcoulton/odon) | A spatial proteomics OME-Zarr viewer built in Rust.|
+| QuPath | [](https://github.com/qupath/qupath) | Open source software for digital pathology image analysis |
| syGlass | [](https://www.syglass.io/) | A VR desktop application for visualizing and segmenting 3D image data, with OME-Zarr streaming support. |
| Viv (Avivator, Vizarr, Vitessce, ...) | [](https://github.com/hms-dbmi/viv) | A toolkit for interactive visualization of high-resolution, multiplexed bioimaging datasets. The viv toolkit is used by the [Avivator](https://avivator.gehlenborglab.org), [Vizarr](https://github.com/hms-dbmi/vizarr) and [Vitessce](http://vitessce.io) image viewers, among others |
| Vol-E | [](https://vole.allencell.org/) | A browser-based volume viewer |
@@ -61,6 +72,7 @@ Check out the [readers and writers below](#zarr-readers--writers) to interact wi
| BioIO Conversion | [](https://github.com/bioio-devs/bioio-conversion) | CLI & scripting tool for easily converting images to OME-Zarr. Requires [bioio-ome-zarr](https://github.com/bioio-devs/bioio-ome-zarr) |
| EuBI-Bridge | [](https://github.com/Euro-BioImaging/EuBI-Bridge) | A tool for distributed conversion of microscopic image collections into the OME-Zarr format. |
| ITKIOOMEZarrNGFF | [](https://github.com/InsightSoftwareConsortium/ITKIOOMEZarrNGFF) | An ITK external module for IO of images stored in OME-Zarr file format. | Reading & Writing |
+| kfb2zarr | [](https://github.com/camlloyd/kfb2zarr) | Convert KFBio whole slide images (.kfb, .kfbf) to OME-Zarr. |
| multiscale-spatial-image | [](https://github.com/spatial-image/multiscale-spatial-image) | Generate a multiscale, chunked, multi-dimensional spatial image data structure that can serialized to OME-Zarr. | Reading & Writing |
| nd2 | [](https://github.com/tlambert03/nd2) | A Python library for reading nd2 files with native export to OME-Zarr, supporting multi-well plates and complete metadata preservation. |
| Nextflow (nf-omezarr) | [](https://github.com/JaneliaSciComp/nf-omezarr) | A Nextflow pipeline for converting directories of images to OME-Zarr using bioformats2raw |
@@ -80,10 +92,11 @@ Want to read or write a Zarr? Use one of these tools.
| bia-zarr | [](https://github.com/BioImage-Archive/bia-zarr) | A Python library for reading, writing, and manipulating OME-Zarr datasets, including thumbnail generation and OME-Zarr type detection. |
| Bio-Formats | [](https://github.com/ome/bioformats) | A standalone Java library for reading and writing life sciences image file formats. Requires [OMEZarrReader](https://github.com/ome/ZarrReader) |
| BioIO | [](https://github.com/bioio-devs/bioio) | Image/Metadata Reading Writing for Microscopy Images in pure Python. Requires [bioio-ome-zarr](https://github.com/bioio-devs/bioio-ome-zarr) (formerly [AICSImageIO](https://github.com/AllenCellModeling/aicsimageio)) |
+| clearscale | [](https://github.com/ilastik/clearscale) | Python library for handling OME metadata without learning the spec |
+| ez-zarr | [](https://github.com/fmicompbio/ez_zarr) | A Python and R package for reading and plotting OME-Zarr images. |
| iohub| [](https://github.com/czbiohub-sf/iohub) | Pythonic and parallelizable I/O for N-dimensional imaging data with OME metadata |
-| ngff-zarr | [](https://github.com/thewtex/ngff-zarr) | A lean and kind Open Microscopy Environment (OME) Next Generation File Format (NGFF) Zarr implementation. |
+| ngff-zarr | [](https://github.com/fideus-labs/ngff-zarr) | A lean and kind Open Microscopy Environment (OME) Next Generation File Format (NGFF) Zarr implementation. |
| ngio | [](https://biovisioncenter.github.io/ngio/stable/) | Python package for bject-based API for opening, exploring, and manipulating OME-Zarr images and high-content screening (HCS) plates |
-| omero-zarr-pixel-buffer | [](https://github.com/glencoesoftware/omero-zarr-pixel-buffer) | An OMERO server extension for reading OME-Zarr data from local or S3 storage. |
| ome-writers | [](https://github.com/pymmcore-plus/ome-writers) | A Python library for streaming acquisition data to OME-Zarr or OME-TIFF, supporting multiple array backends. |
| ome-zarr-py | [](https://github.com/ome/ome-zarr-py)| A Python library for reading and writing multi-resolution images stored as Zarr filesets, according to the OME-Zarr spec. |
| Zarr.NET | [](https://github.com/BiologyTools/Zarr.NET) | A native .NET library for reading and writing Zarr microscopy data. |
@@ -94,23 +107,16 @@ Want to validate a Zarr? Use one of these.
| Name | Link | Description |
| -------- | ------- | ------- |
-| ome-ngff-validator | [](https://ome.github.io/ome-ngff-validator/) | Web page for validating OME-Zarr files. |
+| ome-ngff-validator | [](https://ome.github.io/ome-ngff-validator/) | Web page for validating OME-Zarr files. |
| ome-zarr-models | [](https://github.com/ome-zarr-models/ome-zarr-models-py) | Python package and command line interface that can validate OME-Zarr files |
| yaozarrs | [](https://github.com/imaging-formats/yaozarrs) | Bottom-up python library with models and CLI for creating & validating OME-Zarr groups and documents with optional extras for array-backend-agnostic I/O |
-## Other tools and libraries
+## Rendering libraries
-Tools that do not explicitly fit into any of the above categories (ex. Zarr computation workflow orchestrators)
+Libraries that support the rendering and navigation of OME-Zarr data, but that are not themselves applications with a graphical user interface.
| Name | Link | Description |
| -------- | ------- | ------- |
-| Fileglancer | [](https://github.com/JaneliaSciComp/fileglancer) | A webapp for browsing, sharing, and viewing OME-Zarr images. |
-| Fractal | [](https://fractal-analytics-platform.github.io/) | A framework to process OME-Zarr data at scale with modular processing tasks and to prepare it for interactive visualization. |
-| Ilastik | [](https://github.com/ilastik/ilastik) | An interactive learning and segmentation toolkit |
-| Mastodon | [](https://mastodon.readthedocs.io/) | A large-scale tracking and track-editing framework for large, multi-view images. |
-| mesoSPIM-control | [](https://github.com/mesoSPIM/mesoSPIM-control) | Python/PyQt acquisition software for mesoSPIM light-sheet microscopes with OME-Zarr multi-scale output support. |
-| Nyxus | [](https://github.com/PolusAI/nyxus) | A scalable library for calculating features from intensity-label image data. |
| OMEZarrTileSource | [](https://github.com/TissUUmaps/OMEZarrTileSource) | An OpenSeadragon tile source for the OME-Zarr bioimage file format. |
-| ome-zarr.js | [](https://github.com/BioNGFF/ome-zarr.js) | A JavaScript library for simple rendering of thumbnnails and images. |
-| SpatialData | [](https://github.com/scverse/spatialdata) | An open and universal framework for processing spatial omics data. |
-| Zarrcade | [](https://github.com/JaneliaSciComp/zarrcade) | Create searchable web-based OME-Zarr image galleries. |
+| ome-zarr.js | [](https://github.com/BioNGFF/ome-zarr.js) | A JavaScript library for simple rendering of thumbnails and images. |
+| idetik | [](https://github.com/chanzuckerberg/idetik) | A library for building web-based image viewers. |