Hikma
Timetable

Timetable

Build conflict-free class schedules — set the school week, describe reality, create groups, generate, then activate so real sessions appear.

The Timetable tools build your school's weekly class schedule for you. You describe what's true about your school — who teaches what, when teachers and rooms are available, and how many lessons each class needs — and the generator finds a complete, conflict-free timetable that respects your rules. You then review it, adjust anything by hand, and activate a timetable group so teachers, students, and parents follow the live week and class sessions appear with real dates.

Who this is for

Academic planners and school administrators who build the school schedule.

The big picture

Building a timetable has three kinds of work:

  1. Set up the inputs — the subjects, classes, teachers, and rooms the schedule is built from, plus the year-wide school schedule, each group's timetable config, and each subject's teaching load.
  2. Describe reality and set the rules — when teachers and rooms are available, how many hours a teacher can work, and the preferences the generator should try to satisfy.
  3. Generate, review, and activate — run the generator on a group, check the result, fix anything by hand, and activate so dated sessions are created.

Two kinds of setup: reality vs. rules

It helps to keep two ideas apart, because they live in two different places:

  • Reality (Config tabs) — hard facts the timetable must respect: a teacher is only available in the mornings, the science lab can only host science, a teacher works at most six hours a day, Maths needs four lessons a week. Break one of these and the timetable is simply wrong.
  • Rules (Solver policy) — preferences that make a timetable good rather than just valid: avoid gaps in a teacher's day, keep a class in the same room, don't put two demanding subjects back to back. You decide how strongly each one matters. Solver policy is opened from a timetable group, not from Config.

The order to work in

Check the prerequisites

Make sure subjects, classes, terms, teachers, rooms, and teacher assignments all exist. See Prerequisites.

Set the school schedule

Define the year-wide default week in Settings. See School schedule.

Set the timetable config

Define (or narrow) the weekly grid of days, hours, and breaks for the levels you will schedule. See Timetable config.

Set the teaching load

For each subject at a level, say how many lessons per week it needs and how they are shaped. See Teaching load.

Confirm the lessons to schedule

Make sure each class–subject is assigned to a teacher so the generator knows what to place. See Lessons and assignments.

Describe reality

Set when teachers and rooms are unavailable, teacher workload limits, homerooms, and class hours. See Scheduling setup.

Create a group and choose your rules

Create a timetable group and tune the soft preferences (constraints). See Constraints.

Generate and activate

Run the generator from the group, review the result, make manual edits, and activate. See Generate and activate and Activate and class sessions.

In this section

ArticleWhat you'll do
PrerequisitesThe checklist of what must exist before you generate.
Timetable configDefine a weekly grid inside the school schedule.
Timetable groupsCreate weekly templates for a term and levels; know the actions.
Teaching loadSet how many lessons each subject needs per week.
Lessons and assignmentsUnderstand what gets scheduled and assign teachers to classes.
Teacher AssignmentsSet subject eligibility and assign teachers to each class–subject.
Scheduling setupSet teacher and room unavailability, limits, and room rules.
ConstraintsTune the preferences the generator tries to satisfy.
Generate and activateRun the generator, review, edit, and activate.
Activate and class sessionsTurn the weekly template into dated class meetings.

Before you start

  • An academic year must be created and selected.
  • The academic foundation should already be in place — levels, classes, subjects, terms, rooms, and teachers. See Build the academic foundation.
  • Set the School schedule for the year early.

A timetable belongs to an academic year

Everything here — the config, the assignments, the rules, and the generated schedule — is scoped to the selected academic year. Pick the right year before you begin.

On this page