Installation

Basic Installation

Install polystore with pip:

pip install polystore

This will install the core package with NumPy and basic storage backends.

Optional Dependencies

Polystore supports optional dependencies for additional functionality:

Framework Support

Install support for specific ML frameworks:

# PyTorch support
pip install polystore[torch]

# JAX support
pip install polystore[jax]

# TensorFlow support
pip install polystore[tensorflow]

# CuPy support (GPU arrays)
pip install polystore[cupy]

Zarr Support

For Zarr and OME-Zarr array storage:

pip install polystore[zarr]

Streaming Support

For ZeroMQ streaming backends:

pip install polystore[streaming]

All Optional Dependencies

Install all optional dependencies at once:

pip install polystore[all]

Development Installation

To install for development with testing and documentation tools:

git clone https://github.com/trissim/polystore.git
cd polystore
pip install -e ".[dev,docs]"

Requirements

  • Python: 3.11 or later

  • NumPy: 1.26.0 or later

  • portalocker: 2.8.0 or later (for atomic file operations)

  • metaclass-registry: From GitHub (automatic backend registration)

Verifying Installation

Verify your installation by importing polystore:

import polystore
print(polystore.__version__)

# Check available backends
from polystore import BackendRegistry
registry = BackendRegistry()
print("Available backends:", list(registry.keys()))

You should see output similar to:

0.1.0
Available backends: ['memory', 'disk']

If you installed optional dependencies, you may see additional backends like zarr.