Currently being updated
Currently being updated
Zephyr was a web app submission for MakeSPP 2020, a hackathon. I worked on this project with three of my classmates, Saahil, Paul, and Arjun. We built this web app and pitch over the course of three days.
I created the pitch video, worked on the other pitch materials, and relearned HTML and CSS to help with the front-end coding after many, many years of not using those two languages. Also, we all participated in the brainstorm and design process! Many, if not all, decisions were discussed as a group too.
We are submitting our project to the MLH Domain Track because to create our website, we purchased a domain at domain.com: http://ZephyrByZephyr.tech. Unfortunately, due to DNS configuration issues (it will take from 24-48 hours to configure) we weren't able to get it working by the submission deadline. However, the included GitHub repository contains all of the code that would otherwise be remotely hosted, and will run natively on a machine. (https://github.com/Dat-Boi-Arjun/MakeSPP-Project). Please use this link https://bit.ly/34JqKfH to check out Zephyr for yourself!
After conducting informal interviews with some of our fellow classmates, we realized that socializing in-between classes allowed us to de-stress prior to the lockdown. However, the pandemic has transformed our lives, and a problem that we all share is falling out of touch with friends and classmates who we would normally pass by in the halls. Despite our increased time on our devices, it’s difficult to reach out to classmates who we might not talk to on a regular basis, so we brainstormed different ways to solve this problem. Our end result was Zephyr, a web app that simulates in-school passing periods. There are tons of people you don’t plan on talking to but can have a meaningful dialogue with during the short 5 minutes while walking to class!
Zephyr is a web app, and it aims to cultivate a sense of community in our schools by connecting students according to their common interests and classes. Our app gives numeric values to how similar each student’s interests are and uses that value in combination with the similarity score of their schedules in order to sort them together. Based on this algorithm that looks at similar classes and interests, our web app recommends users to reach out to others online and ultimately provides a way to contact them.
We started off with creating the website on Repl.it using HTML and CSS to create the pages, chat, and forms. After connecting this user interface to Firebase in order to store data, we used Numpy and Pandas (using python) along with our algorithm to look through and process all the submitted data. We collect user information such as what classes users take and their satisfaction with each class. This way, the app is able to recommend users to reach out to others online who have similar classes and interests.
First of all, finding a way to connect the data in Firebase to Numpy and Pandas was a challenge, and we had to work together to figure out how to use our different skills to create a cohesive project. None of us could have done everything alone. Creating the best algorithm to sort people called for many conversations about optimization of compute power, priorities of how to recommend people, and about what our project should emulate. These discussions all contributed to the end result of Zephyr.
After hours upon hours of creating the website, we came across the challenge of connecting our database (Firebase) to Numpy and Pandas. We spent several hours on voice calls, and in the end, all of our hard work meant that we were able to successfully connect the two aspects of our project!
Getting data from people who use our site was one of the trickiest problems we had to solve. We had to learn about matrix operations, vectors, scalars, and ways to effectively go through our data. We knew that doing a project with so many different ways to sort people would be hard on our computers if we used too many for loops, so we had to improvise where we could by learning some basic linear algebra.
Some features that could be added next to Zephyr is automatically creating ice-breaker topics when a user connects with a recommendation or perhaps displaying shared interests at the top of chat rooms. Also, we plan to add some machine-learning to improve our recommended conversation topics and people. There’s so much more that we can add!