Inspiration
We were inspired by the SFU course outlines page and the idea of using real course data through an API.
Seeing how structured and detailed the course information was made us want to build something that actually connects students through the classes they are taking.
Some of our team members had previously worked on a study timer app with leaderboards, where users could study alongside friends. That experience made us realize how helpful it is to feel connected while studying. From that, we wanted to create a website where students could see other people in their classes and potentially reach out to them. It can be difficult to meet people in new courses, especially at a new school or at the start of a semester. StudBuds was created to give students an easier way to interact using school emails, shared courses, similar ages, and faculty or program information.
How We Built It
StudBuds was built as a full-stack web application using multiple technologies.
The frontend was created using HTML, CSS, and JavaScript, with all pages served through Spring Boot. We designed the interface with a Windows 95–inspired theme to match the hackathon’s retro aesthetic
The backend was built using Node.js and Express, with MongoDB used to store user data such as profiles, courses, and availability. We implemented session-based authentication to handle login and persistent user sessions.
We also integrated the SFU course outlines API to validate courses during registration, ensuring users enter real and accurate class information.
Challenges We Faced
Since this was our first hackathon, one of our biggest challenges was coming up with an idea early and not leaving everything until the last minute. Learning how to manage time, divide tasks, and stay organized under pressure was a major learning curve.
Another challenge was collaboration. Some of us were newer to Git, and it was difficult at first to avoid merge conflicts and understand how to properly work together on the same codebase. Because not all of us had met before, learning how to communicate effectively as a team took time. We also faced technical challenges when connecting our frontend to the backend, managing endpoints, sessions, and database interactions. Getting everything to work together consistently was difficult, but extremely rewarding once it came together.
What We Learned
Through this project, we learned how real full-stack applications are built, from frontend design to backend logic and database integration. We gained hands-on experience working with APIs, handling authentication, and managing user data across multiple services.
Most importantly, we learned how to collaborate as a team under time pressure. Despite the challenges, we were able to build a working application with real database access and functional endpoints.
We are proud of what we created, especially the Windows 95–style design that helped us embrace the hackathon theme while still having meaningful functionality.
Log in or sign up for Devpost to join the conversation.