Skip to content

Latest commit

 

History

History
44 lines (31 loc) · 2.09 KB

README.md

File metadata and controls

44 lines (31 loc) · 2.09 KB

Perfect Timing

DESCRIPTION

Perfect Timing is an app that simplifies course registration by finding the most optimal schedule for you. As students ourselves, we know the pain of finding the courses we need and fitting them into the times we want. We either can't fit all our required courses in our schedule or have to take them in off-hours because we couldn't find a better combination manually. Perfect Timing automates this process. Simply tell us what courses you want and when, and we'll create a schedule for you so you can take the courses you need at the times you want!

THE TEAM

Justin Lui (LinkedIn, GitHub) - Developer (Scheduling Algorithm)
Eric Zhou (LinkedIn, GitHub) - Developer (Scheduling Algorithm)
Jason Liang (LinkedIn, GitHub) - Developer (Web Scraping/Selenium)
Brian Park (LinkedIn, GitHub) - Developer (UX/UI)

INSTALLTION

  • Setup a virtual env (Optional)
  • pip install -r requirements.txt

HOW-TO-RUN

  1. Run in terminal python scheduler.py
  2. Follow the prompts in your terminal!
  3. Enjoy your auto-generated schedule :)

Scoring Explanation

Perfect Timing uses a scoring system to find the best schedule. Every hour of courses that is outside of your desired timeframe equals a score of 100. So, if your desired timeframe is 12:00 to 17:00 and the schedule goes from 11:00 to 17:30, the score will be 150. The lower the score, the better the schedule!

scoring.png

SCREENSHOTS

Mock-up
home.png generate.png schedule.png schedules.png favorites.png

Inputs
inputs.png

Calculations (Algorithm)
calculations.png

Results
results.png