Setup & Quick Start
The Rust SDK covers SQL, live rows, auth, optional file uploads, and optional topic consumers behind Cargo features. The published kalam-client crate is currently 0.5.6-rc.0, so it does not match a 0.8 server. Use the matching 0.8 source checkout for experiments until a 0.8 crate is published.
Install
Clone the v0.8.0 source and use the path dependency under Develop from source. Add tokio with the macros and rt-multi-thread features.
MSRV: Rust 1.92+
You need a running KalamDB server. Quick Docker start:
Verify: curl http://127.0.0.1:2900/health
Create a client
KalamLinkClient::builder() requires base_url. Prefer AuthProvider::basic_auth(...) or AuthProvider::jwt_token(...) for normal apps.
For local tooling against a root password:
system_user_auth logs in as the root system user.
If auth is disabled locally, you can omit .auth(...) and use AuthProvider::none().
By default, ConnectionOptions::ws_lazy_connect is true, so the WebSocket opens on the first live subscription rather than at build time.
First query
QueryResponse can contain multiple QueryResult values when you send multiple statements. rows_as_maps() reads the first result set.
Rows are HashMap<String, KalamCellValue>. Use typed accessors such as as_text() instead of assuming raw JSON shapes.
First live stream
Call connect() before subscriptions. Prefer live() when you want materialized rows.
Live SQL must be SELECT ... FROM ... WHERE ... only.
Cleanup
Runnable examples
From the KalamDB repository:
Runnable walkthroughs: Examples — Quickstart, Live Inbox, Topic Consumer.