TheLoopChat
TheLoopChat is chat as a service: a hosted realtime chat API plus client SDKs for JavaScript, React, React Native, and Flutter. One wire protocol is shared by every SDK.
This documentation covers every TheLoopChat package and provides a comprehensive API reference for the server's REST endpoints, the WebSocket event protocol, and each SDK's public surface. All pages are generated from (and verified against) the actual source code.
The packages
TheLoopChat is split into independent repos (one per service), checked out side by side into one workspace directory:
| Package | Page | What it is | Stack |
|---|---|---|---|
protocol/ |
Protocol | Wire protocol: event shapes, REST payloads, error codes — the source of truth for all SDKs | TypeScript |
js-sdk/ → @loopchat/core |
JS SDK — Core | Framework-agnostic TS client: WS + reconnect/replay, channels, reactive stores | TypeScript (browser, Node ≥ 22, RN) |
js-sdk/ → @loopchat/react |
JS SDK — React | Hooks + headless-first components + a styled default chat UI | React 18/19 |
js-sdk/ → @loopchat/react-native |
JS SDK — React Native | Core + react hooks, RN-native UI, FCM push helpers | React Native ≥ 0.73 |
js-sdk/ → @loopchat/node |
JS SDK — Node | Customer-backend SDK: token minting, user/channel admin | Node ≥ 22.12 |
flutter-sdk/ |
Flutter SDK | loopchat_flutter — Dart client + chat widgets |
Flutter ≥ 3.22 |
API reference
| Page | Covers |
|---|---|
| API Reference | Authentication model, conventions, error codes — start here |
| API — Chat REST | The v1 chat API: users, channels, messages, devices, unread |
| API — WebSocket | /connect gateway, event types, keepalive, reconnect replay |
| API — Push and Webhooks | FCM push payloads, webhook envelopes, HMAC signatures, retries |
Guides
- Getting Started — create an account, install an SDK, and send your first message in a few minutes.