Inspiration
This year, all the members in our team entered the first year of post-secondary and attended our various orientation event. We all realized that during orientation, we talked to many people but really only carried on a couple of friendships or acquaintances. As such, we decided to make an app so that people could quickly find others in their vicinity who share their common interests rather than talking to every single person in the room until they find someone who's a good match.
What it does
Linkr is an app which shows the people in your area and sorts them by how much they have in common with you. When first installing the app, Linkr asks a series of questions to determine your personality and interests. Based on this, it will find matches for you, no matter where you go. The app uses geolocation of the users to determine how close other users are to you. Based on this and using AI to determine how much they have in common with you, you will get a sorted list of people with the person who has the most in common with you being at the top.
How we built it
We planned to use Cohere to analyze the similarities between the preferences of different people, using Django for the backend and React Native for the front end. Additionally, we believe that music is a great indicator of personality. As such, we looked into using Spotipy to collect data on people's Spotify history and profiles.
With Cohere, we made use of the get_embedded function, allowing us to relate preferences and interests to a numerical value, which we then could mathematically compare to others using the numpy module. Additionally, we used Cohere to generate a brief summary of users' Spotify data, as otherwise, there is quite a bit of information, some which may not be as relevant.
In the end, we ended up using React Native with Expo Go to develop the mobile app. We also used Appwrite as a database and authentication service.
Challenges we ran into
Indecisiveness: We spent a lot of time choosing between and experimenting on two different projects. We were also indecisive about the stack we wanted to use (we started with wanting to use C++ but it took us time to realize that this would not actually be feasible) .
Combining different components: While we were successful in developing the different parts of the project individually, we had a difficult time combining the different technologies together.
Accomplishments that we're proud of
We are proud of our perseverance. Working on this project was not easy, and we were met with many challenges. Especially considering how our indecisiveness cost us a large part of our time, we believe that we did well and completed a fairly large portion of the final product.
What we learned
Incorporating different API's together. Working with a completely new technology (all of us were new to mobile app dev). Cohere's excellent functionalities.
What's next for Linkr
Allowing more user customizability and ability to communicate with other matches. Precise finding of other matches
Built With
- appwrite
- cohere
- django
- python
- react-native
- spotipy
Log in or sign up for Devpost to join the conversation.