Skip to main content

Flutter UI Kit v6 — LLM docs index (Latest)

Stateful, drop-in Flutter chat/calling UI. Package cometchat_chat_uikit@6, which re-exports cometchat_sdk@5 (and cometchat_calls_sdk@5 through the calls barrel). This page is a Flutter-v6-only routing index for AI agents — a scoped alternative to the site-wide /docs/llms.txt.

How to use this index

Each link points to the docs page; append .md to its URL to fetch the clean Markdown twin (verbatim code + a props table with names, types, and defaults). Pick the page for the intent, then read the props there.
  • Convention: any docs page URL + .md → raw Markdown.
  • Fallback: if a .md twin 404s, fetch the same URL without .md (HTML). Never read the installed Dart source in place of a doc, and never answer props from memory.

Platform rules — Flutter is not the web, and v6 is not v5

Widgets render through Flutter’s own tree. Non-negotiables:
  • TWO barrels, different surfaces. Chat widgets come from package:cometchat_chat_uikit/cometchat_chat_uikit.dart; calling widgets come from package:cometchat_chat_uikit/cometchat_calls_uikit.dart. The chat barrel does not export the calling widgets and the calls barrel does not re-export the chat widgets, so a screen that shows both imports both. Importing a calling widget from the chat barrel does not compile — this is the single most common Flutter-specific failure.
  • Lists need a bounded box. CometChatMessageList, CometChatConversations and the other list widgets fill their parent. Put them in an Expanded (or a sized box) inside a Column, or layout throws an unbounded-height error at render, not at build.
  • Widgets paint their own surface. The app ThemeData does not reach inside a kit widget’s background. Scope colours with the widget’s own style object — CometChatMessageListStyle, CometChatMessageComposerStyle, and so on — see Component Styling.
  • Theming is ThemeExtension, not a theme object. Register CometChatColorPalette, CometChatTypography and CometChatSpacing in ThemeData.extensions. Register them on both the light and dark themes or one mode silently keeps kit defaults. See Theming.
  • v5’s DataSource is gone. CometChatUIKit.getDataSource() no longer exists; v6 exposes MessageTemplateUtils instead. Emitting the v5 registration path does not compile — see MessageTemplateUtils & Data Source and Upgrading from v5.
  • Custom message types: use addTemplate, never templates. addTemplate: merges your template with the defaults and folds its type/category into the list’s fetch and realtime filter. templates: replaces the default set and only registers the bubble — a custom type passed there sends successfully and then never appears, with no error anywhere. A hand-rolled MessagesRequestBuilder does not rescue it either: the list always overrides uid, guid, types and categories on the builder you pass. See Message List and Message Template.
  • Messages you send yourself must announce themselves. CometChat does not deliver a client its own sends over the realtime listener, so a message sent with CometChat.send*Message rather than through CometChatMessageComposer never reaches an already-mounted CometChatMessageList — it only appears on that list’s next fetch. Emit CometChatMessageEvents.ccMessageSent(...) in onSuccess. See Events.

Hot path — usually no fetch needed

For a plain “add chat” the install, init → login → render, and the core drop-in props are stable; a well-built agent skill bakes them. Fetch below only for exhaustive props, long-tail components, theming tokens, or feature enablement.

Getting started / integration

Core & configuration

Theming & styling

Components — conversations & lists

Components — messages

Components — calling

Every widget below resolves from the calls barrel only (package:cometchat_chat_uikit/cometchat_calls_uikit.dart).

Components — AI & notifications

Customization & extensibility

Entries name the API, not just the page, because the intent (“add a custom message type”) does not match any page title.

Text formatters

Task guides (recipes)

Framework recipes (full-page layouts)

Migration & misc