Documentation Index
Fetch the complete documentation index at: https://cometchat-22654f5b-docs-flutter-campaigns.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
CometChatNotificationFeed displays a scrollable notification feed where each item is rendered as a native card using the CometChat Cards library. It handles fetching, pagination, category filtering, timestamp grouping, real-time updates, and read/delivered/engagement reporting automatically.

Where It Fits
CometChatNotificationFeed is a full-screen component. Drop it into a route or screen. It manages its own data fetching, state, and real-time listeners — you just handle navigation callbacks.
- Dart
Quick Start
- Dart
CometChatUIKit.init() and a user logged in.
Filtering Feed Items
Control what loads using custom request builders:- Dart
Filter Options
| Builder Method | Description |
|---|---|
.setLimit(int) | Items per page (default 20, max 100) |
.setReadState(FeedReadState) | read, unread, or all |
.setCategory(String) | Filter by category ID |
.setChannelId(String) | Filter by channel |
.setTags(List<String>) | Filter by tags |
.setDateFrom(String) | ISO 8601 date lower bound |
.setDateTo(String) | ISO 8601 date upper bound |
Actions and Events
Callback Methods
onItemClick
Fires when a feed item card is tapped.
- Dart
onActionClick
Fires when an interactive element (button, link) inside a card is tapped.
- Dart
onError
Fires when an internal error occurs (network failure, SDK exception).
- Dart
onBackPress
Fires when the back button in the header is tapped.
- Dart
Automatic Behaviors
The component handles these automatically — no manual setup needed:| Behavior | Description |
|---|---|
| Real-time updates | New items appear at the top via WebSocket listener |
| Delivery reporting | Items are reported as delivered when fetched |
| Read reporting | Items are reported as read after 1 second of visibility |
| Infinite scroll | Fetches next page when scrolling near the bottom |
| Pull-to-refresh | Resets and fetches fresh data on pull |
| Timestamp grouping | Groups items as “Today”, “Yesterday”, day name, or date |
| Category filtering | Filter chips row for category-based filtering |
Properties
| Property | Type | Default | Description |
|---|---|---|---|
title | String | "Notifications" | Header title text |
showHeader | bool | true | Toggle header visibility |
showBackButton | bool | false | Toggle back button |
showFilterChips | bool | true | Toggle category filter chips |
headerView | Widget? | null | Custom header widget |
scrollToItemId | String? | null | Deep link to a specific item |
notificationFeedRequestBuilder | NotificationFeedRequestBuilder? | null | Custom feed request |
notificationCategoriesRequestBuilder | NotificationCategoriesRequestBuilder? | null | Custom categories request |
cardThemeMode | CometChatCardThemeMode? | null | Card renderer theme mode |
cardThemeOverride | CometChatCardThemeOverride? | null | Card renderer theme override |
Custom View Slots
Header View
Replace the entire header:- Dart
State Views
- Dart
Style
- Dart
Style Properties
| Property | Type | Description |
|---|---|---|
backgroundColor | Color? | Screen background color |
headerTitleColor | Color? | Header title text color |
headerTitleTextStyle | TextStyle? | Header title text style |
backIconColor | Color? | Back button icon color |
chipActiveBackgroundColor | Color? | Selected filter chip background |
chipActiveTextColor | Color? | Selected filter chip text |
chipInactiveBackgroundColor | Color? | Unselected filter chip background |
chipInactiveTextColor | Color? | Unselected filter chip text |
chipBorderColor | Color? | Filter chip border |
chipTextStyle | TextStyle? | Filter chip text style |
badgeBackgroundColor | Color? | Badge background |
badgeTextColor | Color? | Badge text |
badgeTextStyle | TextStyle? | Badge text style |
timestampTextColor | Color? | Item timestamp color |
timestampTextStyle | TextStyle? | Item timestamp style |
timestampHeaderTextStyle | TextStyle? | Section header timestamp style |
timestampHeaderTextColor | Color? | Section header timestamp color |
cardBackgroundColor | Color? | Card container background |
cardBorderColor | Color? | Card container border |
cardBorderRadius | double? | Card corner radius |
cardBorderWidth | double? | Card border width |
unreadIndicatorColor | Color? | Unread dot indicator color |
separatorColor | Color? | Separator between cards |
null to inherit from CometChatTheme. Override individual values without losing theme support.
Deep Linking
Navigate directly to a specific feed item usingscrollToItemId:
- Dart
Common Patterns
Show only unread items
- Dart
Hide filter chips and header
- Dart
Custom categories request
- Dart
Card theme mode override
- Dart
Next Steps
Campaigns Feature
Overview of how campaigns work end-to-end
SDK Campaigns API
Low-level SDK APIs for feed items, categories, and engagement
Component Styling
Full styling reference for all components
BLoC & Data Customization
Custom BLoCs, repositories, and data sources