Skip to main content

Gufo Blob

Unified blob storage access with predictable semantics.

PyPi version Downloads Python Versions License Build codecov Sponsors Ruff


Documentation: https://docs.gufolabs.com/gufo_blob/

Source Code: https://github.com/gufolabs/gufo_blob/

Gufo Blob is a lightweight, typed abstraction layer for working with key-based object storage across different backends. It provides a consistent and predictable API for accessing, resolving, and iterating over data regardless of the underlying storage implementation.

Examples

Synchronous API

put/get/delete

from gufo.blob.sync import open_blob

with open_blob("/var/data") as blob:
    # Store
    blob.put("myproj/k1", b"data")
    # Get
    v = blob.get("myproj/k1")
    # Delete
    blob.delete("myproj/k1")

dict-like API

from gufo.blob.sync import open_blob

with open_blob("/var/data") as blob:
    # Save
    blob["myproj/k1"] = b"data"
    # Get
    v = blob["myproj/k1"]
    # Delete
    del blob["myproj/k1"]

Asynchronous API

from gufo.blob.aio import open_blob

async def main():
    async with open_blob("/var/data") as blob:
        # Store
        await blob.put("myproj/k1", b"data")
        # Get
        v = await blob.get("myproj/k1")
        # Delete
        await blob.delete("myproj/k1")

Features

  • Sync and async modes - Provides API for both sync and async modes of operation.
  • Unified blob abstraction — consistent API for working with different storage backends
  • Backend-agnostic design — works with local filesystem and pluggable storage implementations
  • Fully typed API — strict typing for keys, values, and storage contracts
  • Agent-friendly architecture — explicit interfaces and uniform backend semantics simplify AI-assisted development
  • Simple object model — intuitive Blob / BlobBase interface with predictable semantics
  • Lazy operations — resources are initialized and opened only when required
  • Explicit lifecycle control — optional open() / close() with context manager support
  • Transparent connection handling — automatic resource management for connected backends
  • Efficient scanning — fast iteration over stored keys with minimal overhead
  • Key-based access model — uniform resolution of objects via string keys
  • Error unification — all runtime issues reduce to BlobError and KeyError
  • Deterministic behavior — consistent resolution and iteration order guarantees where applicable
  • Extensible architecture — easy to add new storage backends and resolvers
  • Designed for composition — works naturally inside larger systems and pipelines

On Gufo Stack

This product is a part of Gufo Stack - the collaborative effort led by Gufo Labs. Our goal is to create a robust and flexible set of tools to create network management software and automate routine administration tasks.

To do this, we extract the key technologies that have proven themselves in the NOC and bring them as separate packages. Then we work on API, performance tuning, documentation, and testing. The NOC uses the final result as the external dependencies.

Gufo Stack makes the NOC better, and this is our primary task. But other products can benefit from Gufo Stack too. So we believe that our effort will make the other network management products better.

Metadata

Release files for gufo-blob 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for gufo-blob 0.2.0
File Size Uploaded
gufo_blob-0.2.0.tar.gz 37.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for gufo-blob 0.2.0
File Interpreter ABI Platform
gufo_blob-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 71.6 kB

Release files / gufo_blob-0.2.0.tar.gz

Download URL gufo_blob-0.2.0.tar.gz
Size 37.7 kB
Tags Source
SHA-256 checksum
How to use checksums
a00f6b966affbcadb208a606064bf5f1bdec8b9329e34741ae65bc781ef80739
BLAKE2b-256 checksum
How to use checksums
a916858b7560d280cdc41b0124a8e1d623a9da0cb2abcec9998aca141312ff60
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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 Jul 11, 2026.

Transparency log

Release files / gufo_blob-0.2.0-py3-none-any.whl

Download URL gufo_blob-0.2.0-py3-none-any.whl
Size 33.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
15087792cc52850708f9a89c65d97a03d9a34c7167fed8982ba26497d56ba548
BLAKE2b-256 checksum
How to use checksums
210b8d5b58fce8210dd9ad42a655aa93ab5efd263d5ecf1be20281f10207cada
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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 Jul 11, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.2.0 This release

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