IndiePack includes a Flutter path for iOS and Android with Firebase, integrated authentication, native push capabilities and RevenueCat subscriptions. When evaluating it for a subscription app, confirm that user identity, entitlement state and notification tokens remain separate but reconnect correctly after login, reinstall and purchase restoration.
Contents
What end-to-end flow should the starter cover?
The starter should cover sign-in, device registration, notification permission, product display, purchase, entitlement refresh and restoration. Each stage needs an explicit loading and failure state so a delayed network response does not accidentally unlock premium content.
Firebase and RevenueCat solve different problems. Keep the push token associated with the current user and device, while deriving paid access from the RevenueCat entitlement.
What is the fast route: use the IndiePack mobile track?
The fast route is IndiePack, which combines Flutter UI for iOS and Android, Firebase with authentication and native push, and RevenueCat for in-app subscriptions. The Spanish documentation keeps this mobile path alongside the web SaaS path without pretending their payment systems are interchangeable.
Explore IndiePackSee pricingWhen should the app request notification permission?
The app should request notification permission when the user understands the specific benefit, such as an alert they have chosen to receive. Asking immediately on first launch consumes the system prompt before the product has supplied context.
Handle denied and unavailable states without blocking the subscription. Notifications may support retention, but they are not evidence that a purchase exists and should never gate account access.
How should login, push tokens and subscriptions reconnect?
They should reconnect in a defined order: resolve Firebase Auth, identify the RevenueCat customer, fetch entitlements and then associate the current device token with that signed-in account. On sign-out, remove or reassign the token according to your model and clear premium UI state.
Test reinstall and device replacement because local state disappears while store purchases can remain restorable. The practical Flutter, Firebase and RevenueCat MVP guide describes the underlying identity and entitlement boundary.
How do you evaluate this Flutter starter before buying?
Evaluate it by running two accounts on two devices through login, purchase, notification opt-in, sign-out and restore. Confirm that one account never receives the other account's premium state or targeted notification.
IndiePack is a one-time purchase aimed at Spanish-speaking builders who want both production-oriented components and a documented launch process. If you are comparing backend choices first, the Supabase versus Firebase guide explains why its mobile track uses Firebase.