Every school department kept its own spreadsheet. Class teachers marked attendance in one sheet, the accounts office tracked fees in another, exam marks lived in a third, and PTM slots were booked over phone calls and paper slips. No sheet talked to any other, so a parent asking "has my child paid the term fee" or "how many days has she missed" meant someone in the office manually cross-referencing files. At term-end, reconciling attendance against fee waivers against exam eligibility was a multi-day manual exercise, and errors routinely surfaced only after report cards had already gone home.
- Attendance tracked per class in separate Excel sheets, no school-wide view
- Fee dues discovered manually; no systematic defaulter tracking or reminders
- Report cards hand-typed each term from marks registers, error-prone and slow
- Parents had no visibility into attendance, fees, or results without calling the office
- Parent-teacher meeting slots booked via phone calls and paper sign-up sheets
- Attendance: daily and period-wise marking with automatic absentee alerts to parents
- Fee management: structured fee heads, due-date tracking, digital receipts, and defaulter reports for accounts staff
- Exam and report cards: grade entry per subject with auto-generated, print-ready report cards
- Parent-teacher meeting scheduling: online slot booking with automated reminders, replacing phone calls and paper sign-ups
- SMS/WhatsApp notifications: fee due reminders, attendance alerts, and exam result publishing sent directly to parents
The school ran on desktop machines in the office with intermittent internet, so we built a .NET desktop application (WPF) for day-to-day data entry by office and teaching staff, backed by SQL Server, with a companion ASP.NET web portal for parents to check attendance, fees, and results from a phone browser. The desktop app works offline and syncs when connectivity is available, which mattered more than any framework preference: the office could not depend on the internet staying up during exam week.
Students managed on the platform
Saved on attendance & fee collection admin
In daily production use
Replacing attendance, fees, exam, and PTM spreadsheets
The ERP replaced five disconnected spreadsheets with one system where attendance, fees, exams, and parent communication all reference the same student record. It has run the school daily for 5 years, currently managing 1,200 students.
Office and teaching staff save roughly 3 hours a week on attendance and fee-collection admin that used to mean manually cross-referencing spreadsheets, and parents get fee, attendance, and result information directly on their phones instead of calling the school office. Five years in, the system is still the school's system of record for 1,200 students.
The offline-first requirement for the desktop app was not in the original brief; it came up when we asked what happens during a power cut or internet outage during exam week. For a school running on unreliable infrastructure, a cloud-only system that stops working when the connection drops is worse than no system at all. Building the desktop app to work offline and sync later added real development time, but it is the reason the school trusted the system enough to fully retire their spreadsheets instead of keeping them as a backup.


