Tutor Management System (Django)

Enroll students, schedule classes, track attendance & payments, and view reports — all in a clean Django web app.

PythonDjangoDRFPostgreSQLHTML/CSSJavaScript
Tutor Management dashboard preview

Dashboard preview: upcoming classes, outstanding payments, attendance heatmap, and quick actions for admins and tutors.

Overview

Tutoring centers often juggle spreadsheets for enrollment, schedules, attendance, and payments. I built a focused Django application that centralizes operations: admins create classes, enroll students, assign tutors, mark attendance, and reconcile payments. Role-based dashboards surface what each user needs to do next and simple reports highlight class capacity, revenue, and student engagement.

Goals

  • Centralize students, tutors, classes, and payments in one system.
  • Prevent scheduling conflicts and make attendance taking fast.
  • Provide simple reports (revenue by month, class fill rate, attendance trends).

My Role

  • Modeled the domain (Students, Tutors, Classes, Sessions, Invoices, Payments).
  • Built Django views/templates + DRF endpoints and validation.
  • Implemented reporting queries and export to CSV.

Architecture

Highlights

Zero-Conflict Scheduling

Guards prevent double-booking a tutor, room, or student across overlapping class sessions.

One-Click Attendance

Session sheets optimized for keyboard entry; attendance instantly updates invoices and reports.

Actionable Reports

Simple summaries for revenue, aging invoices, and class capacity with CSV export for accounting.

What I Learned

Next Steps