TRY IT YOURSELF: https://classes.akhilasher.com/ <3
Inspiration
While registering for classes, I found myself with multiple tabs open, constantly having to reorganize everything to keep myself sane. Many students share my frustrations. That's why I created Regie. (its like ralphie for registration)
What it Does
Provides a modern interface for building a schedule that is guaranteed to work for you.
Features:
- Automatic schedule conflict resolution
- Fast live class search (powered by MongoDB Atlas)
- Personalized class recommendations (powered by Gemini)
- Walk time optimization
- Real-time calendar preview
- ICS + Google Calendar export
- RateMyProfessor integration
How we built it
Stack:
- Frontend: TypeScript, React
- Data Backend: TypeScript, Hono
- AI Backend: Python, Flask
Technologies and libraries:
- Capy for code assistance
- MongoDB Atlas for storing and querying the classes
- MongoDB Atlas Search for real-time search
- Gemini for making recommendations from summarized degree audits
- CU Boulder Campus Map for pathfinding and walk time estimation
- CU Boulder Class Directory for courses (JSON, Web Scrape)
- RateMyProfessor for professor reviews (GraphQL)
- pdfplumber for parsing degree audit pdfs
- Flask for creating the python web server
Challenges we ran into
Our initial prototype of the AI course recommendations was really slow. We fixed it by parsing the PDF into a JSON using pdfplumber, then that JSON is transformed into an LLM-friendly markdown summary. We also tested different models and ended up using Gemini 3.1 Flash Preview.
Integrating the CU campus map and walk times into the app.
Accomplishments that we're proud of
Rapid development with AI. Using Capy, we were able to quickly develop a proof of concept in two hours and iterate on ideas. This speed allowed us to refine the UI and decide the behavior of crucial features like streamlining group sections (LEC, REC, LAB) into the same class card for easy access.
We wanted it to feel like it was already part of the system through extensive integrations to existing resources people were already using during course registration like the official campus map, class directly, and RateMyProfessor.
Through various optimizations, we achieved a 30x speed up on our AI course recommendations from our first prototype, down to one second.
What we learned
Structured outputs was new to all of us. Google's libgen library supports fitting Gemini's output into a predefined data model. With this, we were able to ensure the AI returned a machine-friendly and valid JSON file of recommended courses.
What's next for Regie
Real-time updates to class capacity/enrollment to reduce race condition headaches.
Grade distribution graphs (data not currently available).
Statistics for professor details and class popularity so students can make more informed class choices.
We want to replace the outdated yet official course registration software. This would allow us to do the registration without leaving our app.
Built With
- atlas
- boulder
- capy
- gemini
- mongodb
- react
- typescript
Log in or sign up for Devpost to join the conversation.