skillfed

snakemake-interface-storage-plugins

This package provides a stable interface for interactions between Snakemake and its storage plugins.

snakemake-interface-storage-plugins v4.4.1 1.2M downloads/30d#4,177 on PyPI2
License unclear Active released

What it is and what it does

This package defines the contract between Snakemake and its storage plugins. It exports base classes and type definitions that plugin developers must implement to create custom storage backends—such as cloud storage, databases, or HTTP endpoints—that Snakemake can read from and write to during workflow execution.

The interface includes abstract methods for querying storage validity, reading and writing objects, globbing patterns, rate limiting, and inventory operations. Plugin developers inherit from StorageProviderBase and StorageObject classes, implement required methods like is_valid_query and local_suffix, and optionally define settings dataclasses for CLI parameters. The package handles retry logic via a decorator and provides utilities for caching and safe logging of queries.

Use it for:

  • Develop a custom storage plugin to integrate a proprietary or niche storage system with Snakemake workflows
  • Create a cloud storage backend plugin (e.g., for a specific object store) that Snakemake can use as a workflow input/output location
  • Build a database-backed storage plugin to store workflow artifacts in a relational or NoSQL database
  • Implement a storage plugin with custom rate limiting and retry logic for a rate-limited API or service

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Provides a stable interface specification and base classes for building Snakemake storage plugins that interact with various storage backends.

Yes, if you are developing a Snakemake storage plugin. This is the required interface specification and base class library for that task. If you are a Snakemake end-user, install only if your workflow uses a custom storage plugin that depends on it. Verify the license status before use in proprietary projects.

Install

snakemake-interface-storage-plugins on PyPI

pip

pip install snakemake-interface-storage-plugins

uv

uv add snakemake-interface-storage-plugins

poetry

poetry add snakemake-interface-storage-plugins

Installing snakemake-interface-storage-plugins

Before you install

Active maintenance with recent commits. Low install friction as a pure Python wheel with five lightweight runtime dependencies (humanfriendly, snakemake-interface-common, tenacity, throttler, wrapt).

License in practice

License status is unclear—no SPDX identifier or raw license text is declared in the package metadata. Verify the actual license terms before using in proprietary or restricted contexts.

Quickstart

pip install snakemake-interface-storage-plugins

from snakemake_interface_storage_plugins.storage_provider import StorageProviderBase
from snakemake_interface_storage_plugins.storage_object import StorageObjectRead

class MyStorageProvider(StorageProviderBase):
    pass

class MyStorageObject(StorageObjectRead):
    pass

Requires Python 3.10 or later. Intended for plugin developers; end-users need a Snakemake installation and a plugin that depends on this package.

Verify before relying

  • Whether the package is actually licensed under an open-source license despite the unclear metadata declaration
  • Stability guarantees or semantic versioning policy for the interface across major versions

Package facts

License not declared (unclear)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 5 — humanfriendly, snakemake-interface-common, tenacity, throttler, wrapt
Maintenance actively maintained — 151 days since the last release
Last repo commit
First released
Downloads 1,234,956/month — #4,177 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: snakemake_interface_storage_plugins-4.4.1-py3-none-any.whl

Programming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14

Tags

snakemake storage plugin interfacesnakemake storage backend abstractionstorage provider base classessnakemake plugin developmentstorage plugin framework
snakemake-pluginworkflow-storage

More Application Frameworks packages

fastapi

FastAPI is a Python web framework for building…

permissive · top 100 on PyPI

annotated-doc

Provides a way to document function parameters,…

permissive · top 100 on PyPI

textual

Textual is a Python framework for building…

permissive · top 100 on PyPI

typer

Typer builds command-line applications from…

permissive · top 1,000 on PyPI

mcp

Build and connect to Model Context Protocol…

permissive · top 1,000 on PyPI

Werkzeug

Werkzeug is a WSGI utility library providing…

permissive · top 1,000 on PyPI

snakemake-interface-executor-plugins

Provides a stable interface specification for…

permissive · top 15,000 on PyPI

snakemake-interface-logger-plugins

Provides a stable interface specification for…

unclear · top 15,000 on PyPI

snakemake-interface-report-plugins

Defines the interface contract that Snakemake…

unclear · top 15,000 on PyPI

snakemake-interface-scheduler-plugins

Provides a stable interface specification for…

unclear · top 15,000 on PyPI

snakemake-storage-plugin-s3

Enables Snakemake workflows to read from and…

permissive · top 15,000 on PyPI

snakemake-interface-common

Provides shared interfaces, utilities, and data…

unclear · top 5,000 on PyPI

snakemake-storage-plugin-gcs

Enables Snakemake workflows to read from and…

permissive · top 15,000 on PyPI

snakemake

Snakemake is a workflow management system that…

permissive · top 15,000 on PyPI

pulumi-tailscale

A Pulumi resource provider that lets you…

permissive · top 15,000 on PyPI

fsspec

fsspec provides a unified filesystem interface…

unclear · top 100 on PyPI