This is a project for UWaterloo students to help them get course information and generate a schedule for the next term.
MongoDB DashBoard: LINK
- Install Python3 (>= 3.10) Python Website
-
pip install uw-course
Run the terminal UI:
uw-courseYou can:
- Check course details
- Build a schedule manually or load a plan file
- View the weekly schedule in the TUI
- Export the
.outschedule to PDF
- Create a new file named
schema.txt - Edit
schema.txtwith the following format:
Class{year}{Winter/Spring/Fall}
{Course}{CourseName}, {ClassID}
{Course}{CourseName}, {ClassID}
...Example:
Class2025Winter
PHYS 234, 7166
CS 431, 8788
PMATH 351, 6382
CO 353, 6157
STAT 231, 6097
AMATH 250, 5967- Use the TUI to select “Load Plan” and provide the file path (default:
uw-course-files/schema.txt). - The program will generate
uw-course-files/schedule.out, and you can export it to PDF from the TUI.
All generated files are stored in uw-course-files/:
uw-course-files/schedule.outuw-course-files/schedule.pdfuw-course-files/schema.txt(if saved from the TUI)
Any Idea or Question, welcome send me an email via: j7zang@uwaterloo.ca
PDF export uses a modified version of pdfschedule by John Thorvald Wodder II. Thanks for the original project.
This project is open-source and can be modified and used for personal or educational purposes. Attribution to the original creator is appreciated. (MIT License)
