Inspiration

With the world moving online due to COVID-19, it has become much harder to create long-lasting relationships, especially for students transitioning to university this year. Looking back at our experiences we noticed that living in a dorm is a great way to make life-long friends! The Zoom breakout rooms we're forced into are nothing but endless periods of awkward silence. Aside from the boring course group chats, many students do not have the opportunity to meet students within their program.

What it does

DormBuddy matches students with other students just like how dorms are assigned. These matched groups are saved and will allow students to move around in a "E-dorm" virtual environment, video call, and text each other. Students move between dorms and can interact with others and return to sessions.

How we built it

Using a server built with Node.js and storing user data in Google Firebase we are able to match people in our web application. Then by using HTML5 WebRTC we are able to communicate between users so they can video chat and interact together on the interactive dorm map. It was designed using Figma and converted using JS, HTML, and CSS into a functional product.

Challenges we ran into

Using sockets and RTC Peer connections were confusing and hard to work with, but eventually, we were able to get people connected! Firebase user authentication is another finicky aspect of our project, but we were able to get users in the database. We also found implementing the movement and i-space borders to be quite tricky with javascript. Lastly, we have several issues with getting heroku to function as it has limited memory and often bugged out on us.

Accomplishments that we're proud of

We are proud of learning about and getting a real time peer connection going. We are also proud of creating a Google Firebase data base and hosting out Node server on Heroku. Lastly, we all had to learn almost everything from scratch so this was very satisfying to get working.

What we learned

We learned about ICE servers when working with real time connections. We also familiarized ourselves with async programming when working with the web.

What's next for DormBuddy

Adding more sophisticated interaction features to further simulate the virtual dorm experience.

Share this project:

Updates