VecturaKit
A Swift vector database for on-device apps, combining local vector storage and hybrid search with pluggable embedding providers, including Apple's MLX and NaturalLanguage frameworks.
VecturaKit is a vector database for on-device Swift applications, providing local vector storage, indexing, and hybrid search that combines vector similarity with BM25 text search. Embedding providers are pluggable: OpenAICompatibleEmbedder works with hosted or local embeddings endpoints, NLContextualEmbedder uses Apple's NaturalLanguage framework with no external dependency, SwiftEmbedder uses swift-embeddings models, and MLXEmbedder uses Apple's MLX framework for hardware acceleration.
It automatically detects embedding dimensions from the configured embedder, indexes documents in parallel batches, and persists database state across app sessions, with custom storage locations and pluggable search engines available for further customization. Two command-line tools are included: one for NaturalLanguage-backed local workflows and one for trying OpenAI-compatible embedding providers.
It is written in Swift and released under the MIT license.