Inspiration

Students already have the material — lectures, PDFs, slides, YouTube — but still rewrite it by hand into notes, then again into flashcards, then again into quizzes. Darwinity started from that loop: one upload should become a full study set, not another blank page at midnight.

What it does

Darwinity is a native iOS/Android study app. Upload a lecture recording, PDF, or YouTube link once; the app builds:

  • AI notes from the source you were actually taught from
  • Flashcards for spaced repetition
  • Quizzes to test recall
  • Podcasts for learning on the go
  • Exam prep practice from the same set

Free to start. Pro unlocks higher limits and premium features via in-app subscriptions.

How I built it

  • Client: Expo / React Native (TypeScript), React Navigation, TanStack Query, Zustand
  • Monetization: RevenueCat (react-native-purchases) for Pro monthly/yearly offerings, purchase, restore, and entitlement sync
  • Auth: Apple Sign In + Google Sign In
  • Backend: Darwinity API (notes, quizzes, flashcards, podcasts, billing status)
  • Native extras: local Expo modules for focus shields / study alarm

Public open-source client (MIT): github.com/schandu-eng/darwinity-mobile

RevenueCat

Pro is powered end-to-end by RevenueCat:

  1. Configure SDK with platform API keys
  2. logIn with the Darwinity user id so entitlements follow the account
  3. Load Offerings → monthly / yearly packages
  4. Purchase + Restore Purchases on Account
  5. Listen for CustomerInfo updates and map the Pro entitlement to the paywall / limits UI

Product IDs: darwinity_pro_monthly, darwinity_pro_yearly.

Challenges

  • Keeping store IAP + backend plan status consistent (trial/geo rules vs App Store / Play products)
  • Shipping a real study loop on mobile (upload → notes → flashcards → quiz → podcast) without collapsing into a thin API wrapper
  • Making the paywall honest: free must be useful; Pro is for volume and premium surfaces, not a brick wall on first open

What I learned

Thoughtful monetization is product design: offerings, restore, and entitlement listeners matter as much as the paywall screen. Expo + RevenueCat made cross-platform subscriptions tractable so I could spend time on the study UX.

What's next

Polish the demo path for judges, tighten onboarding, and keep iterating on recall quality from real coursework uploads.

Built With

Share this project:

Updates

Submission history