Skip to main content
The CometChatBuilderSettings object handles feature toggles and styling configuration. For deeper customizations, you can access settings directly and apply them to CometChat UI components.

Understanding the Customization Architecture

The iOS UI Kit Builder uses the following for customization:
CometChatBuilderSettings is loaded from your cometchat-builder-settings.json file at app launch using CometChatBuilderSettings.loadFromJSON().

Applying Theme Settings

Apply your Builder configuration to CometChat theme at app launch:

Accessing Feature Flags

You can access feature flags directly from CometChatBuilderSettings.shared:

Chat Features

Call Features

Layout Settings

Style Settings


Conditional Feature Implementation

Use feature flags to conditionally show/hide UI elements:

Customizing Colors Programmatically

You can customize colors beyond the JSON configuration:

Customizing Typography

Customize fonts and text styling:
This is the same CometChatTypography.customFontFamilyName property the JSON loader sets from style.typography.font. For the full typography and font-scaling API, see Theming.

Component-Level Customizations

Message List Configuration

Map Builder feature flags onto the message list’s visibility properties. Reactions and in-thread replies are controlled by hideReactionOption and hideReplyInThreadOption:

Message Composer Configuration

These properties are part of the standard iOS UI Kit. For the full list of configurable options on each component, see Message List and Message Composer.

Modifying the JSON Configuration

To change feature settings, edit your cometchat-builder-settings.json file:
Changes to the JSON file require rebuilding the app to take effect.

Parallel Customization Layers

The Builder settings sit on top of the standard CometChat iOS UI Kit, so every UI Kit customization layer is still available to you. Reach for these when the JSON style block and feature toggles aren’t enough:

Theme

Global colors, typography, and dark mode via CometChatTheme and CometChatTypography.

Component Styling

Style individual components (header, list, composer) with style classes, globally or per instance.

Message Template

Define custom message bubbles with your own content, header, and reply views.

Components Overview

Every prebuilt component and its configuration object.

Next Steps

UI Kit Builder Settings

Understand all available feature toggles and configuration options.

Components Overview

Explore all available UI components and their customization options.

Theming

Deep dive into colors, typography, and advanced styling.

Directory Structure

Understand how the exported code is organized.