Skip to main content

PolyStore

Framework-agnostic storage primitives for scientific applications.

PyPI version Documentation Status Python 3.11+

PolyStore owns backend interfaces, execution-local backend registries, FileManager routing, storage formats, ROI values, virtual-workspace source references, and viewer-streaming payload mechanics. Applications retain ownership of domain artifact names and materialization policy.

Quick start

Pass an explicit mapping of backend names to instances. FileManager has no global fallback and does not infer a backend from a path.

from pathlib import Path
import numpy as np

from polystore import DiskBackend, FileManager, MemoryBackend

registry = {
    "disk": DiskBackend(),
    "memory": MemoryBackend(),
}
files = FileManager(registry)

data = np.arange(6).reshape(2, 3)
files.save(data, Path("output.npy"), backend="disk")
loaded = files.load(Path("output.npy"), backend="disk")

For application startup where every discoverable context-free backend is wanted, use the package-owned lazy registry:

from polystore import FileManager, ensure_storage_registry, storage_registry

ensure_storage_registry()
files = FileManager(dict(storage_registry))

Backends requiring context-specific construction, including virtual workspaces and OMERO, must be instantiated by the application and added to its registry.

Nominal backend extension

Concrete backends inherit DataSource, DataSink, StorageBackend, or ReadOnlyBackend and declare their backend key. The authoritative class catalog is BackendBase.__registry__ (also exported as STORAGE_BACKENDS). Do not build a second backend class table.

Installation

python -m pip install polystore

The core install includes NumPy, ArrayBridge, metaclass-registry, file locking, platform-aware cache paths, image I/O, Zarr/OME-Zarr support, and ZMQRuntime. Framework and streaming extras add their corresponding optional runtimes. Install polystore[bioformats] for the package-owned PyImageJ and Bio-Formats bridge. Its first use materializes a checksummed Fiji, JDK, and PyImageJ bridge runtime; later processes reuse that complete local cache without Maven resolution.

Full documentation: polystore.readthedocs.io

Metadata

Release files for polystore 0.3.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 polystore 0.3.3
File Size Uploaded
polystore-0.3.3.tar.gz 195.2 kB Details

Built distribution (wheel)

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

Total release size: 353.6 kB

Release files / polystore-0.3.3.tar.gz

Download URL polystore-0.3.3.tar.gz
Size 195.2 kB
Tags Source
SHA-256 checksum
How to use checksums
b23c0c1274e575f1e44a0fc9fa304741fd7b0a03a90312ab30fe2a32e7cdf921
BLAKE2b-256 checksum
How to use checksums
e7ea7febb17c5da157c8d550a6929c19dad6e87575ce11b03e6ac2e0afebdea0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 4, 2026.

Transparency log

Release files / polystore-0.3.3-py3-none-any.whl

Download URL polystore-0.3.3-py3-none-any.whl
Size 158.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ac452b93b3cbb9171c50f06369ad23a0bad82cf265f750f7df9d14bdc9291eda
BLAKE2b-256 checksum
How to use checksums
35a1ff83b7599534fcd9d1cf923ad2c8589f0bfc96694b70f29c71a2ba68662d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 4, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.3.3 This release

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.2.19

2 release files

0.2.18

2 release files

0.2.17

2 release files

0.2.16

2 release files

0.2.15

2 release files

0.2.14

2 release files

0.2.13

2 release files

0.2.12

2 release files

0.2.9

2 release files

0.2.8

2 release files

0.2.7

2 release files

0.2.6

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.35

2 release files

0.1.34

2 release files

0.1.33

2 release files

0.1.32

2 release files

0.1.31

2 release files

0.1.26

2 release files

0.1.25

2 release files

0.1.24

2 release files

0.1.23

2 release files

0.1.22

2 release files

0.1.21

2 release files

0.1.20

2 release files

0.1.19

2 release files

0.1.18

2 release files

0.1.17

2 release files

0.1.16

2 release files

0.1.15

2 release files

0.1.14

2 release files

0.1.13

2 release files

0.1.12

2 release files

0.1.11

2 release files

0.1.10

2 release files

0.1.9

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.2

2 release files

0.1.0

2 release files

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