Skip to main content

Compatibility

The SDK supports the full surface below: every target can open a chat, and none of them crash. The hardware key needs a dev build (Expo Go can’t load native modules); the SDK transparently falls back to a software ECDSA P-256 key, so you can evaluate the whole flow in Expo Go and ship hardware-backed with no code change.

Core install

Import react-native-get-random-values once, at the very top of index.js, before any other import. The crypto layer depends on it being registered first.

Peer dependencies

Install only what your stack and features need:

Expo

Add the config plugin, then make a dev build (or run in Expo Go for the software tier):
The config plugin wires the native module and adds the iOS photo/camera/mic usage strings needed for attachments.

Bare React Native

Autolinking handles the native module. Run the Expo modules installer once (the device-key module is authored with the Expo Modules API), then install pods:

Push (separate package)

Push lives in @clariodesk/react-native-push so Firebase never autolinks into a headless host. See the push guide.

Next: lifecycle

Wire login, launch, logout, and user-switch.