🗓️ Class Schedule Builder
Add your classes with day and time to build a weekly timetable. Overlapping classes on the same day are automatically flagged.
How a clash is detected
Classes are grouped by day, sorted by start time, then each one is compared with the class immediately before it on that day:
conflict when start(next) < end(previous)
Mon Calculus 101 09:00 - 10:15
Chemistry Lab 10:00 - 12:00 10:00 < 10:15 -> 15 minute clash
The comparison is strict, so a class ending at 10:15 and the next starting at 10:15 is not flagged - back-to-back lectures are treated as fine even when the rooms are ten minutes apart. Rows with a blank start or end time are ignored entirely, and a row with no name is listed as "Untitled Class".
Reading the weekly list
- Only days that actually contain a class are printed, so a Tuesday-free timetable shows no Tuesday heading.
- The badge counts every row with valid times and turns red the moment one overlap exists.
- Saturday and Sunday are available in the day list for weekend labs and revision sessions.
Frequently asked questions
Does the schedule save when I close the tab?
No. Everything lives in the page while it is open, so a refresh returns you to the three sample classes. Copy the finished timetable into a document or calendar before you leave.
How do I add a class that meets on several days?
Add one row per day. A Monday, Wednesday and Friday lecture needs three rows with the same name and times, which is also what lets each day be checked for clashes on its own.
Can I put in a class that runs past midnight?
Not as a single row. Times are compared as minutes within one day, so an end time earlier than the start time produces a negative span and silently breaks the overlap check. Split it into two rows on consecutive days.