PolyStore
Framework-agnostic storage primitives for scientific applications.
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, image I/O, and Zarr/OME-Zarr support. Framework and streaming extras add their corresponding optional runtimes.
Full documentation: polystore.readthedocs.io
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file polystore-0.1.18.tar.gz.
File metadata
- Download URL: polystore-0.1.18.tar.gz
- Upload date:
- Size: 138.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9a090892cf7a92037dab5e3c4c2acb9aadffb8daddf38a618c00cf40abec6bba
|
|
| MD5 |
d1ffbf5c504f0a0f7c33289dd07b634d
|
|
| BLAKE2b-256 |
f8f3f1d896004602b5e1d275201ccfdade5fcedaca5b50d6517d8f8c2ad270fb
|
Provenance
The following attestation bundles were made for polystore-0.1.18.tar.gz:
Publisher:
publish.yml on OpenHCSDev/PolyStore
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
polystore-0.1.18.tar.gz -
Subject digest:
9a090892cf7a92037dab5e3c4c2acb9aadffb8daddf38a618c00cf40abec6bba - Sigstore transparency entry: 2218057156
- Sigstore integration time:
-
Permalink:
OpenHCSDev/PolyStore@4bad8f41ad898c168a44013f49d7002dd51fcde9 -
Branch / Tag:
refs/tags/v0.1.18 - Owner: https://github.com/OpenHCSDev
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@4bad8f41ad898c168a44013f49d7002dd51fcde9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file polystore-0.1.18-py3-none-any.whl.
File metadata
- Download URL: polystore-0.1.18-py3-none-any.whl
- Upload date:
- Size: 129.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
812a8182e5fb40b9a0f88e2f5ece69508cea193ae9e366ea8a2d2267bc272c0e
|
|
| MD5 |
0bb5319bf36490473f0833e73d755563
|
|
| BLAKE2b-256 |
d8f173819e979f663dc8dff855c7db33b0756acdc35af6a17b72494ee0922a91
|
Provenance
The following attestation bundles were made for polystore-0.1.18-py3-none-any.whl:
Publisher:
publish.yml on OpenHCSDev/PolyStore
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
polystore-0.1.18-py3-none-any.whl -
Subject digest:
812a8182e5fb40b9a0f88e2f5ece69508cea193ae9e366ea8a2d2267bc272c0e - Sigstore transparency entry: 2218057198
- Sigstore integration time:
-
Permalink:
OpenHCSDev/PolyStore@4bad8f41ad898c168a44013f49d7002dd51fcde9 -
Branch / Tag:
refs/tags/v0.1.18 - Owner: https://github.com/OpenHCSDev
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@4bad8f41ad898c168a44013f49d7002dd51fcde9 -
Trigger Event:
push
-
Statement type: