Inspiration

We were inspired by our experiences struggling to get help from tutors in our respective majors, both because the tutors often did not know how to answer our specific questions and because of the inconvenience involved. We initially conceived of BuzzIn as a solution to all of those problems, a platform where students could meet a diverse range of people who have extensive experience in the subjects they wanted to learn about, and where they didn’t have to wait long to get their questions answered. However, we quickly realized that the project had a much broader scope than that—it could be a valuable tool for anyone looking for detailed advice or even just trying to meet new people in a low-stakes environment. The best part about BuzzIn is its increasing returns—the more users it has, the more people who could benefit from using it.

What it does

BuzzIn is a progressive web app designed for people to make spontaneous connections and get help from people who are guaranteed to know what they are talking about. When people first sign up for the app, regardless of their intent to mentor or be mentored by others, we ask them about the fields (if any) that they are experts in, from app development to personal finance to Russian. Then every time they log on to the app, they can choose whether they want to answer a question or ask one. People who ask a question are asked to identify the closest related topics to their question, and experts in those topics are then offered a selection of questions from random people and given the opportunity to choose whichever one they’d prefer to answer. Once a mentor chooses a question, they are matched with the mentee on a voice call that can last for as little or as much time as both parties want. After the call, if the mentor was not able to sufficiently answer the mentee’s question, the mentee can rate their mentor and ask the same question again.

How we built it

We used the Django ecosystem for the backend components, using Django and Django Rest Framework for creating the api and using the Django ORM for database access and management. We also used Django Channels to implement websockets for real time communication. We also used React for our frontend to build an aesthetically pleasing UI presented to users as a Progress Web App. We also leveraged the power of PropelAuth to implement our User Authentication and ensure that our service is secure. Additionally, we used a nicely designed API Architecture to be able to ship many small yet connected features to the user with a sleek frontend interface.

Challenges we ran into

Some of the challenges that we ran into was in the usage of PropelAuth. It seemed that at many times the documentation was slightly outdated and required some investigative work to be able to be used properly. Another challenge we encountered was incorporating real time communication between our frontend and backend using websockets. It required quite a bit of setup and going through documentation to get up and running. We also faced many challenges in initializing our environments. We first tried using React Native with expo, but faced problems with UI components not working and the expo tunnel taking a ridiculous amount of time to load that made our workflow extremely inefficient. Then we pivoted and decided to use Flutter, but had many issues with flutter compatibility with xcode, and we faced many unique challenges with that. After those failed attempts, we decided to implement a Progressive Web Application using React to be able to make our ideas come to life.

Accomplishments that we're proud of

We’re proud of our use of PropelAuth. We are also proud that we were able to pivot from our initial idea of creating a mobile app to a progressive web app after we ran into difficulties with installing or porting different platforms, and that our designs were so sleek and feature-rich.

What we learned

We’ve learned the importance of adequate preparation, particularly when going into unfamiliar tools like Flutter. Having the appropriate tools and background knowledge at hand can significantly streamline our workflow and prevent wasted time, as evidenced by the hours spent setting up our environment. Moving forward, ensuring that we’re properly equipped and informed will for sure lead to more efficient and productive outcomes.

What's next for BuzzIn

Should we have had more time we would develop for a more user friendly design. Due to complications that we had during the beginning of HackDavis that ended up eating up our time, we had to cut back on many of the features that we originally planned on implementing. This also restricted the application’s design to hold users fully at the center when actually developed. If we had more time, we also would have tried to match people with mentors by using an LLM, which would increase the potential of our app to ensure that people meet with mentors who are competent in the subject material.

Built With

Share this project:

Updates