Skip to main content
The CometChatBuilderSettings object controls everything the Android UI Kit Builder renders—messaging, AI helpers, calls, layout, theming, and more. This object is auto-generated by the UI Kit Builder Settings Gradle plugin from your cometchat-builder-settings.json configuration file.
For developers customizing their chat UI: The CometChatBuilderSettings.kt file is generated automatically when you build your project. Edit the cometchat-builder-settings.json file to enable/disable features like messaging, calls, AI copilot, and theming. See the Integration Guide for setup.

Top-level Structure

The generated CometChatBuilderSettings object in Kotlin follows this structure:

All boolean settings follow the same pattern: true enables the feature and shows its UI elements, false hides them completely.

1. Chat Features (chatFeatures)

1.1 Core Messaging Experience (coreMessagingExperience)

Essential messaging features: typing indicators, media sharing, message actions, and presence.
Empower users with a seamless chat experience—reply to specific messages with quoted replies, mark conversations as unread for later, and search across all chats instantly. Learn more about Core Features.

1.2 Deeper User Engagement (deeperUserEngagement)

Interactive features: mentions, reactions, polls, voice notes, and collaborative tools.
Configure these features based on your app’s requirements. Learn more about Extensions.

1.3 AI User Copilot (aiUserCopilot)

AI-powered features to help users start and navigate conversations.
AI User Copilot features require an OpenAI API key. Configure it in the CometChat Dashboard under AI > Settings. Learn more about AI Features.

1.4 User Management (userManagement)

1.5 Group Management (groupManagement)

Control what users can do with groups.

1.6 Moderator Controls (moderatorControls)

Admin tools for managing group members and content.
To enable content moderation, set moderation to true in Core Messaging Experience and reportMessage to true in Moderator Controls, then configure your moderation rules in the CometChat Dashboard. See Rules Management for setup details.

1.7 Private Messaging Within Groups (privateMessagingWithinGroups)

Allow direct messages between group members.

1.8 In-App Sounds (inAppSounds)

Control sound notifications for incoming and outgoing messages.
These toggles control the default message sounds. To use custom audio files or manage sound playback programmatically, see the Sound Manager.

2. Call Features (callFeatures)

2.1 Voice and Video Calling (voiceAndVideoCalling)

Enable voice and video calling capabilities.
Learn more about Call Features.

3. Layout (layout)

Control the overall UI structure and navigation.
Set withSideBar: false for embedded chat widgets or single-conversation views where navigation isn’t needed.

4. Style (style)

Customize colors, fonts, and theme appearance.

4.1 Theme

Use theme: "system" to automatically match the user’s device preference. Preview your brandColor in both light and dark modes for contrast.Learn more about UI Kit Theming for additional customizations.

4.2 Colors

Match brandColor to your app’s primary accent color. Use your app’s existing text colors for primaryTextLight and primaryTextDark to maintain brand consistency.

4.3 Typography


Settings Overview

Below is the complete settings structure with default values. Update these in your cometchat-builder-settings.json file to customize your chat experience.

Dashboard Feature Requirements

Some features require additional configuration in the CometChat Dashboard before they can be used:
AI Copilot Features (Conversation Starter, Conversation Summary, Smart Reply)
  • Requires an OpenAI API key configured in the Dashboard under AI > Settings
  • Enable the specific AI features you want to use
Stickers
  • Requires sticker packs to be configured in the Dashboard under Chat & Messaging > Stickers
  • Upload or select sticker packs for your users
Polls
  • Requires the Polls extension to be enabled in the Dashboard under Extensions > Polls
Collaborative Whiteboard & Document
  • Requires the respective extensions to be enabled in the Dashboard under Extensions
Message Translation
  • Requires the Message Translation extension to be enabled in the Dashboard under Extensions > Message Translation
  • Configure your preferred translation provider
Moderation
  • Requires moderation rules to be configured in the Dashboard under Moderation > Rules
  • Set up content filtering and blocking rules

Next Steps

Directory Structure

Understand the organization of the builder components and generated code.

Customizations

Modify component props, styling, and behavior for deeper customization.