The Flutter Kit logoThe Flutter Kit
Boilerplate · Crypto

Flutter Crypto App Boilerplate

Biometric-secured auth, real-time price-data wiring through a streamable repository, and RevenueCat subscription gating — the foundation of a crypto or portfolio tracker, built in BLoC across iOS, Android, and Web.

Last updated: 2026-06-19 7 min read By Ahmed Gagan, Flutter Engineer
Quick Answer

This Flutter crypto app boilerplate is a $69 one-time Flutter (Dart) starter for portfolio trackers and price-watching apps. It ships Firebase Auth with a biometric lock for app re-entry, a streamable price-data repository ready for any market API, and RevenueCat subscription gating to put live alerts or pro analytics behind a paywall. You own the full source, ship to iOS, Android, and Web from one codebase, and get lifetime updates. It is a tracker foundation — it is not a custodial wallet or an exchange, and you bring your own price-data provider and any on-chain logic.

Price
$69 one-time (was $149)
Security
Firebase Auth + biometric app lock
Price data
Streamable repository, bring any market API
Platforms
iOS, Android, Web from one Dart codebase

A crypto tracker is real-time data plus trust

Two things define a credible crypto app: numbers that update without the user pulling to refresh, and the feeling that their data is locked down. The Flutter Kit gives you both as plumbing. A streamable price repository feeds a Cubit, so when a new quote arrives the portfolio total and every holding row repaint reactively — no manual refresh threading. On the trust side, Firebase Auth is paired with a biometric lock (Face ID / fingerprint) so re-entering the app requires the user's own face or finger. Both live behind get_it-registered services in BLoC, testable and separate from your widgets, so you can swap the data source or auth policy without touching the screens.

  • Streamable price repository → Cubit → reactive portfolio UI
  • Firebase Auth + biometric app lock for re-entry
  • BLoC/Cubit + get_it keeps price and auth logic out of widgets
  • State survives login, logout, biometric re-lock, and reinstall

Wiring real-time prices, concretely

The kit ships a repository seam rather than a hard-wired exchange, because every crypto app picks a different data provider (CoinGecko, a CEX websocket, an on-chain RPC). Prices flow through a repository interface registered in get_it and surface as a stream a Cubit subscribes to, so polling on a timer or upgrading to a websocket is a swap behind the interface, not a rewrite of your portfolio screen. The biometric gate sits on app resume, so a backgrounded app re-locks before showing balances.

A price stream feeding a reactive portfolio Cubit
class PortfolioCubit extends Cubit<PortfolioState> {
  PortfolioCubit(this._prices, this._holdings)
      : super(const PortfolioLoading()) {
    _sub = _prices.watch(_holdings.symbols).listen(_onTick);
  }
  final PriceRepository _prices;
  final HoldingsRepository _holdings;
  late final StreamSubscription _sub;

  void _onTick(Map<String, double> quotes) {
    final total = _holdings.valueAt(quotes);
    emit(PortfolioLoaded(quotes: quotes, totalUsd: total));
  }

  @override
  Future<void> close() { _sub.cancel(); return super.close(); }
}

Gating pro features behind a subscription

Crypto apps monetize on the edges — live price alerts, deeper analytics, more tracked portfolios. The kit wires RevenueCat so those become a paywall plus an entitlement check, with free trials, restore, and StoreKit 2 / Play Billing compliance handled. An EntitlementState Cubit answers 'is this user pro right now?' everywhere, so a price-alert screen or an extra-portfolio slot gates cleanly. Paywall screens theme from your Material 3 design tokens, and GA4 with consent management lets you measure which pro feature actually drives upgrades — useful in a category where conversion is fickle.

  • RevenueCat gating for live alerts, pro analytics, extra portfolios
  • EntitlementState Cubit — one 'is pro?' answer across the app
  • Trials, restore, StoreKit 2 + Play Billing handled
  • GA4 consent-managed analytics to find what converts

When a different starting point is the honest choice

Be clear about scope: this is a tracker and price-watch foundation, not a custodial wallet or an exchange. If you are building self-custody key management, signing transactions, or holding user funds, the security and compliance surface is enormous and dominated by audited crypto libraries and regulatory work that no app boilerplate addresses — that is a specialist build. If you only need a read-only price widget and have no Dart experience, a no-code tool may suffice for a v1. And if your product is fundamentally a web trading terminal, a web stack fits better than a mobile-first kit. The Flutter Kit is the right call when you want a code-first, biometric-secured crypto tracker you fully own, with real-time data wiring and subscription gating already done so you can focus on your data, charts, and alerts.

The Flutter Kit vs building a crypto tracker yourself

The Flutter Kit vs Build from scratch comparison
FeatureThe Flutter KitBuild from scratch
Price$69 one-time, unlimited projectsYour engineering time (weeks)
Biometric lockFace ID / fingerprint app lock wiredIntegrate local_auth yourself
Real-time pricesStreamable repository → reactive UIHand-roll polling/websocket + state
AuthFirebase Auth, multiple providersBuild auth from zero
Subscription gatingRevenueCat entitlements pre-wiredWire StoreKit 2 + Play Billing
ArchitectureBLoC/Cubit + get_it, testableYou design it all
Source ownershipFull source, lifetime updatesYou own and maintain it all

Frequently Asked Questions

Which price API does the crypto app boilerplate use?
None is hard-wired, by design — prices flow through a repository interface registered in get_it, so you plug in CoinGecko, an exchange websocket, or an on-chain RPC. The Cubit subscribes to whatever stream the repository exposes, so swapping providers later never touches your portfolio screen.
How does the crypto boilerplate keep a user's portfolio private?
Firebase Auth handles identity and a biometric lock (Face ID / fingerprint, via the platform local-auth APIs) gates app re-entry, so a backgrounded app re-locks before showing balances. Both are wired behind services in BLoC, so you can tighten the policy without rewriting screens.
Is the crypto boilerplate a wallet that holds funds?
No — it is a tracker and price-watch foundation, not a custodial wallet or exchange. It deliberately does not handle private keys, signing, or holding user funds, because that surface demands audited crypto libraries and regulatory work that belong in a specialist build, not a general app boilerplate.
Can I charge for price alerts in a crypto app built on this kit?
Yes — RevenueCat is wired, so live alerts, pro analytics, or extra tracked portfolios sit behind a paywall and an entitlement check, with trials and restore handled. Those are digital purchases, so they go through StoreKit 2 and Play Billing as the stores require.
Does the crypto portfolio app update prices in real time without a manual refresh?
Yes — the price repository exposes a stream that a Cubit listens to, so when a new quote arrives the portfolio total and holding rows repaint reactively. You choose polling or a websocket behind the repository interface; the reactive UI plumbing is already in place.
Can a crypto tracker built on this boilerplate run on web too?
Yes — it is one Flutter/Dart codebase for iOS, Android, and Web, so a web dashboard and the native apps share price models and portfolio logic. Note that biometric locking is a native capability, so the web build falls back to your chosen web auth policy while mobile keeps the biometric gate.

Keep exploring

Ship the tracker, not the data and auth plumbing

Start your crypto app with biometric-secured auth, real-time price wiring, and RevenueCat subscription gating already in BLoC. $69 one-time, full source, lifetime updates, iOS + Android + Web from one Dart codebase. See /features.

Get The Flutter Kit — $69

One-time purchase · Lifetime updates · Unlimited projects