Documentation

SDKs

Choose the JavaScript and TypeScript, Python, Go or Java 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/client for realtime connections in browsers, Node.js, Bun, and Deno.
  • Server SDK: use @useceleris/server to 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 that your application decides. Keep the server package and the signing secrets out of browser and mobile bundles.

Python

Install the Python packages from PyPI:

pip install useceleris-client
pip install useceleris-server
  • Client SDK: use useceleris-client for realtime connections from asyncio services, workers, tools and desktop applications.
  • Server SDK: use useceleris-server to sign credentials on a trusted server. Install it only where the signing secret can live.

Follow the Python learning sequence. A Python backend can also serve credentials to the JavaScript client in a browser.

Go

Add the Go modules with go get:

go get github.com/useceleris/sdk-go-client
go get github.com/useceleris/sdk-go-server
  • Client SDK: use github.com/useceleris/sdk-go-client for realtime connections from Go services, workers, tools and desktop applications.
  • Server SDK: use github.com/useceleris/sdk-go-server to sign credentials on a trusted server. Add it only where the signing secret can live.

Follow the Go learning sequence. A Go backend can also serve credentials to the JavaScript client in a browser.

Java

Add the Java artifacts with Gradle, or with Maven as the overview shows:

implementation("com.useceleris:celeris-client:1.0.0")
implementation("com.useceleris:celeris-server:1.0.0")
  • Client SDK: use com.useceleris:celeris-client for realtime connections from Java services, workers, tools and desktop applications.
  • Server SDK: use com.useceleris:celeris-server to sign credentials on a trusted server. Add it only where the signing secret can live.

Follow the Java learning sequence. A Java backend can also serve credentials to the JavaScript client in a browser.

Other languages

Rust and Dart SDKs are not implemented yet. There are no supported package APIs for those languages to build against.

Do not treat an SDK's API reference as a wire-protocol specification.

What the client does

The client does these tasks:

  • 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.

We use Google cookies for analytics and for advertising measurement, only if you allow them. Until you choose, Google sets no cookies. Refer to our Cookie Policy.