Engagement for Flutter, without a native detour
One package gives your Flutter app push reporting, native in-app messages and user identity on iOS and Android. It sits on top of your firebase_messaging setup instead of replacing it.
main.dart, push
await ChumbaqPush.instance.init();
FirebaseMessaging.onMessage.listen(
(message) => ChumbaqPush.instance.reportNotificationReceived(message.data),
);
FirebaseMessaging.onMessageOpenedApp.listen((message) async {
final url = await ChumbaqPush.instance.reportNotificationClicked(message.data);
if (url != null) router.go(url);
});Where users slip away
- 01
Plugins that fight your setup
Engagement SDKs that take over Firebase Messaging and break your existing handlers.
- 02
Web views that look wrong
In-app messages drawn in a web view never feel like part of your app.
- 03
Two native SDKs to wire
Half the docs assume you write Swift and Kotlin, not Dart.
Journeys you can run on day one
Each one is a journey you build once in Chumbaq. It runs for every new user who matches, and stops as soon as they reach the goal.
Turn on push, politely
- Third session
- Bottom sheet asking first
- System prompt only on yes
- Push enabled
Onboarding
- Signed up
- In-app on Home
- Wait 1 day
- Push
- Key action
Feature launch
- Segment: active users
- Fullscreen on next open
- Feature used
Drawn natively, controlled from Dart
The native iOS and Android SDKs draw the in-app messages; the Flutter package tells them which screen is showing and hands every tap and event back to you as a Dart stream.
- flutter pub add chumbaq
- Works next to firebase_messaging
- Push events: delivered, impression, click, dismissed
main.dart, in-app triggers
ChumbaqMessages.instance.events.listen((event) => switch (event) {
MessageButtonAction(:final button) => router.go(button.actionUrl!),
_ => null,
});
await ChumbaqMessages.instance.onAppOpen();
await ChumbaqMessages.instance.onScreenView('Paywall');
await ChumbaqMessages.instance.onEvent('purchase');Flutter apps, answered
Does it replace firebase_messaging?
No. Your app keeps receiving messages through firebase_messaging; you hand each one to Chumbaq so it can report it.
What about React Native?
There's no React Native SDK today. Chumbaq ships SDKs for iOS, Android, Flutter and the web.
The features behind it
- Push notificationsEach user gets the message at the hour they usually open your app.
- In-app messagesDrawn by the iOS and Android SDKs, so they look and feel like your app.
- SegmentationDid or didn't do an event, how often, and how recently.
- JourneysStart on any tracked event, or when someone enters a segment.
Bring your users back
Free up to 2,500 monthly active users. No card, no sales call.