Skip to content

AI-enhanced web scraper and to-do list generator made as a part of Northwestern University's 2024 Hackathon, WildHacks!

Notifications You must be signed in to change notification settings

m4ur1n0/Canvassist

Repository files navigation

Project Description

Here at Northwestern, as Spring quarter gets underway, it’s easy to get bogged down under piling assignments. That’s why we developed CanvAssist, a dynamic to-do list that takes all of your assignments from Canvas and compiles them into a streamlined, AI-assisted list of assignments.

Using the Canvas API, CanvAssist is able to take in a user’s profile and create a tiered list of assignments from all of their classes. The tiering is determined by a combination of metrics. These include the due date, a time estimate (generated by ChatGPT or inputted by the user) and the point value. From this a “priority number” is created, which takes into account how soon an assignment is due and how long it will take relative to other assignments, and how much it is worth relative to other assignments in that class through z-scores. Since time estimates are more variable, it is weighted half as much as other metrics. The program then ranks your assignments by this priority number, giving a suggested order in which you should tackle your assignments.

We then pass the assignment description, pulled from the Canvas API, into a formatted prompt for ChatGPT, which produces a JSON-formatted response, including a step-by-step list for tackling the assignment, and hyperlinks to potentially useful sources on the web. These are displayed to a user after clicking on an assignment. It also returns a streamlined description of the project, with helpful outlines and tips provided to give you a solid grasp of the overall assignment.

With the help of CanvAssist, students can manage their time more effectively and efficiently, no matter the workload, making stress and late assignments a thing of the past.

Technological Notes

  • Canvassist uses canvas API and OpenAI's API to get information from ChatGPT and from the user's canvas page.
  • Canvassist's backend is written in Python
  • Canvassist's frontend is written with React.js and CSS

Project Devs

  • Benjamin Auby
  • Theo Maurino
  • Corbin Diaz
  • Spencer Davis

About

AI-enhanced web scraper and to-do list generator made as a part of Northwestern University's 2024 Hackathon, WildHacks!

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published