Inspiration

Different courses use different platforms to post assignment information. Navigating between them is cumbersome and makes it easy to lose track of tasks. Additionally, parsing numerous slides spread across multiple lecture notes is tedious when trying to understand how to approach a problem.

What it does

StudyStack is a unified platform that consolidates the information and functionality of Canvas and Gradescope, allowing students to manage and complete assignments more reliably. Also, instead of simply providing answers, StudyStack uses AI agents to enhance learning efficiency by surfacing relevant materials and guiding understanding.

How we built it

The frontend is built with Next.js and TypeScript, displaying upcoming assignments along with structured analyses, including relevant lecture notes and specific slides associated with each problem. The backend is implemented using FastAPI and Python. We integrate with the Canvas and Gradescope APIs to fetch assignment data and submissions, and employ LLM-based agents to search for and extract relevant learning resources for students to review. We deployed the frontend and backend on Vercel and used supabase as our database.

Challenges we ran into

A major challenge was efficiently filtering lecture notes for relevance to each assignment. Canvas often contains many large files that are impractical to process all at once. To address this, we developed an LLM-based pipeline that first summarizes the key points of each lecture note into a compressed representation. These summaries are then used by another agent to determine which notes and slides are relevant to a given assignment. This processing runs in the background starting when the user logs in, avoiding delays when an assignment is selected.

Accomplishments that we’re proud of

We successfully deployed a fully functional web application that meets all of our core goals. StudyStack aggregates upcoming assignments, identifies relevant lecture material at a fine-grained level, and enables file submission from a single platform—significantly streamlining a process that often distracts from actual learning.

What we learned

We learned how to design and deploy a full-stack web application that integrates functionality and data across multiple third-party platforms. We also gained experience building practical generative AI pipelines that reduce cognitive overhead rather than replacing learning, allowing students to focus on understanding course material instead of managing logistics.

What’s next for StudyStack

Next, we plan to integrate additional platforms and allow users to specify their own sources for our agents to search. For example, we aim to support extracting relevant discussions from Piazza. We also want to handle lecture content hosted outside of Canvas, such as GitHub repositories or custom course websites, enabling even broader and more flexible information retrieval.

Built With

Share this project:

Updates