About the Project

Inspiration

I wanted to simplify UBC degree planning. Students often struggle to track prerequisites, faculty credit requirements, and long-term course sequencing. I built this tool to make academic planning intuitive and personalized.

What I Learned

I explored:

  • Full-stack architecture (React + Node.js + Firebase/Supabase)
  • Data modeling for courses, prerequisites, and faculty credit rules
  • Designing an AI-assisted workflow for drag-and-drop schedules
  • Understanding UBC’s complex academic requirements

How I Built It

  • Frontend: React/Next.js with drag-and-drop scheduling
  • AI Agent: Helps fill electives, adjust course loads, and suggest summer courses
  • Backend: API for authentication + persistent user schedules
  • Database: Stores users, plans, course metadata, and faculty credit mappings

Challenges

  • Parsing inconsistent UBC requirements across faculties
  • Normalizing courses into structured degree-rule data
  • Designing an intuitive UI that doesn’t overwhelm the user
  • Ensuring schedules remain valid across multiple years and edge cases

Built With

Share this project:

Updates