skillfed

obspec

Object storage interface definitions for Python.

obspec v0.1.0 138.7K downloads/30d#11,320 on PyPI34
Permissive license MIT Active released

What it is and what it does

obspec is a Python protocol library that defines a standard interface for object storage operations. Rather than treating object storage like a filesystem, it acknowledges that cloud storage has fundamentally different semantics—more similar to HTTP requests than file objects. The package provides the protocol definitions that allow different object storage backends to implement a common API.

The library is designed to work with implementations that provide the actual storage operations. By defining a generic protocol, obspec enables utilities and tools built on top of it to work with any conforming backend without needing provider-specific code. The project is in active development with planned utilities for globbing and caching built on the protocol primitives.

Use it for:

  • Building storage-agnostic applications that work with multiple providers without vendor lock-in
  • Creating tools and utilities that operate on object storage without reimplementing provider-specific logic
  • Standardizing object storage interfaces within organizations using multiple cloud platforms
  • Developing libraries that need to abstract over different object storage backends

Worth the install?

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

Defines a Python protocol for abstracting object storage operations across different providers, treating object storage as a distinct interface rather than a filesystem.

Yes, if you are building or using tools that need to work with object storage across multiple providers. The protocol is actively maintained, has no security vulnerabilities, and installs with minimal friction. However, verify that an implementation is available for your use case, as obspec alone defines the interface rather than providing storage operations.

Install

obspec on PyPI

pip

pip install obspec

uv

uv add obspec

poetry

poetry add obspec

Installing obspec

Before you install

Low friction to install. The package is actively maintained with recent commits and depends only on typing-extensions, distributed as a pure Python wheel.

License in practice

MIT license permits commercial and private use with minimal restrictions, making it suitable for most projects.

Quickstart

pip install obspec

from typing import Protocol
import obspec

Requires Python 3.9 or later; obspec defines protocols but requires a backend implementation to perform actual storage operations.

Verify before relying

  • Whether obspec alone provides usable storage operations or requires a separate backend implementation to be functional
  • What specific object storage providers are currently supported through available implementations
  • Timeline and scope of planned utilities like globbing and caching mentioned in the description

Package facts

License MIT (permissive)
Python support supports the current Python release (>=3.9)
Install friction low — pure-Python wheel
Runtime dependencies 1 — typing-extensions
Maintenance actively maintained — 415 days since the last release
Last repo commit
First released
Downloads 138,725/month — #11,320 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: obspec-0.1.0-py3-none-any.whl

Development Status :: 4 - BetaLicense :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: Only

Tags

object storage protocolabstract storage interfacecloud storage abstractionstorage interface definitionmulti-provider storage
protocol-definitioncloud-storageabstraction-layer

More Software Development packages