# Radist documentation

> Radist handles WebRTC signaling, media forwarding, and auth so you can ship real-time audio, video, and data features without running the infrastructure.

Radist has two halves. A **server SDK** runs in your trusted backend, authenticates with a secret key, and creates calls or rooms. A **client SDK** runs in the browser, authenticates with a public key plus a single-use participant token your backend issued, and manages the WebRTC session.

## Product surface

| Concept          | What it is                                                                             | Participants |
| ---------------- | -------------------------------------------------------------------------------------- | ------------ |
| P2P call         | A direct browser-to-browser WebRTC session. Media never touches a Radist server.       | Exactly 2    |
| SFU room         | Media is forwarded by a mediasoup worker, with end-to-end encryption on by default.    | Many         |
| Persistent space | A reusable link (public, password, or knock admission) that admits people into a room. | Many         |
| Easy interface   | A hosted, prebuilt call UI you reach by URL — no client code.                          | 2 or many    |

## Where to go next

- Quickstart — build a working two-player call: /docs/quickstart.md
- Keys, auth, and encryption: /docs/configuration.md
- Browser SDK reference: /docs/client/js.md
- Backend SDK reference (JavaScript): /docs/server/js.md
