Manages a local cache matched by content in a remote cloud Storage Bucket. A local cache for files belonging to a single user is mirrored in a user-specific directory in the Storage Bucket. Designed to support mobile apps that manage data locally but need to secure or share it by pushing a copy to the cloud.
Buckia provides a unified interface for Bunny.net, AWS S3, Linode Object Storage, and Backblaze B2.
pip install "buckia[bunny]" # Bunny.net
pip install "buckia[s3]" # AWS S3
pip install "buckia[linode]" # Linode
pip install "buckia[b2]" # Backblaze B2
pip install "buckia[bunny,s3,linode,b2]" # All providers# Sync local directory to cloud bucket
buckia sync
# Preview changes without executing
buckia sync --dry-run
# Sync a specific named bucket from .buckia config
buckia sync --bucket productionSee Configuration Overview for the .buckia config file format.
- Configuration Overview —
.buckiafile format and options - Basic Configuration — Single-bucket quickstart
- CLI Reference — All commands and options
- Python API Reference — Python library usage
- Sync Features — Upload-only, create-only, state cache
- Development Guide — Setup and contribution workflow
- Architecture — System design and backend structure
- Testing Guide — Running and writing tests
- CI Pipeline — Continuous integration
- Release Process — Publishing to PyPI
- Secrets Management — Secure credential handling
- Swift / iOS / macOS — Native Apple platform integration
Released under the AGPL v3 license. (c) 2019–2026 Henrik Vendelbo