The Data Management page is where you feed CORS the institutional data it needs to operate. Without this foundation, the Recommendation Engine has nothing to train on and the Scheduler has no faculty constraints to enforce. Everything you upload here flows directly into the machine learning pipeline and the timetable builder.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.
What CORS needs
CORS requires three types of data to function:| Data type | Format | Purpose |
|---|---|---|
| Course Catalog | JSON | Defines every course, its prerequisites, study plan, and classification |
| Historical Offerings | CSV or XLSX | Enrollment and failure records used to train ML models |
| Faculty Records | JSON, CSV, or XLSX | Professor names, course qualifications, and availability windows |
Uploading data
Open the Data Management page
Navigate to Data Management from the left sidebar. You will see three upload zones arranged in a grid.
Check the format guide
Click the info icon (top-right corner of any upload zone) to open a format reference modal. The modal shows the expected file structure, required fields, and a sample snippet for that data type.
Upload your file
Drag your file onto the zone, or click Import File to open the system file picker. The zone border turns green and shows “Dataset Synchronized” when the upload succeeds.
You can upload each data type independently and in any order. However, the ML models will only generate meaningful recommendations once all three types are present.
Offerings Ledger Preview
After you upload historical offerings, all records appear in the Offerings Ledger Preview table. The table shows Year, Semester, Campus, Course Identifier, Students Passed, Students Failed, and Failure Rate for every record in the database.Filtering records
Click Parameters to expand the filter panel. You can combine any number of filters:| Filter | Options |
|---|---|
| Fiscal Year | All years detected in your data, sorted newest first |
| Term | All, Fall, Spring, Summer |
| Campus Site | All, Beirut, Byblos |
| Department | All, CSC, BIF, MTH, STA |
| Risk Index | All, Low, Mid, High |
| Page Limit | Number of rows to display (default 100, max 5000) |
Risk Index thresholds
The Risk Index is derived from each course’sfail_ratio (the proportion of enrolled students who did not pass):
| Risk level | Fail ratio threshold |
|---|---|
| High | Greater than 0.50 |
| Mid | Greater than 0.25 |
| Low | 0.25 or below |
The fail ratio for each record is auto-calculated from
failed_count / total_enrolled when enrollment is greater than zero. Values you supply in the fail_ratio column are overwritten by this calculation.