Inspiration
the inspiration for this project actually came from my friend, calvin. he thought of this idea back back a long time ago (65 million years ago). my motivation for this project came from wanting to learn how to use the canvas apis and some of the sponsors' libraries / frameworks / services, so i thought that it would be an interesting project to do while drinking pocari sweat and eating the free food.

What it does
to preface, canvas is a learning management system (lms) that is used by many schools including stanford, and you can imagine this application as an add-on to the lms. calvin is your personal chatbot when it comes to canvas courses and assignments. select a school subject then click on an assignment. you can, then, ask calvin about your assignment. also, you can even ask the chatbot about all your classes. you don't have to specify which assignment. you can even whiteboard out your query if you feel like it.
How we built it
frontend
- next.js - the core of our frontend
- shadcn/ui - the component library
backend
- fastapi - the core of our backend
- chromadb - the vector database
- groq - used their hosted llm models
- canvas api - the api we used to fetch the assignments / coursework
- langgraph - to create cool ai agents
dev tools
- windsurf ide - sped up development time by a century
system design

Challenges we ran into
- i went solo
- experimented with many vector databases before deciding to use chromadb
- slept early and wanted to relax during this hackathon
- i wanted to have fun
- got distracted by llamas
Accomplishments that we're proud of
- my first solo hackathon
- made it easier for students to ask questions about their canvas assignments
- implemented the whiteboard feature so students can draw out their questions
- more and more and more rag
What we learned
- learned how to use chromadb's cloud service
- learned how to use groq's llama vision models
- learned to have lots of fun
What's next for calvin
- implement tool calling
- integrate ai agents that can do deep research or problem solving
Built With
- chroma
- groq
- instructure-canvas
- langchain
- langgraph
- python
- typescript
Log in or sign up for Devpost to join the conversation.