Inspiration As UBC students facing confusing degree and transfer requirements, we constantly struggled with comparing majors across different faculties. The existing UBC Academic Calendar was not user-friendly and required constant cross-referencing between multiple websites. We wanted to create a centralized platform that would clearly show how different courses apply to different major requirements, helping students make informed decisions about their academic paths.
What it does Our UBC Major Planner lets students:
Pick multiple majors within the Faculty of Science and compare their requirements side-by-side Enter the courses they've taken and watch them automatically check off across all majors See what's left to graduate from each major Download their plan as a PDF for later
No more switching between tabs or missing requirements - everything you need to plan your degree in one simple website.
How we built it We built a web app using:
React for the interactive interface CSS for styling and PDF formatting JSON files to store UBC's course requirements
Challenges we ran into: Git Merge Conflicts: Coordinating multiple developers was a major challenge, especially as this was every member's first hackathon PDF formatting: getting the downloaded PDF to format properly Course matching logic: handling complex course equivalencies, like "CPSC 110 / CPSC 103 + CPSC 107" and many more small bugs!
What we learned This project gave us hands-on experience with React as we built our first complex web application. We figured out how to handle course data matching and make PDF exports work through lots of trial and error. Most importantly, we learned to collaborate effectively using Git, merging our individual contributions into a seamless final product.
Log in or sign up for Devpost to join the conversation.