SDK Overview
imcore ships 4 official typed client SDKs over the same WebSocket protocol, so you can integrate without hand-rolling the wire protocol.
| Platform | Package | Install | Docs |
|---|---|---|---|
| JavaScript / TypeScript | @imcore/sdk | npm install @imcore/sdk | JS/TS |
| Dart / Flutter | imcore_sdk | pubspec dependency (path/git) | Dart |
| Swift / iOS | ImcoreSDK | Swift Package Manager | Swift |
| Kotlin / Android | imcore-sdk | implementation(project(":imcore-sdk")) | Kotlin |
Which to pick
- Web / React Native / Node: the JS/TS SDK (native WebSocket in the browser; pass
wson Node/RN). - Flutter / Dart: the Dart SDK (iOS, Android, desktop, web).
- Native iOS / macOS: the Swift SDK (built on
URLSessionWebSocketTask, zero dependencies). - Android / JVM: the Kotlin SDK (coroutines + Flow, OkHttp by default).
All four share the same shape: a login-ack-gated connect(), typed im.dm/group/room send/receive/history, and a request()/send() escape hatch for commands not yet wrapped.
Maturity
This is v1: transport core + seq-correlated request/response + typed DM/group/room send/receive/history (the typed SDKs also cover community). Integration tests are env-gated and not yet validated against a live production server — validate against your own deployment before relying on it. Not included: local cache/offline reconcile, media upload helpers, E2EE, offline push registration (see each platform page’s “Scope”).
For platforms without an SDK, or to work the protocol directly, see the Client Integration Guide (raw WebSocket protocol).