VecLite
VecLite is an embedded vector database. It runs in-process and stores data in a single file.
It provides exact and approximate nearest neighbor search, metadata filtering, and a vector-native SQL dialect. It is designed for applications that require vector search without operating a separate database server.
Features
- Embedded architecture (no server required)
- Single-file storage
- SIMD-accelerated vector metrics (Cosine, L2, Dot Product, Manhattan)
- HNSW indexing
- SQL query layer
- Hybrid search (vector similarity combined with metadata filters)
- Cross-language support via C ABI
Language Bindings
VecLite is written in Rust. It provides native bindings for multiple languages.
Rust
The core database.
- Status: Stable
- Install:
cargo add veclite-db
Python
Native Python module using PyO3. Releases the Global Interpreter Lock (GIL) during search operations.
- Status: Stable
- Install:
pip install veclite-db
Go
CGO wrapper over the C ABI.
- Status: Stable
- Install:
go get github.com/rithulkamesh/veclite/bindings/go@v1.0.9
C / C++
Standard C header and C++ RAII wrapper.
- Status: Stable
- Install: Copy
bindings/c/veclite.horbindings/cpp/veclite.hpp.
Zig
Zig wrapper over the C ABI.
- Status: Experimental
- Install: Import
bindings/zig/veclite.zig.
Example
use veclite_db::VecLite;
let mut db = VecLite::open("memory.vec").unwrap();
db.insert("doc_1", vec![0.1, 0.2, 0.3], None).unwrap();
let results = db.search(vec![0.1, 0.2, 0.3]).top_k(5).execute().unwrap();
SQL Example
VecLite supports a custom SQL dialect for vector operations.
CREATE TABLE memory;
INSERT INTO memory VALUES ('doc_1', '[0.1, 0.2, 0.3]', '{"tag":"note"}');
SELECT * FROM memory WHERE metadata.tag = 'note' ORDER BY vector <-> '[0.1, 0.2, 0.3]' LIMIT 5;
Installation
Use the package manager for your target language. For the CLI and HTTP server:
cargo install veclite-cli
Status
VecLite is under active development.
Roadmap
- SQL execution engine completion
- Compaction and retention policies
- Node.js bindings
License
MIT
Star History
Metadata
Release files for veclite-db 1.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| veclite_db-1.1.1-cp38-abi3-win_amd64.whl | CPython 3.8 | abi3 | Windows x86-64 | Details |
| veclite_db-1.1.1-cp38-abi3-manylinux_2_34_x86_64.whl | CPython 3.8 | abi3 | Linux glibc 2.34+ x86-64 | Details |
| veclite_db-1.1.1-cp38-abi3-macosx_11_0_arm64.whl | CPython 3.8 | abi3 | macOS 11.0+ ARM64 | Details |
Total release size: 2.2 MB
Release files / veclite_db-1.1.1-cp38-abi3-win_amd64.whl
| Download URL | veclite_db-1.1.1-cp38-abi3-win_amd64.whl |
|---|---|
| Size | 612.9 kB |
| Tags | CPython 3.8 Windows x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
8d572d378a076e29b6865469521c4b628555b10d4b24569ffd0768f0d83164c3
|
|
BLAKE2b-256 checksum How to use checksums |
8f80c881e46ea5cb52d4926a1ecdb7ad4d10460e2b8a85ab2362883a6939d9d0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 12, 2026.
Transparency logRelease files / veclite_db-1.1.1-cp38-abi3-manylinux_2_34_x86_64.whl
| Download URL | veclite_db-1.1.1-cp38-abi3-manylinux_2_34_x86_64.whl |
|---|---|
| Size | 891.7 kB |
| Tags | CPython 3.8 Linux glibc 2.34+ x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
5f3671d1a21c3eeb82d7294805a002aebac5033d33fb5326f1d1e0965a6af5bc
|
|
BLAKE2b-256 checksum How to use checksums |
b09e276d5b02b95e7caa6d96245a22b320cd7a09ce170503155a8a5d181347b1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 12, 2026.
Transparency logRelease files / veclite_db-1.1.1-cp38-abi3-macosx_11_0_arm64.whl
| Download URL | veclite_db-1.1.1-cp38-abi3-macosx_11_0_arm64.whl |
|---|---|
| Size | 729.1 kB |
| Tags | CPython 3.8 abi3 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
e21b8d9b26fe158e03982872470cc703c12fe769c35b190d58690ae7abd00298
|
|
BLAKE2b-256 checksum How to use checksums |
52ec34f15c1da4611cbc937a9eba45b0fa1295a8c74b407d1cd294090f370457
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 12, 2026.
Transparency log