Liath for Local-First Apps
Liath brings AI memory to local-first and on-device apps. It is embedded and runs entirely in-process against a local data directory, generating embeddings locally (FastEmbed) and indexing vectors locally (USearch), so search and memory work offline with no cloud dependency. Its Rust core is fast and portable, and programmable Lua retrieval runs on-device — keeping memory private by default, which suits offline-first and privacy-sensitive applications.
AI memory that stays on the device
Local-first apps keep data on the user’s device and treat the network as optional. That model breaks the moment you reach for a cloud vector database for AI features. Liath keeps the whole memory layer local: it is embedded, runs in-process against a local data directory, and needs no server.
Everything runs locally
Embeddings are generated on-device with FastEmbed, vectors are indexed locally with USearch, and structured state lives in a local Fjall key-value store. Search and recall work with no network connection, and memory stays private by default — nothing is shipped to a hosted memory service.
Fast and portable
Liath’s Rust core is built for speed and portability, which matters on desktop and edge hardware. And because it ships as a single dependency, it replaces the several separate services a cloud AI stack would otherwise require.
Programmable retrieval, offline
The programmable Lua model works exactly the same locally: your app or agent writes a Lua program to search, filter, and rank memory on-device, with no round-trips. Compare the embedded model with a managed service in Liath vs Pinecone, and see how Liath relates to a general embedded database in Liath vs SQLite.
Frequently Asked Questions
Does Liath work offline?
Yes. Liath is embedded and runs entirely in-process against a local data directory. Embeddings are generated locally with FastEmbed and vectors indexed locally with USearch, so search and memory work with no network connection.
Is Liath a good fit for on-device AI?
Yes. Its Rust core is fast and portable, and the whole engine — key-value store, vector search, embeddings, and Lua runtime — ships as a single dependency, which suits desktop and edge deployments.
Does using Liath keep data private?
Because Liath is embedded and local, memory and embeddings stay on the device by default. Nothing is sent to a hosted memory service, which suits privacy-sensitive and offline-first applications.
How large a footprint does Liath add?
Liath is a single dependency with a Rust core. It is heavier than a bare key-value store because it bundles vector search and embeddings, but it replaces several separate services you would otherwise ship.
Can local-first apps still use programmable retrieval?
Yes. The same sandboxed Lua query model works locally: the app or agent writes a Lua program to search, filter, and rank memory on-device, with no cloud round-trips.