Having trouble deciding where to eat and what to order?
Don't want to resort to checking Yelp reviews every time you're in some place new?
I once spent half an hour walking around a plaza in Santa Monica, trying to decide with friends on a place to eat. We would have saved so much time if there was an app that simply recommended a place to us, rescuing us from the indecisiveness and overanalyzing that occasionally comes with such decisions.
What it does
We wanted an app that suggests us food venues and menu items at each venue. We wanted it to be tailored to our preferences, both our favorite foods and current cravings.
We built Foodoo to do just that.
The user communicates with our chatbot what foods they are craving, and these foods are maintained in a database. Based on the user's location, the frequency of historical food cravings, and the current craved item, our chatbot suggests venues to eat at.
How I built it
- Node.js backend
- Firebase to store user cravings
- Foursquare API to recommend venues based on user location and keywords in description
- Twilio API to communicate with the recommendation chatbot via text
- ngrok to host from localhost and generate webhooks for Twilio functionalities
Challenges I ran into
- Learning how to use the Foursquare API and Firebase Admin SDK
- Learning how to extract keywords from venue descriptions to give user recommendations
What's next for Foodoo
- Greater accessibility to general population by supporting larger restaurant selections