git-vdb
A local vector database stored entirely in Git.
git-vdb is an embedded Rust library and CLI: no server, daemon, account, or
external database. Open a directory, index documents or vectors, and search.
Install
Prebuilt macOS, Linux, and Windows CLIs are attached to every GitHub release, with SHA-256 checksums. For document indexing and local text search, install the FastEmbed-enabled CLI:
Document quickstart
use ;
Enable it with cargo add git-vdb --features fastembed. The model downloads on
first use and is stored in the platform user cache. Bring any other provider by
implementing the small Embedder trait.
Rust quickstart
use ;
The database and collection are created on the first write. Vector dimensions are inferred, payloads are returned by default, and search automatically chooses exact or approximate execution.
CLI quickstart
Batch upserts accept a JSON Lines file or - for stdin and stream in bounded
batches. Filters may be inline JSON, a JSON file, or stdin. Use
--format json, pretty, or jsonl to control output. Without --db or
GIT_VDB_REPO, the CLI uses a local .git-vdb directory rather than modifying
the surrounding project's Git repository.
Why Git-native?
- Local: one directory and no service to operate.
- Versioned: commits and refs provide optional history and atomic writes.
- Deterministic: equivalent data produces the same root tree.
- Portable: clone, fetch, push, archive, inspect, and maintain it with Git.
The CLI wraps the custom refs for common workflows:
Python
The Python client provides a Chroma-shaped
PersistentClient and collection API over the same JSON CLI and storage engine:
=
=
Guides
- Five-minute quickstart
- Persistence and reopening
- Filtering and detailed queries
- History and Git transport
- Text and embedding models
- Chroma migration map
- Framework integrations
- Rust API reference
Advanced users can work directly with immutable snapshots, historical roots,
compare-and-swap writes, validation, and ANN controls through Database,
Collection, and SnapshotEngine.
Internals and benchmarks
- Canonical format version 2
- Legacy format version 1
- Snapshot design
- Current limitations and findings
- LanceDB performance evidence
See CONTRIBUTING.md for development and validation. Licensed under the Apache License 2.0.