Skip to Content
IntroductionWhat is KalamDB?

Build with KalamDB

KalamDB is a self-hosted backend in one Rust binary. Use familiar PostgreSQL SQL and client tools, then add live queries, per-user data isolation, JavaScript/TypeScript server functions, and durable topics without assembling separate services.

KalamDB has its own SQL engine. PostgreSQL wire compatibility does not mean it is a drop-in replacement for every PostgreSQL feature or extension. Check compatibility first.

Your first working result on 0.8

Recommended: start the released server with Docker, then use the built-in SQL Studio. The guided tutorial creates a private table and shows a live query changing when you update a row.

Run your first live query →

Or start the server now:

BASH
docker run -d --name kalamdb -p 2900:2900 \  -e KALAMDB_SERVER_HOST=0.0.0.0 \  -e KALAMDB_JWT_SECRET="$(openssl rand -base64 32)" \  -e KALAMDB_ALLOW_REMOTE_SETUP=true \  -v kalamdb_data:/data kalamdb/kalamdb:0.8.0

The tutorial shows the initial local-only authentication setup. Do not expose demo credentials or the setup endpoint on an untrusted network.

Using the CLI? The released 0.8.0 TypeScript scaffold templates still specify older 0.7-beta SDK dependencies. Treat generated app templates as requiring compatibility fixes before running them against a 0.8 server. See CLI starter status and TypeScript SDK installation.

Why build with KalamDB?

You need to…KalamDB featureLearn
Store each user’s private state without repeating filtersUSER tables and authenticated scopesTable types
Show updates as data changesSQL subscriptions and materialized live rowsLive queries
Run backend logic next to the dataJavaScript/TypeScript functions and SQL proceduresServer functions
Process background work reliablyTopics, consumers, acknowledgements and retriesTopics
Use familiar database toolsPostgreSQL wire listener and supported SQL syntaxConnect with PostgreSQL
Grow storage and availabilityRocksDB, Parquet and Raft replicationStorage tiers

I want to…

Know the boundaries before adopting

KalamDB 0.8 does not support every PostgreSQL operation: for example, wire COPY is unavailable, some declared constraints are not enforced, and transactions across Raft groups are not atomic. Live subscriptions support a smaller SQL query shape than ordinary SQL.

Start with the 0.8 feature and compatibility guide, transaction limits, and live-query SQL limits.

Next: Run your first live query → · See how the pieces fit together →