Introduction
Understand Loams, choose an API, and run your first hybrid query.
Loams is an open-source data platform built in Rust. It combines hybrid retrieval on object storage, reactive transactions on an embedded store or TiKV, and durable execution, with native APIs, 13 language SDKs and an extensible agent platform. Your documents, vectors, text indexes, and log live in your bucket in open formats; compute nodes hold rebuildable caches.
Early software
Loams 0.1.0 is the first release: container images you run yourself, not production ready. Run Loams 0.1.0 or build from source, expect breaking changes, and check the feature status for the ref you deploy. An implemented API is not a production-readiness guarantee.
Choose your starting point
Run your first query
Build Loams, create a collection, and combine vector and keyword retrieval.
Explore the APIs
Native REST, Qdrant, Elasticsearch, Flight SQL, and the Connect surface.
Understand the data model
Namespaces, streams, collections, and declarative links.
Learn how Loams works
Concepts, architecture, every product, and the decisions behind them.
Build an app
Install, run locally, create a collection, then call it from your language's SDK.
Self-host over Tailscale
The whole stack on your laptop or VM, reachable only over your tailnet.
The platform
| Component | Purpose | Implementation status |
|---|---|---|
| Retrieval engine | Vector search, BM25, filters, and fusion over Lance and Tantivy | Implemented; native REST, Connect, Flight SQL, Qdrant, and an Elasticsearch subset |
| Loams Live | Transactions and reactive document queries on an embedded store or TiKV | Implemented in the default build; cross-node pickup can take up to 60 s and tenancy is next |
| Loams Durable | Embedded Resonate for durable promises, tasks, and schedules | Implemented with SQLite (durable feature); the TiKV store is in progress |
| Graph and House | Embedded GQL and ClickHouse-compatible analytics | Graph available behind the graph feature; House (experimental) runs in loams-fabric and is reached by the engine over TLS with LOAMS_HOUSE_ENDPOINT |
| SQL and Postgres | Loams SQL on a patched TiDB, Postgres and MySQL wire reads, and Loams Postgres on Neon | Implemented components; Postgres computes are not yet provisioned through its control plane |
| Functions, Jobs, connectors and Iceberg | Future runtime, workloads, connector execution and retrieval analytics | Planned or in progress; not in Loams 0.1.0 |
The binary is loams, Rust crates use loams-*, and the source is ostrium-labs/loams. Loams 0.1.0 publishes container images on ghcr.io/ostrium-labs tagged 0.1.0, 0.1 and :latest, seven SDKs (TypeScript, Python, Rust, C#, Go, Swift and C++), Linux packages, macOS tarballs, a Windows zip and Loams Desktop installers. The platform capabilities inventory covers the full repository, including separate workspaces that the retrieval-engine README does not enumerate.
How data moves
- Write durably. A write enters the log and returns a consistency token.
- Materialize. A link applies records to a collection. A shared manifest ties a Lance version to Tantivy splits.
- Query. The query planner combines vector retrieval, BM25, and filters, then fuses results. Token-aware reads merge the unindexed tail to see acknowledged writes.
- Accelerate. RAM and NVMe caches keep hot data close to compute. They can be rebuilt from durable storage.
Object storage holds retrieval data, while the embedded Raft metastore or opt-in TiKV holds metadata. Loams Live keeps its transactions in an embedded store or TiKV, and Loams Durable stores execution state separately. See storage and hot tiers and consistency for the boundaries.
Use familiar clients
| Workload | Entry point |
|---|---|
| New applications and hybrid queries | Native REST on port 8080 |
| Existing vector-search integrations | Qdrant REST and gRPC on ports 6333 and 6334 |
| Keyword and hybrid search | Elasticsearch REST subset on port 9200 |
| SQL and Arrow results | Arrow Flight SQL on port 8082 |
| Typed service discovery and RPC | Connect / gRPC / gRPC-Web on the native port; check operation availability |
| Reactive documents and live queries | Loams Live sync API on port 7710 |
loams dev binds every listener to loopback. With engine authentication off (LOAMS_AUTH_MODE's default), the engine refuses to start on a non-loopback address. Compatibility covers the implemented subset of each protocol. Review the API references before depending on a specific operation. For planned capabilities and implementation tracks, follow the roadmap.
Get help
Ask questions and chat with the community on Discord. Report bugs and request features in GitHub issues, and report security problems privately as described in the security policy.