developmentseed/obstore

The simplest, highest-throughput Python interface to S3, GCS & Azure Storage, powered by Rust.

Python

821

455 commits

updated Oct 6, 2026

See the code

README

obstore

PyPI Conda Version PyPI - Downloads

The simplest, highest-throughput 1 Python interface to Amazon S3, Google Cloud Storage, Azure Storage, & other S3-compliant APIs, powered by Rust.

  • One interface for all backends with no required Python dependencies.
  • Sync and async API with full type hinting.
  • Streaming downloads with configurable chunking.
  • Streaming uploads from files or async or sync iterators.
  • Streaming list, with no need to paginate.
  • Automatic multipart uploads for large file objects.
  • Automatic credential refresh before expiration.
  • File-like object API and fsspec integration.
  • Optionally return list results in Apache Arrow format, which is faster and more memory-efficient than materializing Python dicts.
  • Zero-copy data exchange between Rust and Python via the buffer protocol.

For Rust developers looking to add object_store support to their own Python packages, refer to pyo3-object_store.

Installation

To install obstore using pip:

pip install obstore

Obstore is on conda-forge and can be installed using conda, mamba, or pixi. To install obstore using conda:

conda install -c conda-forge obstore

Documentation

Full documentation is available on the website.

Head to Getting Started to dig in.

Footnotes

  1. Benchmarking is ongoing, but preliminary results indicate roughly 9x higher throughput than fsspec and 2.8x higher throughput than aioboto3 for many concurrent, small, get requests from an async context. ↩

amazon-s3
azure
azure-storage
cloudflare-r2
google-cloud-storage
object-store
python
rust
s3

developmentseed/obstore

The simplest, highest-throughput Python interface to S3, GCS & Azure Storage, powered by Rust.

Python

821

455 commits

updated Oct 6, 2026

See the code

README

obstore

PyPI Conda Version PyPI - Downloads

The simplest, highest-throughput 1 Python interface to Amazon S3, Google Cloud Storage, Azure Storage, & other S3-compliant APIs, powered by Rust.

  • One interface for all backends with no required Python dependencies.
  • Sync and async API with full type hinting.
  • Streaming downloads with configurable chunking.
  • Streaming uploads from files or async or sync iterators.
  • Streaming list, with no need to paginate.
  • Automatic multipart uploads for large file objects.
  • Automatic credential refresh before expiration.
  • File-like object API and fsspec integration.
  • Optionally return list results in Apache Arrow format, which is faster and more memory-efficient than materializing Python dicts.
  • Zero-copy data exchange between Rust and Python via the buffer protocol.

For Rust developers looking to add object_store support to their own Python packages, refer to pyo3-object_store.

Installation

To install obstore using pip:

pip install obstore

Obstore is on conda-forge and can be installed using conda, mamba, or pixi. To install obstore using conda:

conda install -c conda-forge obstore

Documentation

Full documentation is available on the website.

Head to Getting Started to dig in.

Footnotes

  1. Benchmarking is ongoing, but preliminary results indicate roughly 9x higher throughput than fsspec and 2.8x higher throughput than aioboto3 for many concurrent, small, get requests from an async context. ↩

amazon-s3
azure
azure-storage
cloudflare-r2
google-cloud-storage
object-store
python
rust
s3

Project health

Latest release

0.11.1 · Aug 21, 2026

Releases this year

10

Significant stargazers

(top 24 of 34)

Jirka Borovec

4,065 followers · starred Aug 2025

Tom MacWright

3,743 followers · starred Mar 2025

Philippe Rivière

741 followers · starred Mar 2025

Adrian Garcia Badaracco

689 followers · starred Oct 2025