AI Integration Quick Reference
AI Integration Quick Reference
Architecture
The UI Kit is a set of independent components that compose into chat layouts. A typical two-panel layout uses four core components:- CometChatConversations — sidebar listing recent conversations (users and groups)
- CometChatMessageHeader — toolbar showing avatar, name, online status, and typing indicator
- CometChatMessageList — scrollable message feed with reactions, receipts, and threads
- CometChatMessageComposer — rich text input with attachments, mentions, and voice notes
CometChat.User or CometChat.Group object. That object is passed as a prop (user or group) to CometChatMessageHeader, CometChatMessageList, and CometChatMessageComposer. The message components use the SDK internally — CometChatMessageComposer sends messages, CometChatMessageList receives them via real-time listeners.
Components communicate through a publish/subscribe event bus (CometChatMessageEvents, CometChatConversationEvents, CometChatGroupEvents, etc.). A component emits events that other components or application code can subscribe to without direct references. See Events for the full list.
Each component accepts callback props (on<Event>), view slot props (<slot>View) for replacing UI sections, RequestBuilder props for data filtering, and CSS variable overrides on .cometchat-<component> classes.
Component Catalog
All components are imported from@cometchat/chat-uikit-react.
Conversations and Lists
Messages
Calling
Search and AI
Component API Pattern
All components share a consistent API surface.Actions
Actions control component behavior. They split into two categories: Predefined Actions are built into the component and execute automatically on user interaction (e.g., clicking send dispatches the message). No configuration needed. User-Defined Actions are callback props that fire on specific events. Override them to customize behavior:Events
Events enable decoupled communication between components. A component emits events that other parts of the application can subscribe to without direct references.Filters
List-based components acceptRequestBuilder props to control which data loads:
Custom View Slots
Components expose named view slots to replace sections of the default UI:CSS Overrides
Every component has a root CSS class (.cometchat-<component>) for style customization:
Next Steps
Core Features
Chat features included out of the box
Theming
Customize colors, fonts, and styles
Extensions
Add-on features like polls, stickers, and translation
Guides
Task-oriented tutorials for common patterns