Skip to main content
The CometChat Chat SDK for Flutter enables real-time messaging, user management, group conversations, and more in your Flutter application. Built as a pure Dart implementation in v5, it removes the dependency on platform channels and works seamlessly across Android, iOS, Web, and desktop.
This is a beta release of the CometChat Flutter Chat SDK v5. APIs and features may change before the stable release.
Faster Integration with UI KitsIf you’re using CometChat UI Kits, messaging features can be quickly integrated with pre-built components:
  • Conversation lists, message composers, and thread views
  • Typing indicators, read receipts, and reactions
  • Group management and user profiles
👉 Flutter UI Kit OverviewUse this Chat SDK directly only if you need custom UI or advanced control.
Upgrading from v4?If you’re migrating an existing app from CometChat SDK v4, check out the Upgrading from v4 guide for breaking changes, deprecated methods, and migration instructions.
Before integrating the Chat SDK, ensure you have a CometChat Account with your App ID, Region, and Auth Key. Flutter SDK >=1.2 is required, with Android API Level 21+ and iOS 11+. Users must exist in CometChat to send or receive messages — see Authentication for details.

Messaging

Send text, media, and custom messages in 1-on-1 or group conversations

Groups

Create, join, and manage group conversations with member roles and scopes

Real-time Listeners

Listen for messages, typing indicators, read receipts, and presence changes in real time

Typing Indicators

Show real-time typing status for users and groups

User Presence

Track online/offline status of users with configurable subscription modes

Reactions

Add and manage emoji reactions on messages

Threaded Messages

Organize conversations with message threads

Delivery & Read Receipts

Track message delivery and read status

AI Agents

Integrate AI-powered agents into your chat experience

Calling

Voice and video calling with built-in UI components
ComponentDescription
CometChatMain entry point for initialization, authentication, messaging, and real-time events
AppSettingsConfiguration for SDK initialization (App ID, Region, presence subscription)
UserRepresents a CometChat user with UID, name, avatar, and metadata
GroupRepresents a group conversation with GUID, type, and member management
BaseMessageBase class for all message types (text, media, custom, action)
MessageListenerEvent interface for real-time message, typing, and receipt events
ConnectionListenerEvent interface for WebSocket connection status changes