Inspiration

Running a school means juggling paper registers, fee books and report cards across the admin, teachers, parents and the bursar. We wanted one consistent interface where each person sees only their part of the school. Here in Uganda there are so many schools that have no management systems , therefore this inspired us to build this system.

What it does

Admin: register pupils with guardian and photo, activate/deactivate, academic oversight, system configuration, communication. Teachers: marks, lesson plans, timetable, attendance, weekly reports. Class Teacher (its own portal): tracks which subject teachers have submitted marks and compiles the class report for admin. Parents: announcements, results, fee status, printable receipts. Bursar: fee collection, daily/weekly records, pupil financial status, add defaulters / fee structure

How we built it

React + Vite with React Router, a shared layout and one set of design tokens. A Flask + PostgreSQL REST API on Render handles pupil and guardian records.

Challenges we ran into

  • Making five role-specific experiences feel like one product.
  • Keeping one visual language across many screens built in parallel by a small team.

Accomplishments that we're proud of

-We were able to design a responsive and interractive user interface.

What we learned

What's next for SchoolOS

  • MoMo receipts / SMS to parents
  • AI-assisted grading and class position for class teachers -Electronic report generation and issuance

Built With

Share this project:

Updates

Submission history