Features

Built for real timetables, not tidy ones.

Every capability below exists to answer one question: is this week of lessons actually possible, and can the institution see why?

A scheduling engine, not a spreadsheet

AnySchedule generates a week from the requirements you define. The engine is deterministic: identical inputs and configuration produce an identical timetable, so a result can be reviewed, explained and rebuilt.

  • A teacher, class or room can never be booked twice in the same slot.
  • Nothing is placed inside a break or outside the teaching day.
  • Multi-period sessions are placed as a whole or not at all.
  • When no valid week exists, the run returns a typed infeasibility result with diagnostics.
  • Soft preferences never override a hard rule.
Generation result Example
Chemistry 9A needs a laboratory; none is free in the requested slot.
Weekly requirement for Physics 10B cannot be met with the current assignments.
22 lessons placed with no conflicts.

A data model that matches a school

Timetables are generated for real groups, taught by real people, in real rooms. The model keeps those relationships explicit instead of hiding them in a single grid of cells.

  • Academic years and terms that cannot silently overlap.
  • Classes and streams, with parent cohorts where a year is split.
  • Subjects with a code, a colour and an active state.
  • Teachers, and the teaching assignments that link them to classes and subjects.
  • Programmes, activity types and class kinds for institutions that are not only schools.
Structure Example
Classes and streams
Grade 9A Grade 9B Grade 10A
Subjects
Mathematics Physics English Art (inactive)
Teaching assignments
Mathematics · Grade 9A2 lessons / week
Physics · Grade 9A1 double session
English · Grade 9B3 lessons / week

Rooms that can say no

A room is more than a name. AnySchedule records what a space is for and what it contains, so a requirement can be checked instead of assumed.

  • Room kinds such as lecture theatre, seminar room, laboratory, workshop or clinical area.
  • Room features that a session can require.
  • A missing or unsuitable room is reported as a blocking diagnostic, never patched over.
  • Rooms belong to the institution, so a space is never double-counted across terms.
Rooms and features Example
Room kind
Laboratory Seminar room Workshop
Features
Fume cupboard Projector Accessible
Requirement check
Chemistry 9A → Laboratory with fume cupboard
Chemistry 10B → no matching room in the requested slot

The shape of the day

Institutions do not share a bell schedule. Periods, breaks and reserved time are data you define, not assumptions baked into the product.

  • Periods from 5 to 600 minutes, ordered by wall-clock time.
  • Breaks anywhere in the day; lessons are never scheduled over them.
  • Uncovered gaps are surfaced rather than quietly filled.
  • Reserved time for clinical practice, laboratory days, examinations or assembly.
  • Teaching days that differ per institution, with a time zone that belongs to the school.
A teaching day Example
08:00 – 08:45Period 1
08:45 – 09:30Period 2
09:30 – 10:15Period 3
10:15 – 10:45Break
10:45 – 11:30Period 4
11:30 – 12:15Period 5
Reserved
Friday examination block

Publishing that means something

A draft timetable is a proposal. A published timetable is a promise — so publishing is a deliberate step, and the rules change the moment it happens.

  • Administrators manage institution data; teachers and viewers read the timetable they are part of.
  • Publishing locks the term’s lessons at the database level, not just in the interface.
  • Regenerating a published term is refused until it is unpublished.
  • Every class is reviewed in its own weekly grid before the term goes live.
Access and state Example
Roles
Administrator Teacher Viewer
Terms
Term 1 · Grade 9Published
Term 2 · Grade 9Draft
Unpublish the term before regenerating or editing lessons.

Your account, your preferences

People are not part of the timetable’s structure. Your profile holds the details that make the app yours, and you can change or remove them without touching a single lesson.

  • Display name and profile photo.
  • Language, time zone and appearance preferences.
  • Notification preferences stored with your account.
  • A documented account deletion path, described in full on the account deletion page.
Preferences Example
Display nameSet by you
Profile photoOptional
LanguageYour choice
Time zoneYour choice
AppearanceSystem, light or dark
Notification preferences are saved. Delivery of notifications is not enabled in the current release.

See how the pieces fit together.

The walkthrough shows the same capabilities in the order you would actually use them, from the first institution setting to a published week.