When going to eat out with friends or simply craving something at home, we all had the common experience of not knowing what to eat and where to go. With Food Mood we hoped to solve this problem and alleviate the pains of indecisiveness.
What it does
Food Mood uses a questionnaire algorithm to determine what cuisine the user is most likely to enjoy based on their mood. The app then uses the user's location and the determined cuisine to search for restaurants within a 25 mile radius that fit the user's preferences. The app considers factors such as cost, customer ratings, and distance from the user to figure out the most optimal restaurant to which the user should go.
How we built it
The app was created with Angular 8 and uses Material Design components. We use the Google Maps API to determine the user's longitude and latitude coordinates to compare with restaurants in order to find distance. It uses the Zomato API to find restaurants in the are and get various details about the restaurants, such as name, customer ratings, and restaurant highlights. We feed the data into a custom algorithm that assigns points based on the user's answers. An example question can ask "How spicy are we feeling today?" Spicier responses assign a rating of "2" for Asian cuisine but "0" for Sweet foods.
Challenges we ran into
Determining the algorithm took a substantial amount of time because we had to manually assign scores to the different cuisine types that Zomato supports. Due to this we had to generalize several cuisines into larger categories (Desserts, Ice Cream, and Donuts are different cuisines but fall under the larger category "Sweets").
Accomplishments that we're proud of
We’re proud of our planning and coordination as we worked through the project. All throughout the project, we communicated our plans and work carefully, working in tandem to produce the final result: Food Mood. And we were surprised with the accuracy with which Food Mood worked. Thinking of a certain food we wanted to eat, the algorithm correctly identified that food many times over. Our teamwork helped us create and program that we can be proud of.
What we learned
We learned the importance of organization. Throughout the project, we kept spreadsheets and schema of what Food Mood would look like. This way, every member had the same vision and was able to work towards that goal.
What's next for Food Mood
We hope we can work together in the future as well in order to add a wider variety of cuisines to the program. In addition, we could test the program on live people, which would give us data to better train the data, possibly with machine learning.