Skip to main content

ZarrSmith logo ZarrSmith — microscopy I/O, OME-Zarr forging, and NGFF utilities

Python License Tests codecov Documentation Docker GitHub release GitHub stars

ZarrSmith is a Python package for reading microscopy datasets from multiple acquisition systems, building multiscale pyramids, writing OME-NGFF / OME-Zarr, and working with those datasets from Python, the command line and napari.

The rendered documentation is at embl-mif.github.io/zarrsmith.


What ZarrSmith does

  • Microscope managers read Luxendo, Opera, SCAPE, Viventis, Zeiss, Evident (Olympus VSI) and OME-Zarr datasets into one lazy (Dask) API with a shared metadata schema. → Readers and conventions
  • OME-Zarr writing: full export, empty datasets and groups, image and label region updates, any subset of the tczyx axes. → Python API
  • Pyramids and subsetting: multiscale generation, cropping, channel reordering, metadata updates. → Python API
  • Mosaics: raw tiles shown at their stage position and fused into one OME-Zarr image (3D or projection, one timepoint or a timelapse). → Mosaics
  • Chromatic shift correction: the Z offset between channels measured on the sample itself, on the reference channel and timepoint you choose and applied to every timepoint, and a corrected copy with the same layout as the input. → Chromatic shift correction
  • Command line: one-off and CSV-batch conversion, mosaic fusion and chromatic shift correction. → Command line
  • Napari widgets: conversion with ROI selection, mosaic fusion, exploration of segmented objects (features plot linked with the viewer). → Napari plugin
  • Output tuning: sharding, singleton axes, parallel writing, progress bars. → Advanced writing options

Installation

conda create -n zarrsmith python=3.12
conda activate zarrsmith
pip install zarrsmith

Optional extras:

pip install "zarrsmith[napari]"      # napari widgets
pip install "zarrsmith[notebooks]"   # Jupyter, to run the example notebooks
pip install "zarrsmith[dev]"         # tests and packaging
pip install "zarrsmith[docs]"        # documentation build
pip install "zarrsmith[all]"         # all of the above

Extras can be combined, e.g. pip install "zarrsmith[napari,notebooks]".

Installing from source, development installs, versioning and releases: Installation and versioning.

Quick start

import zarrsmith.microscope_manager as mm

source = mm.ViventisManager("path/to/Position_1")   # any microscope manager
source.build_pyramid(num_levels=3)
source.to_zarr("output.zarr")                       # NGFF v0.5 / Zarr v3

z = mm.ZarrManager("output.zarr")
z.visualize()                                       # open in napari
zarrsmith convert -i INPUT_PATH -m MICROSCOPE -z OUTPUT_ZARR
zarrsmith fuse -i ACQUISITION_FOLDER -z OUTPUT_ZARR -rds 4 8 8   # fuse raw tiles
zarrsmith chromatic-shift -i INPUT_ZARR -z OUTPUT_ZARR -r shift.json   # align channels in Z

Documentation

Getting started

Page Contents
Installation and versioning environments, extras, release labels
Readers and conventions supported microscopes, shared reader behaviour, logging

Working with data

Page Contents
Python API export, empty datasets, axis-aware metadata, labels, region writes
Mosaics raw tiles, placement check, fusion options, timelapses
Chromatic shift correction measuring the Z offset between channels, the corrected dataset, checking the result, zarrsmith chromatic-shift
Advanced writing options sharding, singleton axes, parallel writing, progress bar

Interfaces

Page Contents
Command line zarrsmith convert, zarrsmith fuse, zarrsmith chromatic-shift (one dataset or a CSV batch)
Napari plugin converter, mosaic fusion and objects explorer widgets

Reference

Page Contents
API reference generated from the docstrings
Contributing package layout, adding a microscope manager or a mosaic manager, zarrsmith.utils, documentation

Help

For questions or bug reports, open an issue on GitHub, or contact the current maintainers.

Metadata

Release files for zarrsmith 0.6.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for zarrsmith 0.6.3
File Size Uploaded Provenance Actions
zarrsmith-0.6.3.tar.gz 8.5 MB With provenance Details for zarrsmith-0.6.3.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for zarrsmith 0.6.3
File Interpreter ABI Platform Actions
zarrsmith-0.6.3-py3-none-any.whl Python 3 none any Details for zarrsmith-0.6.3-py3-none-any.whl

Total release size: 8.7 MB

Release files / zarrsmith-0.6.3.tar.gz

Download URL zarrsmith-0.6.3.tar.gz
Size 8.5 MB
Tags Source
SHA-256 checksum
How to use checksums
aab6395ba14db78bffb4a233eb2327459b20c3ea595c85b419dd69b563313394
BLAKE2b-256 checksum
How to use checksums
a084c2bd46c4b188477efa93a28a7d89da81dcc36273818e818df18a7ee17279
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 3, 2026.

Transparency log

Release files / zarrsmith-0.6.3-py3-none-any.whl

Download URL zarrsmith-0.6.3-py3-none-any.whl
Size 220.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d5d10568ff945601f38f7b5d5c5eb7a4fac300fa09e40beb39975c55fcb37cd1
BLAKE2b-256 checksum
How to use checksums
a5836220d8385802d6fb1b68703b461202c777b838ef0ca00117b8b26205c262
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 3, 2026.

Transparency log

Security for zarrsmith 0.6.3

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for zarrsmith-0.6.3.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 3, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page