How to generate a timetable

Once master data is loaded, generation takes seconds. The solver respects assignments, teacher capabilities, availability, room capacity, and per-teacher daily/weekly caps.

  1. 1

    Confirm master data is in place

    Open Classes, Teachers, Subjects, Rooms, and Time Slots and make sure each has data. The generator requires all five.

    Master-data overview
  2. 2

    Map assignments and availability

    On Assignments, map each teacher to the subjects and classes they deliver, with a weekly period count. On Availability, mark any unavailable periods. Use Teacher Capabilities to constrain who can teach what.

    Assignments grid
  3. 3

    Add constraints and Clubbed Slots (optional)

    Use Constraints for rules such as 'no PE last period' or daily caps. Use Clubbed Slots to pair two subjects taught by two teachers in the same period — useful for electives like Hindi + Sanskrit or NCC + Defence.

    Constraints and Clubbed Slots editor
  4. 4

    Generate

    Open /timetable, choose your working-day pattern, and click Auto-generate. Conflicts are surfaced inline with row-level details and suggested fixes; placed entries appear in the calendar grid.

    Generated timetable with Class / Teacher / Room views
  5. 5

    Review and adjust

    Drag-and-drop entries between slots — the grid re-validates live. Re-run generation any time without losing master data. Handle one-off teacher absences on the Substitutions page instead of regenerating the whole week.

    Drag-and-drop adjustment