Frequently asked questions

Open-source realtime messaging: the broker, the SDKs, and running it yourself.

What is NoLag?

NoLag is open-source realtime messaging. Its broker, kraken, gives you pub/sub over WebSocket with presence, rooms, lobbies, filters and multi-tenant access scopes, plus per-message QoS when it runs in front of an MQTT broker. On top sit client SDKs for JavaScript, Python and Go, and Blueprint SDKs for chat, notifications, dashboards, tracking and more.

Is there a hosted version?

No. NoLag Cloud, the hosted service, was retired in October 2026. You run the broker yourself. kraken is a single container, and the self-hosting guide covers the ways to run it.

What licence is NoLag under?

kraken and the optional @nolag/core authorization library are licensed under Apache 2.0. The client SDKs and Blueprint SDKs are licensed under MIT. There is no licence key and nothing to pay for; your only cost is the infrastructure you run it on.

Which languages have NoLag SDKs?

NoLag has SDKs for JavaScript and TypeScript (including React Native), Python, and Go, plus Blueprint SDKs for common patterns like chat, notifications, and dashboards.

Do I need a database to run NoLag?

Not for the broker. By default kraken reads access tokens from an auth.json file and fans messages out in-process, so a single node needs nothing else. You add Postgres only if you run the full stack with @nolag/core, which stores projects, apps, rooms and tokens.

How do I create an app and an access token?

It depends on how you run NoLag. With kraken on its own, you define each access token, its actor and the topics it may use in kraken's auth.json file. With the full stack, you describe the project, its apps, rooms and actors in a @nolag/core project document and import it; core returns each actor's access token once. Either way, clients connect with that token and the URL of your broker.

How is NoLag different from Pusher, Ably, or PubNub?

Those are hosted realtime platforms that you pay to use. NoLag is open-source software that you run yourself, so your messages stay on your own infrastructure. It also ships ready-made Blueprint SDKs for common app patterns on top of the raw pub/sub client.

Does kraken handle TLS?

No. kraken listens on plain WebSocket (port 8080 by default). In production, put it behind a reverse proxy or load balancer that terminates TLS, and have clients connect with wss://.

How do I get started with NoLag?

Clone kraken and run docker compose up. That starts the broker on ws://localhost:8080/ws with two demo tokens. Then install an SDK, connect with one of those tokens, subscribe to a topic, and publish a message. The quick start walks through it in about five minutes.