🎓

AutoClassScheduler

An automatic school-scheduling engine — feed it teachers, the classes they can teach, and student requests, and it produces a working timetable.

Live Demo
Language
Python
Category
Automation / Web
Created
Aug 2025
Deployment
Self-Hosted

The problem

Building a school timetable by hand is a constraint-satisfaction nightmare: every teacher has a limited set of subjects they can teach and hours they're available, every student has requested classes, and rooms and periods are finite. Doing this manually for anything beyond a handful of classes turns into hours of spreadsheet juggling and last-minute conflict-fixing.

The approach

AutoClassScheduler takes structured input — the teacher roster with what each one can teach, and the student list with their requested classes — and automatically generates a schedule that satisfies as many constraints as possible. Instead of shipping it as "clone the repo and run it yourself," it's deployed live so anyone can try it against their own data immediately, while still supporting full self-hosting for schools that want to run it on their own infrastructure.

What it does well

  • Imports teacher availability and subject qualifications directly.
  • Takes individual student class requests as scheduling constraints.
  • Produces a complete schedule automatically instead of requiring manual assignment.
  • Works either as a hosted service or a self-hosted deployment — the README is explicit that you can "self-host or just use my hosting."

Why it matters

This is the project that best represents how I like to ship things: not just source code, but a running instance real people can point at and use the same day. It's also the clearest example of me treating a genuinely tedious administrative problem as something worth automating properly rather than patching over with a spreadsheet template.

Project links

Live Demo ↗ View Source ↗
Python Self-Hosted Scheduling Algorithms
← Back to all projects