Skip to main content

Documentation Index

Fetch the complete documentation index at: https://cors-lau.vercel.app/docs/llms.txt

Use this file to discover all available pages before exploring further.

The Timetable Orchestration page is where you translate the Recommendation Engine’s output into an actual semester schedule. You select a course from the catalog panel, click a time slot on the weekly grid, specify the day pattern, instructor, and room, and CORS validates the placement in real time against professor availability and room occupancy before saving it.

Page layout

The scheduler is divided into three main areas:
  • Course Panel (left) — the searchable catalog of available courses
  • Timetable Grid (center) — the weekly scheduling canvas
  • Entry Detail Drawer (right, appears on demand) — details and editing for a selected scheduled entry
The header bar shows two live stats: Scheduled Entities (total entries in the current schedule) and Unique Curricula (the number of distinct course codes that have at least one entry).

Course panel

The Course Panel on the left lists all courses in the catalog. Click any course to enter Placement Mode. When Placement Mode is active, a banner across the top of the grid displays the selected course code and name with a pulsing indicator. You can exit Placement Mode at any time by clicking Abort Placement in the banner.

Scheduling a course

1

Select a course

Click the course you want to schedule in the Course Panel. The grid enters Placement Mode and highlights available time slots.
2

Click a time slot on the grid

Click the desired time slot on the timetable grid. A placement form appears prompting you to fill in the details for this section.
3

Fill in placement details

Provide the following information:
FieldDescription
Day PatternA string of day abbreviations (e.g., MWF or TR) — see day notation below
Start TimeThe time the section begins (e.g., 08:00)
DurationLength of the session in minutes (e.g., 60 or 90)
Professor / InstructorFaculty member assigned to teach this section
RoomClassroom or lab identifier
4

Confirm placement

Submit the form. CORS validates the entry against conflict rules before saving. If a conflict is detected, an error banner appears at the top of the page describing the issue.

Day pattern notation

Day patterns use single-letter abbreviations strung together as a compact string:
LetterDay
MMonday
TTuesday
WWednesday
RThursday
FFriday
Common patterns include MWF (Monday, Wednesday, Friday) for 50-minute classes and TR (Tuesday, Thursday) for 75–90-minute sessions.
When exporting, the system applies institutional break conventions automatically: MWF sessions scheduled as 60 minutes are exported with an effective duration of 50 minutes, and TR sessions scheduled as 90 minutes are exported as 75 minutes.

Conflict detection

CORS enforces three categories of conflict validation whenever you create or update an entry:
If a professor has availability windows defined in the system (e.g., only available MWF 08:00–10:00), any placement that falls outside those windows is rejected. The error message identifies the professor, the constrained day, the allowed window, and the conflicting time range.Days for which no availability record exists are considered unconstrained — the professor is treated as available at any time on those days.
A professor cannot teach two sections whose day patterns overlap and whose time ranges conflict. For example, if a professor is already scheduled for a MWF 09:00 session, you cannot add another MWF section that starts before 10:00 (assuming 60-minute duration).
A room cannot host two sections at the same time on overlapping days. If you specify a room that is already occupied during the requested slot, the placement is rejected with details of the conflicting entry.
Entries with room set to TBD bypass room conflict checks. Assign a specific room only when you are ready to commit to a location.
All three conflict checks also run when you edit an existing entry. If your changes would create a conflict, the update is rejected and the entry remains unchanged.

Entry detail drawer

Click any scheduled entry on the timetable grid to open the Entry Detail Drawer on the right side of the screen. The drawer shows:
  • Course Identifier — course code and full course name
  • Institutional Start — the day pattern, start time, and duration
  • Location — the assigned room
  • Assigned Faculty — the professor’s name and role

Editing an entry

Click Modify Assignment to enter edit mode. Two fields become editable:
  • Room — type a new room identifier
  • Professor — type a new faculty name
Click Apply Changes to save. CORS re-validates all conflict rules against the updated values before committing. Click Cancel to discard your changes and return to view mode.

Deleting an entry

Click De-commission Entry at the bottom of the drawer to permanently remove the scheduled entry from the timetable. The drawer closes and the entry disappears from the grid immediately.

Exporting the schedule

When your timetable is complete, click Finalize & Export in the page header. The system downloads the complete schedule as an Excel file named cors_final_schedule.xlsx. The exported file contains a single sheet titled Final Schedule with the following columns:
ColumnDescription
Days PatternSorted day abbreviation string (e.g., MWF)
Course CodeThe course identifier
Section NameFull course name
InstructorAssigned faculty, or Unassigned if none
Start TimeSection start time
End TimeCalculated end time (after applying institutional break logic)
RoomAssigned room
Column widths in the exported file are auto-fitted to their content, so the spreadsheet is ready to share or print without manual formatting.