RealTimeX
Sign inStart for free
RealTimeXMobile Package
Introduction5-minute overviewFeaturesHow the package worksGlossary
Requirements & dependenciesBackend credentialsInstallation step by stepTutorial — your first chat appProject config fileApp entry — index.jsQuick start — minimum working chatComplete ChatScreen example
Native configuration (iOS & Android)Firebase, APNs & backend setup
Navigation — embedding the chatSession, auth & Socket.IOPermissions & access controlAudio & video callingPush notificationsMentions viewRich-text messages (WebView editor)Total unread count
Customization — four waysDefault component fallback (important)Which slots are wiredCustomization examples (Case 1–4)UI feature flags & copy (ui)Chat info (group + DM)Style overrides (ui.styles)Render props (ChatProvider)Theme, fonts & appearance
ChatProvider props referenceconfigureChat options referenceHooks & storeCallbacks referenceAPI query paramsAll exports
Production integration pattern (Fieldr)Host app integration — providers, toasts, tab bars & navigationEnvironment variablesLocal package / monorepo (Metro)
TroubleshootingSetup checklistArchitectureDocumentation & file mapPackage development (maintainers)License
Mobile packageAPI Reference

configureChat options reference

OptionTypePurpose
apiUrlstringChat REST base (…/api/v1)
socketUrlstringSocket.IO origin (/api/vN stripped). Defaults to apiUrl's origin
clientIdstringTenant / client id
accessTokenstring | () => string | undefinedHost user token (static or getter)
callUristring | () => string | undefinedCalls / notifications REST base (…/api/v2)
fontsPartial<ChatFonts>Host-registered font family names
themeChatThemeConfigcolorMode, accent, colors.light/dark, avatarShape, messageStyle
uiChatUiConfigFlags, copy, chat info, styles, component slots
showSearch / showVideoCall / showVoiceCallbooleanShorthands for ui.chatRoom.header.*
queryParamsRecord<string, string | number | boolean>Extra query params on package HTTP calls
queryParamApisChatApiKey[]Which APIs receive queryParams (default ['get'])
queryParamsByApiPartial<Record<ChatApiKey, ChatQueryParams>>Per-API params
onSessionEnd(event: ChatSessionEndEvent) => voidThe server ended the session — see Server-ended sessions

configureChat can be called more than once — sections merge into the previous call.

Helpers: getUiConfig() (fully resolved), getUiConfigPartial() (raw host overrides), resolveChatUiConfig(partial), mergeChatUiStyles, mergeChatInfoPartial, DEFAULT_CHAT_UI, DEFAULT_CHAT_FONTS, getFonts(), getThemeConfig(), getCallUri(), getAccentHex(), getCustomAccent(), resolveAccentOption(), applyColorOverrides(), getConfiguredAppearanceDefaults(), applyEnvChatConfigFallback(), isChatConfigured().

PreviousChatProvider props referenceNextHooks & store