Liven Client SDKs: TypeScript, Python, Go, and Rust
LivenDB now has official client SDKs for TypeScript, Python, Go, and Rust — all communicating over the native TCP wire protocol with msgpack.
SDKs Are Here
Today we're releasing official client SDKs for four languages — including a Rust crate for native integration:
| Language | Package |
|---|---|
| Rust | liven |
| TypeScript | @livendb/liven-client |
| Python | liven-client |
| Go | livendb/liven-go |
Same API, Four Languages
All four SDKs mirror the core LivenClient API, so switching languages feels familiar:
// Rustuse liven_client::{LivenClient, Pipeline, Filter};let mut client = LivenClient::connect("localhost").await?;let results = client.run(Pipeline::from("users").filter(Filter::field("role").eq("admin")).limit(10),).await?;
// TypeScriptimport { LivenClient, Pipeline, Filter } from "@livendb/liven-client";const client = await LivenClient.connect("localhost");const results = await client.run(Pipeline.from("users").filter(Filter.field("role").eq("admin")).limit(10));
# Pythonfrom liven_py import LivenClient, Pipeline, Filterclient = LivenClient.connect("localhost")results = client.run(Pipeline.from_stream("users").filter(Filter.field("role").eq("admin")).limit(10))
// Goimport "github.com/livendb/liven-go"client, _ := liven.Connect("localhost")results, _ := client.Run(liven.NewPipeline("users").Filter(liven.FilterField("role").Eq("admin")).Limit(10),)
Wire Protocol
All SDKs communicate over the same native TCP protocol using msgpack frames — no HTTP overhead, no REST wrappers. This means any SDK can talk to any Liven server, and the client libraries are lightweight — no heavy dependencies beyond a msgpack serializer.
Getting Started
# Rustcargo add liven# TypeScriptnpm install @livendb/liven-client# Pythonpip install liven-client# Gogo get github.com/livendb/liven-go
Then connect, insert, query, and subscribe — all over the native wire protocol.
The Rust crate is especially well-suited for low-latency embedded use cases, where LivenDB itself runs in-process alongside your application.