Inspiration

Difficulty coordinating hangouts with friends living in various locations in the GTA (Greater Toronto Area).

What it does

Centerr is a web-app designed to make hangouts convenient, even when friends are far apart - by finding the center-most point between all your friends' locations, finding the perfect hangout spot couldn't be any easier. Users may filter their results by selecting their desired type of destination, whether it be a mall, dining place, park, any many more. All hangouts are created with private lobbies that include the attending friends through a secure invite link.

How we built it

We built the front-end on ReactJS and TailwindCSS. The back-end was created with Python, including libraries such as pandas for the data and geopy for the geospatial data. We used Firebase's Firestore Database to store our data from our users and to read that data into our Firestore function that includes our code.

Challenges we ran into

For the back-end algorithm to find the center-most point, the initial idea was to use centroid clustering to be able to gather this value. However, the centroid ended up to be a k-number and was not the intended single center-point. So, the solution was to make the algorithm simpler and to find the averages between the summations of the latitude and the longitudes of the different locations divided by the number of locations. In other words, we used the values of the latitude and longitude of the locations and found the mean coordinates and used that as the center point or "centroid."

We couldn't find the right React library to use for the Google Maps API, and had to spend some time trying different ones until we found one that met our requirements.

What we learned

Our front-end developer hadn't used TypeScript before, but there's never a bad time to learn! After a few hours he was already an expert on this new syntax and was able to quickly develop prototypes.

Although we didn't use it, the back-end developer learned Geospatial Analysis combined with Centroid Clustering algorithms. Also learned about Firebase and its convenience to integrate a web application together from the front-end, the back-end, and even a database that we found easier to use than NoSQL. This hackathon indeed was a huge learning curve in our programming skills as well as with deploying apps and working with other members.

What's next for Centerr: Hangouts made easy

To add more features to the application and market it to end users. We would add transit directions for all the friends so that they do not have to use third party apps to navigate themselves. Friends may also use real time location tracking so that everyone can be on the same page.

Built With

Share this project:

Updates