Skip to main content
The CometChatSettings object controls everything the Angular UI Kit Builder renders—messaging, AI helpers, calls, layout, and theming. It also carries two blocks the export does not apply, noCode and agent, which are described at the end.
For developers customizing their chat UI: Edit src/app/config/cometchat-builder-settings.json to enable/disable features like messaging, calls, AI copilot, and theming. See Integration Guide for setup.

How settings are applied

Unlike a runtime config file, the export’s settings are imported at build time, not fetched. A malformed file is a build error rather than an app that quietly ignores your choices.
SettingsService merges your file over the defaults, so a key you omit falls back rather than turning the feature off. FeatureFlags then exposes one signal per feature. To change a feature after export, edit the JSON and rebuild — or re-export from the Builder.

Top-level 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 Chat & Messaging > Settings. Learn more about AI Features.
These three default to false in the export. They need an AI provider configured to do anything, so they stay off until you switch them on deliberately.

1.4 User Management (userManagement)

1.5 Group Management (groupManagement)

Control what users can do with groups.

1.6 Moderation (moderatorControls)

Admin tools for managing group members and content.
To enable content moderation, set moderation (under Core Messaging Experience) and reportMessage to true, 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.
The tab strip hides itself when only one tab is enabled — a navigation control with one destination is not shown. The panel it would have labelled still renders.

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

An empty string means “no override” — the UI Kit’s shipped palette applies. This is why the defaults below are blank rather than hex values: an export only carries the colors you actually changed.
The brand color also regenerates the ten-step tint ramp behind avatars, hover states and highlights, so a single value re-themes those surfaces too.Match brandColor to your website’s primary accent color. Use your site’s existing text colors for primaryTextLight and primaryTextDark to maintain brand consistency.

4.3 Typography

Each family is applied as a stack with fallbacks, so a typeface that is not installed on the viewer’s machine degrades to a close match rather than the browser default.

5. Carried but Not Applied

The export’s settings file includes two more blocks. They keep the file identical to what the Builder produces for other platforms, but nothing in the Angular export reads them, so changing them has no effect.

5.1 No-Code Widget (noCode)

Docked-widget styling (docked, styles.buttonBackGround, styles.dockedAlignment and so on) for the embeddable no-code widget. There is no Angular equivalent of that widget.

5.2 Agent (agent)

These drive the Builder’s own AI-agent view, which lives in the Builder rather than in the exported app.

Settings Overview

Below is the complete settings structure with the export’s default values. Update these in src/app/config/cometchat-builder-settings.json to customize your chat experience.

Next Steps

Directory Structure

Understand the organization of the builder components and generated code.

Customizations

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