vost Documentation¶
vost is a versioned key-value filesystem backed by bare Git repositories. Every write produces a new commit, writes of multiple files can be batched, and old snapshots remain accessible forever. The API is refreshingly simple, looking more like a filesystem interface than git. The Python CLI provides Unix-like utility with syntax borrowed from familiar programs like ls, cat, cp, and rsync. Under the hood, though, vost uses bare git repositories fully compatible with other git toolchains.
Quick install¶
pip install vost # core library
pip install "vost[cli]" # adds the vost command-line tool
Requires Python 3.10+ and dulwich.
Hello world (Python)¶
from vost import GitStore
repo = GitStore.open("data.git")
fs = repo.branches["main"]
fs = fs.write_text("hello.txt", "Hello, world!")
print(fs.read_text("hello.txt")) # 'Hello, world!'
Hello world (CLI)¶
export VOST_REPO=data.git
vost init # optional — write operations auto-create the repo
echo "Hello, world!" | vost write hello.txt
vost cat hello.txt # Hello, world!
vost ls # hello.txt
vost cp local-dir/ :backup # copy a directory into the repo
vost log # commit history
Reference docs¶
- Python API Reference -- classes, methods, and data types
- CLI Reference -- the
vostcommand-line tool - CLI Tutorial -- learn the CLI step by step
- Path Syntax -- how
ref:pathworks across commands - fsspec Integration -- use vost with pandas, xarray, dask
More¶
- GitHub Repository -- source code, issues, and releases
- README -- core concepts, concurrency safety, error handling, and development setup
- PyPI --
pip install vost