Inspiration

Having a hard time looking for restaurants up on Yelp? --> Feed

What it does

Feed is a mobile application that personalizes your restaurant recommendations and allows you to curate your own collections of restaurants. With no standard method available for people to store their restaurants in a creative manner, we wanted to not only address this common problem of organization but offer a personalized recommendation system that could seamlessly recommend additional restaurants to the user. On Feed, users can build collections of restaurants much like how Spotify users build playlists containing their favorite songs. This allows them to group restaurants in any way they choose. Users will then be able to receive restaurant recommendations for each individual collection they build, based on similar collections created by other community members. Finally, users can favorite restaurants. This data will be used to generate a special “recommended for you” collection, much like Spotify’s Daily Mixes, which features personalized recommendations from our algorithm to each user.

How we built it

The mobile application is built using React Native which makes requests to the server that is built using Node.js and Express. The server is connected with the RDS database and S3 storage bucket that are hosted on AWS. The algorithm was written in Python on Google Colab. Additionally, the client is connected to the Google Places API, which is where restaurant information is retrieved from.

Challenges we ran into

Throughout our development process we faced a number of unforeseen challenges such as account issues for AWS hosting, delayed budget approvals for Google Places API. We also realized certain dependencies in our workflow such as the need for pre-existing collections to test the algorithm, connectivity between database, algorithm, and app for data transfer. Additionally, the scope of our project and features changed a couple times due to the type of data we had available and iteration through user feedback. Despite these unexpected complexities, our group was able to adjust and work through challenges to implement the features we planned. While we found that we set a bit of an ambitious schedule at the start of the semesters, this gave us room to adjust for unexpected challenges and in the end complete the project by demo day.

What we learned

The valuable lessons that we have learned include the ideation process, problem-solving, teamwork, and feedback. The ideation process taught us the ability to be flexible and learn how to prioritize certain features over others given constraints and abilities. Furthermore, our team learned how to better problem-solve and debug code, given that most of us were new to mobile development. We worked together to understand new concepts and collaborated to develop Feed, allowing us to appreciate teamwork. Finally, our team learned to improve based on feedback, as the various class peer review sessions and conversations with advisors were helpful to our project development.

Share this project:

Updates