All work
El Madrasah app icon

Built at BDC · iOS · Android · Flutter

El Madrasah المدرسة

A multi-role school platform connecting parents, students and teachers, with offline-first sync — shipped to the App Store and Google Play.

Role
BDC mobile team member. Built the parent and driver roles end to end and the offline sync, improved overall app performance, and handled iOS signing and shipping to the App Store & Google Play.
Status
Live on the App Store & Google Play · published by BDC for Business Services
Stack
  • Flutter
  • Bloc
  • PowerSync
  • Offline-first sync
  • ElevenLabs AI
  • REST APIs
  • Real-time tracking

01

The product

El Madrasah is a school platform with three audiences in one app. Parents follow their children’s day, track the school bus on a map, see grades and pay fees; students get interactive task lists, schedules and progress; teachers take attendance, manage assignments and enter grades.

02

My role

BDC mobile team member. I built the parent and driver experiences end to end and the offline sync with Flutter and Bloc, improved the app’s overall performance, and handled iOS signing and shipping to both the App Store and Google Play.

03

The hard part

Schools and families don’t always have a reliable connection, but attendance, grades and assignments still need to be correct when the network comes back. On top of that, three roles need very different views of the same data.

04

Decisions and why

  1. Offline-first with PowerSync

    Data is synced to a local database so the app stays usable without internet and reconciles changes once it reconnects.

  2. Role-aware experience

    Parents, students and teachers each get their own dashboards and actions, built on shared Bloc-driven features.

  3. Real-time and AI features

    Live school-bus tracking for parents, and an AI tutoring experience built with ElevenLabs.

Offline-first sync Changes are saved to a local database on the device first, so the app keeps working without internet. When a connection is available, the local database syncs with the server.

06

Result

Shipped live to the App Store and Google Play, and updated through several releases since launch.

07

See it