Keep-Watching is a movie recommendation and review app build using React for the front-end, express for the back-end, flask for handelling the recommendations and similar movies section, mongoDB for the database
This project uses SurpriseLib for dealing with Cosine similarity based nearest neighbours algorithm for generating recommendations.
For implimentation purpose dummy users are created using moviewlens 100K dataset. Each user has at least 20 movie ratings.
Recommendations are based on similar users(UserBased Collaborative Filtering) and similar movies (itemBased colaborative filtering)
(in deployment the item based model exceeds the available memory limit on the free tier of Heroku so this has not been included)
If you like a movie you can easily look for more movies similar to the one you liked in the sililar-movies section available for all the movie-pages
Signin in with Google, Signin with Github have been tested in developement but have not been added to the deployed build yet.
Clone the repo or download and unzip it
Use command propmt to navigate to the extracted folder
Run
npm install
navigate to the Client folder and run
npm install
For Developement
in the root folder
// in the root folder in the cmd run npm run dev // this will run both the client and the server in the same command prompt
Otherwise to run the client and server seperately
in the root folder run
nodemon server.js
in another command prompt in the client folder run
npm start
You can use either one of these methods
Author: yashodeepchikte
Demo: https://keepwatching.herokuapp.com/
Source Code: https://github.com/yashodeepchikte/Keep-Watching
#reactjs #react #javascript