SaaS · Education · Learning Platform

From a WhatsApp group to a real platform.

oQuran Academy was managing student enrolments, teacher schedules and fee collection across messages and spreadsheets. The platform replaced all of it with one system that runs itself.

oQuran Academy
ClientoQuran Academy
TimelineMay 2022 – Present
RoleDesign & Development
TypeSaaS Platform

Overview

oQuran Academy teaches Quran classes online, largely to families living overseas. Demand was there; the operations weren't. Enrolments arrived by message, class times were negotiated one by one, and fees were tracked manually.

The goal was a platform where a parent could find a course, pick a time, pay, and be enrolled — with no one on the academy's side having to do anything by hand.

The challenge

  • Scheduling across time zones — students in the UK, Gulf and North America booking teachers in Pakistan.
  • Three completely different user types needed three completely different interfaces, sharing one database.
  • Payments had to be reliable and clearly receipted, because the customers are parents paying monthly for their children.
  • Teachers had to be able to manage their own availability without the admin becoming a bottleneck.

What I built

  • Course booking flow — students browse courses, view available slots and enrol directly, with confirmation handled automatically.
  • Class scheduling system — teachers set their own availability; the system prevents clashes and double-bookings.
  • Integrated payment processing — secure online payment at the point of enrolment, with records tied to each student.
  • User registration and roles — separate dashboards and permissions for students, teachers and administrators.
  • Admin oversight — a management view covering enrolments, schedules and payment status.
Every manual step you remove from an academy's day is a step that can't be forgotten on a busy afternoon.

Technical approach

The scheduling model was the hard part. Availability is stored as structured time blocks per teacher rather than as free text, which makes clash detection a database constraint instead of an application guess. Bookings validate against that model before they're ever written.

Access control is enforced server-side on every request, not hidden in the interface. A student who guesses an admin URL gets rejected at the query level — which matters on a platform where the users are children and their parents.

Still evolving

This has been a long-running relationship rather than a one-off build. The platform has been live since May 2022 and continues to get new features and refinements as the academy grows — which is the strongest signal I can point to that the original architecture held up.

3User roles — student, teacher and admin, each with their own view
24/7Self-service enrolment, with no manual step in between
4 yrsLive and actively maintained since May 2022

Next project: Power Pack Pakistan

A WooCommerce storefront for a battery retailer moving online.

View Case Study