Can’t decide where to eat for dinner? FoodMatch is here to help. Whether it be deciding as a group of friends or as a couple, FoodMatch is designed to find the overall preference of everyone to ensure that everyone has an enjoyable dining experience. By taking into account each person’s taste, groups can anonymously decide what to eat without anyone feeling like they are sacrificing something. So the next time your friends or spouse say “I’m fine with anything,” let FoodMatch do the planning.

Say you are hungry. You turn to your friend/spouse sitting on the couch and ask what she wants for dinner. She responds halfheartedly “anywhere is good, up to you,” while her attention remains fixated on the phone in front of her.

“Anywhere” is exactly the worst answer that everyone dreads hearing. Deciding food is suddenly your problem, your responsibility, and if you decide wrong, you’ll likely be spending the night on the couch (maybe not but possible) reminiscing about how this was all because you just ordered Taco Bell “without asking her.”

Our inspiration for this idea was based on our group’s indecision to find a restaurant that all fit our tastes. One of us might want pizza, another chinese food, etc. In the end, this leads to one or more people feeling like they had to give up their preference in order to eat with other people. Food preference should not have to be traded for company. We might have all decided that we were fine with McDonald’s but nobody brought it up. This was also a problem that we have realized occurs in our own friend groups as well as relationships. Thus our app was born, designed to help people cut down on time spent on indecisions of life’s minor problems and to help focus in the present.

What it does

Our idea was to create a tinder-like app for swiping left and right based on nearby restaurants. If you and a friend matched on something, then it would add it to a list of restaurants and you could decide from the list of restaurants, knowing they were places both of you liked.

Whenever you are hungry, you would pull out your phone and sign in. Your friend or friends would also sign in and together you would add each other as friends. From there, the process is easy. The app locates nearby restaurants and you start swiping left (for dislike) and right (for like). Once there is a match between you and your friends, it will show up in your matches, and you can be confident knowing that it is a restaurant that everyone is fine with eating at.

To account for the current environment, we have also promoted ordering from within the application itself to maintain social distancing and obey COVID-19 guidelines.

How I built it

The first functional page is the “swipes” page, which links user-friendly front-end code to different functions in Javascript. Our program compiles a list of restaurants that the user “liked,” and compares them to a list of restaurants that their friends liked. Then, in the “matches” page, our website lists the intersection between the restaurants that both the user and the friend liked.

Challenges I ran into

As a team of first and second time hackers, we were relatively inexperienced with the amount of programming and app design needed to make our project a reality. Coupled with the fact that half of our members are not programmers and that makes for a very interesting team dynamic. A large majority of our weekend was spent learning the programming languages and programs needed to navigate our hacking journey. One large issue that we had was that all of us are new to cloud hosting and managing online integration between profiles and such. As a result, we had to forgo that feature, but we hope to implement it as we work on the project beyond the 36 hours of the hackathon. Another issue that we had was difficulty implementing the Yelp API which we hoped to do to gather large amounts of previously collected data and incorporate it into our app as well. However, time was insufficient for us as we did not have the time to learn it completely and there was a lack of guides online. As such, for now, we had to individually import the information from Yelp per restaurant.

Accomplishments that I'm proud of

Despite the challenges that we did run into, we are very proud to present our project as first time hackers with limited programming knowledge. We came out with a lot of experience and knowledge, and will be looking forward to continuing to improve our app and compete in future hackathons. We are very proud of this project because it can help bring communities and people closer during these difficult times since food is an integral part of our lives. This project could help people spend more time together and engage in the social activity of eating great food.

What I learned

A majority of our time was spent learning the basics of HTML and Javascript, as well as node.js, all of which were used to make our hack. We also learned some introductory React.js, React Native, MongoDB, and Firebase, although not to the degree that we were able to implement it sufficiently in our project to make it functional. Two of us are in the pre-medicine field and are learning programming for fun. This was a great introduction to hackathons and our experiences reflect that.

What's next for FoodMatch

For our next steps for FoodMatch, we plan on implementing the online features of account creation as well as fluid integration of the Yelp API. In addition, we are looking forward to potentially implementing a randomize wheel for when there are multiple matches, so that people can choose to have the computer choose what restaurant to eat at out of all the favorites. In the future, we hope to have android and ios versions through React Native.

What we are doing is also not limited to food. It is a way for people to compromise without sacrificing. This type of technology could also be applied to a number of things that people collectively decide on, such as movies, date ideas, games, etc.

Share this project: