Inspiration

Sunday's sermon lands on your heart, and by Tuesday it's gone. AfterChurch exists to close that gap: to keep the sermon working through the whole week instead of ending when the service does.

What it does

Snap photos of sermon slides or your notes, and AfterChurch turns them into a full study. Summary, scripture cited from public-domain KJV/WEB, prayer points, affirmations, a memory verse, and a 7-day devotional you tick off day by day. Then it walks the week with you: a prayer list you actually pray (ticked daily, answered prayers kept), memory verses with spaced repetition, an evening check-in, listen-aloud audio, offline church notes, daily reminders that deep-link to the right screen, and a home-screen widget that rotates your verse, prayers, and tonight's question.

How we built it

Mobile: Flutter (Riverpod, GoRouter), sharing the same Supabase backend via SECURITY DEFINER RPCs, so the app talks to the DB directly with no separate API. AI pipeline: async generation via Supabase Queues (pgmq) + an Edge Function worker; LLM for the study, OCR for slides, TTS for audio, with caching at each step. Native: SwiftUI/WidgetKit + Android RemoteViews widgets; FCM push; RevenueCat for dual-region billing.

Challenges we ran into

Making it daily, not weekly: a sermon is a Sunday event; designing prayer lists, reflections, and a consistency grid gave it a reason to open on a Wednesday. Free-trial abuse: each free study costs real money (LLM + TTS), so we layered email normalization, disposable-domain blocks, per-IP velocity caps, and a spend guard. Cross-platform parity: one rotation formula mirrored across Dart, Kotlin, and Swift so the widget's tap target always matches what's on screen.

Accomplishments that we're proud of

A genuinely cross-platform product: web + iOS + Android on one backend, with 270+ passing tests, an automated WCAG accessibility audit, offline-first notes, a native home/lock-screen widget, and a design system (the reader's highlight palette) that colors the marketing site, store screenshots, and ads consistently.

What we learned

Retention is a design problem, not a feature count. A gentle consistency grid beats a punishing streak. TTS is the real cost lever, so gating audio behind a preview protects unit economics without hurting conversion. And that "works in debug" hides a mountain of release-signing and platform-config reality.

What's next for AfterChurch

Building a feature to share studies with a small group.

Built With

Share this project:

Updates

Submission history