Practical overview
When it fits
Use Zebra when an application needs an embedded, mutable vector index for approximate retrieval and wants on-disk storage rather than a memory-mapped index.
Who it is for
- Rust developers embedding vector search in an application.
- Teams building semantic document retrieval or content recommendation systems.
- Developers creating retrieval-augmented generation or multimodal similarity-search pipelines.
Documented uses
- Store vectors in an on-disk index.
- Insert, delete and query vector records.
- Retrieve items with similar meaning or other vector-based similarities.
- Use supplied distance metrics and embedding models, or provide external implementations.
Requirements & limits
The repository documents Rust/Cargo installation as a dependency or CLI. Zebra is licensed under AGPL-3.0.
- The index is stored on disk and does not use memory-mapped file I/O.
- Parallel database operations and multithreaded reads and writes are supported.
- The README describes an LSH-oriented trade-off: it can suit finding items that are close enough, while being less helpful for fine-grained searches.
- Distance metrics and embedding models are provided, with external implementations also supported.
- Optional Cargo features include Nvidia CUDA, Apple silicon Metal, Apple Accelerate, Intel oneMKL and the CLI.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Add Zebra to a Rust project
Add Zebra as an embedded database dependency using the documented Cargo command.
Before you start
- A Rust project
- The Rust toolchain
Steps
From the project, run the command below.
cargo add --git "https://github.com/emmyoh/zebra"Select the Zebra features relevant to the use case.
Expected outcome
Zebra is added as a Git dependency to the Rust project.
Guide limitations
- These instructions cover adding the dependency, not database configuration or query execution.
- The project advises selecting features for the intended use case.
Install Zebra's command-line interface
Install the documented Zebra CLI using Cargo.
Before you start
- The Rust toolchain
Steps
Run the command below.
cargo install --git https://github.com/emmyoh/zebra --features="cli"For Apple silicon, the README gives the command below as an example feature selection.
cargo install --git https://github.com/emmyoh/zebra --features="cli,accelerate,metal"
Expected outcome
The documented CLI installation command is run with the selected features.
Guide limitations
- The README describes the CLI as providing basic terminal usage.
- The Apple silicon command is an example; feature selection depends on the use case.
Compare options for Vector search
These projects document a common task and share a project role. This is a source-based comparison, not an execution benchmark or a guarantee of interchangeability.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 17 October 2026
- Original website title
- emmyoh/zebra · Official homepage title · retained in its source language

