evanca/flutter-ai-rules/firebase-in-app-messaging
Claude Code and agent skill by evanca/flutter-ai-rules
- community
- ext:[{"type":"config","description":"Configuration overrides"}]
Checking that the SKILL.md file is still in the repository.
Use when running in-app message campaigns, triggering/suppressing messages, configuring opt-in data collection, testing on specific devices, or handling message callbacks.
Install
npx vskill@latest install evanca/flutter-ai-rules/firebase-in-app-messagingSemi-extensibleMentions customization, but needs skill-specific knowledge. Read the extensible skills standard
SKILL.md
Firebase In-App Messaging Skill
This skill defines how to correctly implement Firebase In-App Messaging in Flutter applications, covering setup, programmatic triggers, privacy controls, testing workflows, and campaign management.
When to Use
Use this skill when:
- Setting up Firebase In-App Messaging in a Flutter project.
- Triggering or suppressing in-app messages programmatically.
- Implementing opt-in data collection for GDPR or user privacy compliance.
- Testing campaigns with specific devices before rollout.
- Configuring message types, targeting rules, and A/B tests.
1. Setup and Configuration
- Initialize Firebase before using any In-App Messaging features.
- In-App Messaging retrieves messages from the server once per day by default to conserve power.
Setup Checklist
- Confirm
Firebase.initializeApp()completes before accessing In-App Messaging. - Create a test campaign in the Firebase console to verify the integration.
- Locate the Installation ID for device-specific testing (see Testing section).
2. Message Triggering and Display
Use Google Analytics events to trigger in-app messages without additional code. For programmatic triggering:
Suppress Messages During Critical Flows
- Suppression is automatically turned off on app restart.
- Suppressed messages are ignored — their trigger conditions must be met again after suppression is lifted.
- Common flows to suppress: payment processing, onboarding wizards, form submission screens.
3. User Privacy and Opt-In Data Collection
By default, In-App Messaging automatically delivers messages to all targeted users.
Disable automatic collection — iOS (Info.plist):
Disable automatic collection — Android (AndroidManifest.xml):
Enable for users who opt in at runtime:
- Manually set preferences persist through app restarts, overriding configuration file values.
- For GDPR compliance, disable automatic collection by default and enable only after explicit user consent.
4. Testing and Debugging
Find the Installation ID
- Android: Filter logcat by
FIAM.Headless— look forStarting InAppMessaging runtime with Installation ID YOUR_INSTALLATION_ID. - iOS: Add
-FIRDebugEnabledas a runtime argument in Xcode scheme settings. Look for[Firebase/InAppMessaging][I-IAM180017]in the console.
Test a Campaign
- In the Firebase console, open the campaign and select Test on your Device.
- Enter the Installation ID from the step above.
- The test message appears on the next app launch or foreground event.
- Always test on actual devices for proper rendering and behavior.
- Test each message type (modal, banner, card, image-only) to verify layout on different screen sizes.
5. Campaign Management
- Create campaigns in the Firebase console under Messaging > In-App Messaging.
- Message types: modal, banner, card, or image-only.
Campaign Configuration Workflow
- Design — Select the message type and customize appearance (title, body, image, button).
- Target — Define the audience by app version, language, user segment, or Analytics-based conditions.
- Schedule — Set start/end dates and frequency caps (once, once per session, etc.).
- Trigger — Choose the Analytics event that displays the message (e.g.,
app_open,purchase_complete). - Test — Use device testing before publishing.
- Publish — Launch the campaign and monitor performance.
- Use custom metadata (key-value pairs) to pass additional info accessible when users interact with messages.
- Use A/B testing to optimize message content, timing, and conversion rates.
- Monitor campaign performance (impressions, clicks, conversions) through Firebase console analytics.
References
Security
- Security scanPassed, 100 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/firebase-in-app-messaging/SKILL.md
Popularity
- Repository stars
- 643
- Repository forks
- 66
- 7-day trend score
- 32
Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 10 May 2026, 5 months ago.
Extension points
configConfiguration overrides
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/evanca/flutter-ai-rules/firebase-in-app-messaging)