Inspiration

We were looking for a problem that we experienced in our life that we could build a MVP for over the weekend. Bill happened to mention his frustration the exhaustive process of managing his calendar for class timeslots, cross referencing rate-my-professor, and having to check pre-requisites for different classes, and we knew we could make the process better.

What it does

Spartan Scheduler takes in the users current courses completed and natural language for restrictions and preferences, and professor ratings, then generates a set of potential schedules that user can use based on the most effective possible combinations.

How we built it

We scraped the course information for all computer science courses offered at MSU, degree requirements, and different tracks of study and created a database to house that information. We then use the "Tech Tree" to determine what are the most important courses to be completed to unlock future portions of the degree, then feed the different timeslots, professor ratings, and user preferences into a chat completion prompt from OpenAI's API to generate a set of potential schedules the user can choose from.

Challenges we ran into

As none of our group members attend Michigan State University, we do not have access to the schedule builder for the university, this stumped us for a while as we were unable to get timeslots and professor names for the courses, which was a big part of what made our schedule builder effective, luckily a mentor advised that generating sample data would be an effective substitute for our MVP.

Accomplishments that we're proud of

Tbd

What we learned

  • First time implementing in MongoDB

- First time deploying to Web (in-progress)

What's next for Spartan Scheduler

This seems like it would be a fun project to build for Oakland University where we can actually integrate into the course scheduling workflow with time sensitive data and real users.

Built With

Share this project:

Updates