Loader plugin for napari, to load Acquifer Imaging Machine datasets in napari, using dask for efficient lazy data-loading.

The acquifer-napari plugin allows loading IM04 dataset directory, as multi-dimensional images in napari.
Sliders for well, channel, time and Z are automatically rendered when there are more than 1 coordinates along the dimension.
The plugin uses Dask-Image for efficient data-loading "on request" similar to the VirtualStack in ImageJ.


Via the napari plugin manager : acquifer-napari. Or with pip : pip install acquifer-napari.

Use pip install -e . to install in developement mode, so any change in the source code is directly reflected.
Use npe2 list to check that the plugin is correctly installed and visible by napari.
For instance here, the package defines 1 command, which is a reader.
One could have more commands, which would be implement other types.
This should output something like following ┌──────────────────────────────┬─────────┬──────┬───────────────────────────────────────────────────────────┐ │ Name │ Version │ Npe2 │ Contributions │ ├──────────────────────────────┼─────────┼──────┼───────────────────────────────────────────────────────────┤ │ acquifer-napari │ 0.0.1 │ ✅ │ commands (1), readers (1)

The plugin should be installed in an environment with napari installed.
Napari can be started with the naparicommand in a command prompt with a system wide python installation.
Once installed, napari can be opened in a IPython interactive session with

>> import napari
>> napari.Viewer()


The file napari.yaml in acquifer_napari_plugin defines what functions of the python package are visible to napari.
The top level name field must be the same than the python package name defined in setup.cfg. It first define a set of commands, which have a custom id, and a python_name, which is the actual location of the function in the python package (or module).
Then the napari.yaml has optional subsections readers, writers, widget, to reference some of the commands previously defined, to notify napari that they implemente those standard functions.
For instance I first define a command myReader pointing to myPackage.myReader, and I reference that command using the id it in the section readers


If you encounter any problems, please file an issue along with a detailed description.


  • 0.0.2

Last updated:

  • 27 February 2024

First released:

  • 07 July 2023


Supported data:

  • Information not submitted

Plugin type:

Open extension:

GitHub activity:

  • Stars: 0
  • Forks: 0
  • Issues + PRs: 0

Python versions supported:

Operating system:


  • acquifer
  • napari
  • numpy
  • sortedcontainers
  • dask-image
  • xarray