Keep-Watching is a movie recommendation and review app build using React

Keep-Watching

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

Here is the flask server https://github.com/yashodeepchikte/Keep-Watching-server

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.

homepage image

Features

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)


Similar Movies

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/sugnup with email

Signin in with Google, Signin with Github have been tested in developement but have not been added to the deployed build yet.

Follow users to see their activity in your Feed

user feed image
user feed image

Search Movies and See their description, imdb ratings, budget, Earnings, director, cast etc.

searchMovies.PNG

searchMovies.PNG

Add Movies to WishList

Admin View

User’s page

Setup And Usage

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

For deployment npm was used so avoid using yarn to avoid the .loc file conflicts in deployment

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

Login Credentials

You can use either one of these methods

  • you can login with your Google or GitHub account
  • you can Sign up using any valid email (dosent have to be a valid email)
  • you can use this dummy user
    email : abcd@gmail.com
    Password : 123456

To be done

  • Admin view, admin should be able to see all the activity on the website
PS:- i don’t own or claim the egg logo used for the favicon it was copied from google images

Download Details:

Author: yashodeepchikte

Demo: https://keepwatching.herokuapp.com/

Source Code: https://github.com/yashodeepchikte/Keep-Watching

#reactjs #react #javascript

Keep-Watching is a movie recommendation and review app build using React
14.05 GEEK