SDKs
Choose the JavaScript and TypeScript or Python SDK, and learn the status of other language SDKs.
JavaScript and TypeScript
Install the JavaScript and TypeScript packages from npm:
npm install @useceleris/client
npm install @useceleris/server
- Client SDK: use
@useceleris/clientfor realtime connections in browsers, Node.js, Bun, and Deno. - Server SDK: use
@useceleris/serverto sign credentials in a trusted backend. Install it only in projects that contain server code.
Start with the Quickstart, then follow the JavaScript learning sequence.
The client connects and exchanges bytes; it cannot sign credentials. The server package signs the permissions your application decides. Keep the server package and signing secrets out of browser and mobile bundles.
Python
Install the Python packages from PyPI:
pip install --pre useceleris-client
pip install --pre useceleris-server
- Client SDK: use
useceleris-clientfor realtime connections from asyncio services, workers, tools and desktop applications. - Server SDK: use
useceleris-serverto sign credentials on a trusted server. Install it only where the signing secret may live.
Follow the Python learning sequence. A Python backend can also serve credentials to the JavaScript client in a browser.
Other languages
Go, Java, Rust, and Dart SDKs are not implemented yet. There are no supported package APIs for those languages to build against.
See the Go status page. Do not treat an SDK's API reference as a wire-protocol specification.
What the client handles
- Requests fresh credentials for each connection attempt.
- Maintains subscriptions and restores them during automatic recovery.
- Exchanges opaque bytes with text/JSON helpers and a custom-codec adapter.
- Reports errors, connection state, and presence.
- Filters recently delivered duplicate message IDs within a bounded window.
Read Reconnection and Recovery for what happens after a disconnect and what your application must still reconcile.