Giter VIP home page Giter VIP logo

restaurant_recommendation_site's Introduction

Restaurant Recommendation Site (HTML, CSS, JavaScript, MySQL, MongoDB, Apache Tomcat)

This is a website that recommends restaurants to its users using Yelp data. The users can search and like restaurants on the site and the site will take these requests, query/update the backend database for relevant info and supply the info to the responses.

This project consists of both frontend (HTML, CSS, JavaScript) code and backend (Java Servlet) code.

In the frontend JavaScript is used to control the CSS to show and hide different components in the page, and html has all of the text contents and sets the structure of the website.

In the backend the code provides three endpoint to support the frontend, and for each of the endpoit, they query the databases behind them. This website utilizes both MySQL and MongoDB database as storage for the data fetched from Yelp's API, as well as the changes user posts to the website.

Frontend

Alt Text

Main Features

This calls the Yelp's api and get the restraunts nearby based on your GPS location, and show them here as well as store them in the mysql database.

This calls history end point in the backend, which query the history table and get the restaurant that certain user has marked at starred.

This calls the recommend end point in the backend, which uses a collaborative filtering algorithm to determine which restaurant to based on user's history.

Backend

End points

####SearchRestaurant: http://localhost:8080/Dashi/restaurants takes the search request from users and show all nearby restaurants the user hasn't visited

####VisitHistory: http://localhost:8080/Dashi//history take get request from site/history and show all visited restaurants of a user

####RecommendRestaurants: http://localhost:8080/Dashi//recommendation recommend restaurants based on a user's past activities

DataBase

This website utilizes two databases, one sql database and one nosql database.

MySQL

This database has three tables: business, user, history

MongoDB

This database has two tables: business, user(history is contained in this table to form a denormalized table)

Connection to Yelp's Api

This part connects to the Yelp's API with a TwoStep OAuth example provided by Yelp, and fetches restaurants bases on a certain location.

restaurant_recommendation_site's People

Contributors

ppca avatar

Stargazers

 avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.