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

Share this project:

Updates