Bebblo — parenting app with 4.8 App Store rating, built in React Native
Bebblo helps new parents track feedings, sleep, diapers, growth, and baby milestones. The app has a 4.8 App Store rating and is available in 5 languages. The technical challenge: smooth offline-first experience, multi-device sync, and IAP monetization that works on both platforms.
Business context
The baby tracker app market is saturated: over 200 competing apps, most with 2018-era UX and aggressive monetization (paywall after 3-day trial, full-screen ads between actions). Bebblo needed to differentiate through: (1) modern, clean UX without intrusive ads, (2) offline-first operation — a mother at 3 AM doesn't wait for loading, (3) sync between mother's and father's phones, (4) visual growth tracking with WHO standard curves.
Stack chosen: React Native (bare workflow, no Expo) for code-sharing between iOS and Android with 90%+ reuse. Backend: self-hosted Supabase for auth, DB, and storage. Monetization: RevenueCat for unified IAP management on both platforms.
Tech stack & key decisions
React Native bare workflow for native control
Chose React Native bare workflow (no Expo managed) for native control over modules: HealthKit (iOS) and Health Connect (Android) for automatic health data import, scheduled local notifications, and camera for first photos. Cross-platform code-sharing: 92%. Custom native modules: 8.
Offline-first with local SQLite + Supabase sync
All actions (feeding, sleep, diaper) save instantly to local SQLite — zero latency, works offline. Supabase sync runs in the background when connectivity exists. Conflict resolution: last-write-wins on client timestamp. Users never see a loading spinner on tracking actions.
RevenueCat for unified IAP
StoreKit (iOS) and Google Play Billing (Android) have completely different APIs. RevenueCat abstracts both: one SDK, one dashboard, cross-platform entitlement sync (a user who pays on iOS gets premium on Android with the same account). Model: freemium with unlimited free tracking, €4.99/month premium for multi-device sync + PDF reports.
Measured outcomes
Key takeaways
- Offline-first with local SQLite is the only way to deliver zero-latency tracking experiences. No cloud sync beats a local SQLite query under 50ms.
- Pre-permission dialog before the native dialog doubles iOS notification acceptance rates. Context matters more than design.
- RevenueCat eliminates 90% of cross-platform IAP complexity. Don't build your own billing layer.
- Guest mode without mandatory account increases D1 retention by ~35%. Conversion to account comes naturally when users want sync.
- HealthKit/Health Connect requires detailed App Review documentation. Prepare in-app disclosure and clear review notes from day one.
«Bebblo reached 4.8 stars in the App Store with over 1,000 ratings. Parents use the app at 3 AM — no latency, no ads, no friction. Faintech understood exactly what UX means for an exhausted user.» — Eduard Gridan, founder Bebblo