Inspiration

College students, especially incoming freshmen, are constantly context-switching between WebReg, Canvas, Gradescope, email, and Google Calendar with no unified view of their academic life. Every platform does one thing, and none of them talk to each other. We wanted to fix that by building an AI-powered dashboard that pulls everything together and actually acts as a personal academic assistant, not just another aggregator. This way users can avoid unnecessary stress and stay on top of their tasks.

What it does

LockedTheForeverIn is an all-in-one academic command center built specifically for UCSD students. It scrapes class schedules from WebReg/TritonLink and assignments from Canvas and Gradescope, then syncs everything as color-coded events directly to Google Calendar. So a student can tell at a glance exactly what kind of commitment they're looking at. On top of calendar sync, it includes an AI chatbot for natural language queries like "Do I have a lab this week?", email summaries ranked by importance, upcoming assignments, and events.

How we built it

The frontend is built with React, TypeScript, and Vite for a fast and type-safe foundation, styled with Tailwind CSS and shadcn/ui to get a polished dark-themed design system without reinventing the wheel. For the scraping layer, we used the Browser Use API to automate data extraction from WebReg, Canvas, and Gradescope through headless browser sessions. Calendar sync runs through the Google Calendar API via Composio, with RRULE-based recurring events to handle weekly lecture and lab patterns. The chatbot was cleverly built by sending user input straight to the Browser Use service to utilize Gmail and Google Calendar connections.

Challenges we ran into

The hardest part was wrangling all the information from the web scraping into a clean, minimalistic layout to provide the user with the appropriate information. On top of that, inputting the right user credentials and working with two factor authentication, like Duo, to sign in into the websites and scrape the info was an unexpectedly hard. We constantly found Browser Use's agent waiting on a screen and not taking the right course of action by pressing the appropriate buttons because we didn't describe it well. On top of that, we suffered from server rate limits because of our multiple calls which we took a good chunk of time to figure out and get over.

Accomplishments that we're proud of

Students waste huge amounts of time reading of their classes, labs, discussions, seminars, midterms, and finals and create events on Google Calendar for the whole quarter. Through this app, we managed to automate this whole process and save a lots of time for students.

What we learned

Being efficient with heavy tasks such as AI web scraping and web automations is very important as it takes a large amount of time and resources. Also, displaying the right and most important information was crucial to our goal of reducing stress and simplifying quarter planning

What's next for LockedTheForeverIn

We need to fix all minor bugs, and improve speed greatly with the Browser Use API. We need to color code the events. Event creation doesn't check for pre-existing events before re-creating them. Integrate Discord and Slack messages. Also, add functionality to pull club events by scraping Instagram stories from clubs they follow.

Built With

Share this project:

Updates