My friends and I are some of the most indecisive people in general so when it comes to food, it sometimes takes us more than 30 minutes to find a place to eat at just because we debate about finding the BEST place on Yelp. The day before this hackathon (4/16/2021) we spent 45 minutes debating which boba place we should go to since there are many good locations in San Jose.

What it does

Best of Yelp is a web application that utilizes Yelp's API with the intention (didn't finish) of returning the top 5 places that serve a specified food in a specified area. A user is able to register using an email and password that is authorized through Google's Firebase which then stores the users' username and email into the realtime database. The 'Best Boba Places in Irvine' tab demonstrates what I wanted the output to be if a user were to type 'Boba' and 'Irvine' on the home page.

How we built it

  • Python to implement YelpFusion's API
  • Flask as the web framework
  • HTML/CSS and Bootstrap for the front end
  • Google's Firebase for user authentication and as a realtime database

Challenges we ran into

This is my first time working with the front end/back end and it made me realize how difficult it is to work on alone. I had trouble reading through HTML/CSS and Bootstrap documentation which delayed my progress significantly.

Accomplishments that we're proud of

Even though it's no where near finished, I'm proud of my implementation of Firebase to authorize the creation of a user which can be authorized through log in. It's amazing to see in real time the database I set up being filled with users by registering through using the web app. I'm also proud of how much I learned about getting a website deployed on a local host and in general Flask/Jinja templating.

What we learned

By reading through documentation, I learned how to use Flask and Jinja to combine Python code with HTML and how to use HTML and CSS to create the front end of my web application. I also learned how to properly make calls to the Yelp Fusion API by using a secret key.

What's next for Best of Yelp

  • The home page should properly take in user input and display the top 5 restaurants in whatever food category they type in any location
  • The top restaurants found can be saved to an account through the Firebase database which can then be easily accessed just by logging into an account. All saved lists can hopefully be displayed through homepage.
Share this project: