Skip to content
Ahmed Ahmed

Scolify LMS

An online-course platform with DRM video, receipt-based payments and three role dashboards. Teachers publish courses as modules and lectures with protected video and timed quizzes. Students pay by transfer, upload the receipt, and get access as soon as it's approved.

Role
Full-stack developer: Django REST APIs, plus the React + TypeScript dashboard for all three roles.
Engagement
Cyparta Software HouseCyparta
Surfaces
Admin dashboard, Teacher dashboard, Assistant dashboard
Scolify LMS: Admin dashboard
roles served from one dashboard
3
permission toggles per teaching assistant
30+

The problem

Private teachers and academies in the region sell courses through bank and wallet transfers, not card checkouts, and they lose revenue to shared accounts and leaked videos. Scolify is built around that: receipts instead of a checkout, and content protection by default.

What it does

  1. 01A student buys a whole course or just the modules they need, applies a coupon, pays by InstaPay or wallet transfer and uploads the receipt.
  2. 02The admin, the teacher, or an assistant with permission reviews the receipt and approves it in one click, and access is granted automatically.
  3. 03Teachers build lectures with several DRM-protected videos, files and quizzes (multiple choice, true/false, time limit, pass mark), then review results answer by answer.
  4. 04Admins cap active sessions per student and can log a student out of every device.
  5. 05Teachers add assistants and decide exactly what each one can create, view, update or delete.

What I did

  • Built the Django REST APIs for courses, orders and payments, quizzes, sessions and permissions.
  • Built role-based dashboards for admins, teachers and assistants in React + TypeScript.
  • Integrated VdoCipher for secure video delivery, and Dnd-Kit for drag-and-drop module and lecture ordering.

Engineering

01

Payments without a payment gateway

Each order carries its uploaded receipt, and approval unlocks exactly what was bought, a course or individual modules, so access is never granted by hand.

02

Stopping account sharing

Active sessions are capped per student, and the admin can revoke all of a student's sessions at once.

03

One dashboard, three products

Admins, teachers and assistants share one React app. What each sees comes from the API's permissions, with a matrix of 30+ toggles per assistant scoped to their assigned courses.

Screens

Inside the product.

Click any screen to view it full size. Dashboards show fictional demo data.

Admin dashboard: Active courses, students, profit and pending orders
Admin dashboard: Order review with the student's uploaded payment receipt
Teacher dashboard: Permission matrix for a teaching assistant

Stack

Backend

  • Python
  • Django
  • Django REST Framework
  • Celery
  • Redis
  • MySQL
  • S3-compatible storage
  • Docker

Frontend

  • React
  • TypeScript
  • Vite
  • Redux Toolkit
  • TanStack Query
  • React Hook Form
  • Zod
  • shadcn/ui
  • i18next
  • Dnd-Kit

Integrations

  • VdoCipher DRM
  • Firebase Cloud Messaging