config.json file handles basic feature toggles. For deeper customizations, modify the Zustand store, theme configuration, or component props directly.
Understanding the Customization Architecture
The React Native UI Kit Builder uses these main files for customization:| File | Purpose | When to Modify |
|---|---|---|
config.json | Feature flags and configuration constants | Functional changes (enable/disable features) |
store.ts | Zustand store for state management | Runtime configuration updates |
| Theme object | Colors, typography, and styling | UI/visual changes |
The
config.json file is the source of truth for your Builder configuration. You can update it manually or by scanning a QR code with new settings.Using the Configuration Store
The Zustand store manages your Builder configuration at runtime. Access it anywhere in your app to read or update settings.Reading Configuration
Updating Configuration at Runtime
Runtime changes to the store are not persisted by default. Use AsyncStorage to save and restore configurations.
Theme Customization
Applying Builder Theme to UI Kit
The Builder configuration includes style settings that should be applied to the CometChat UI Kit theme:Custom Color Palette
Override the default colors by modifying the theme object:Custom Font Integration
Step 1: Add Font Files
Add your custom font files to the appropriate platform directories:- iOS:
ios/<App>/Resources/Fonts/ - Android:
android/app/src/main/assets/fonts/
Step 2: Link Fonts (React Native CLI)
For React Native CLI projects, create or updatereact-native.config.js: