Skip to content
CO
All projects

Case study

ELWC

A church community app: daily devotionals, an offline Bible, group chat, events, sermons and live presentations.

  • Live
  • iOS
  • Android
Download on the App StoreGet it on Google Play

The problem

A church needed one app for its members' daily devotional, the Bible and community life — groups, testimonies, chat and events — with content its own team can publish.

What I built

  • Daily devotionals with a calendar of past entries, and reading-streak tracking
  • Offline KJV Bible reader with notes attached to verses
  • Community groups (open or approval-only), comments, and testimonies that an admin approves
  • Real-time group chat with push notifications
  • Events, sermons, and slide presentations from Google Slides, PowerPoint or PDF
  • A web admin panel for the church team to publish and moderate content

My role

Sole developer: I built the Flutter app, the Firebase backend, Cloud Functions and the Next.js admin panel, and publish it to Google Play and the App Store.

Tech stack

  • Flutter
  • Dart
  • Firebase
  • Cloud Firestore
  • Cloud Functions
  • Next.js

Technical challenges & decisions

  • Rebuilding a backend without a server

    ELWC began as a copy of an earlier app backed by a Django REST API. I moved it to Firebase: Firestore queries replaced the HTTP endpoints, Firebase Auth (with Google and Apple sign-in) replaced token auth, Firebase Storage replaced the image host, and the Realtime Database carries chat.

  • Security rules as the permission model

    With no server in between, access control lives in Firestore security rules — who can read or write each collection, owner-only edits, and admin-only moderation such as approving testimonies.

  • Presentations from any format

    Cloud Functions take a Google Slides deck, a PowerPoint file or a PDF uploaded to Storage and turn it into slides the app can present during a service, behind authenticated calls.