Skip to main content

unibox provides unified interface for common file operations

Project description

unibox

ci documentation pypi version gitter

A unified interface for seamless file operations across local, S3, and Hugging Face ecosystems.

unibox simplifies loading, saving, and exploring data—whether it's a local CSV, an S3-hosted image, or an entire Hugging Face dataset. With a single API, you can handle diverse file types and storage backends effortlessly.

Installation

pip install unibox

Or with uv:

uv tool install unibox

Quick Start

Load anything, anywhere:

import unibox as ub

# Local parquet file
df = ub.loads("data/sample.parquet")

# S3-hosted text file
lines = ub.loads("s3://my-bucket/notes.txt")

# Hugging Face dataset
dataset = ub.loads("hf://user/repo")

Save with ease:

ub.saves(df, "s3://my-bucket/processed.parquet")
ub.saves(dataset, "hf://my-org/new-dataset")

List files or peek at data:

# List all JPGs in an S3 folder
images = ub.ls("s3://bucket/images", exts=[".jpg"])

# Preview a dataset
ub.peeks(dataset)

Why unibox?

  • Versatile: Handles CSVs, images, datasets, and more—locally or remotely.
  • Simple: One function call to load or save, no matter the source.
  • Transformative: From quick data peeks to concurrent downloads, it scales with your needs.

Explore the full power in our documentation.

Contributing

Love unibox? Join us! Check out CONTRIBUTING.md to get started.

Extra dev notes: see README_dev.md.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

unibox-0.8.2.tar.gz (208.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

unibox-0.8.2-py3-none-any.whl (45.8 kB view details)

Uploaded Python 3

File details

Details for the file unibox-0.8.2.tar.gz.

File metadata

  • Download URL: unibox-0.8.2.tar.gz
  • Upload date:
  • Size: 208.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.16

File hashes

Hashes for unibox-0.8.2.tar.gz
Algorithm Hash digest
SHA256 bd78003ec381faec0ad5786cc715d1d99aee7a34dd931696d09e5e9d354f9067
MD5 a6d3c952b161db57a13b44fb2bf9c452
BLAKE2b-256 2a9b1be84521018ea2554e06291a37e43d7535dfc8d8a824f7b4dacfd46231b8

See more details on using hashes here.

File details

Details for the file unibox-0.8.2-py3-none-any.whl.

File metadata

  • Download URL: unibox-0.8.2-py3-none-any.whl
  • Upload date:
  • Size: 45.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.16

File hashes

Hashes for unibox-0.8.2-py3-none-any.whl
Algorithm Hash digest
SHA256 64f4c443b4140b7f9a5801a004954ddbefd56d8bdc65f531ccc1b3ab0d792e4a
MD5 2d2e3952d81bd70de838728539ffb7da
BLAKE2b-256 d64405372a78902f69b7bdb75e8b93616c38a7312cfe3d6a28a7eb17bc13a98f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page