This Movie_house is a web-dev project, aims at recommending the movies and series to the user based on the search history of the user with the help of ML Algorithms. It also recommends the content on the basis of user's Genre history as well as genre based filtering of the content. Along with all these, users can create rooms together and hang out and chill while watching the movies. This project is solely designed and developed by our team System_Reboot (Shashank Singh,Himanshi Sharma,Ankit Gupta).
- Run data.py file(python3)
- npm install
- node index
- Features
- Technology Stack
- Workflow $ Database
- Future Plans
- Limitations
- Troubleshooting
- Images
- Credits
- Search Movie : Option is provided to Search movie in the website which return 6 related movies including searched one
- Search Based Recommendation : It recommends related moive to the login user according to his/her search history
- Popularity based Action Movie Recommendation : Recommends action movie to the user on the basis of the popularity of the movie
- Popularity based Thriller Movie Recommendation : Recommends thriller movie to the user on the basis of the popularity of the movie
- Popularity based Adventure Movie Recommendation : Recommends adventurous movie to the user on the basis of the popularity of the movie
- Create Meets : User can create room in which two or more member can come together and watch movie and can chat simultaneously
- Video Conversation : 2+ people can have a video conversation in this website about moive or something
- Turn off / on Camera : Users are given the option to either turn on or off their webcam during call
- Mute / Unmute Audio : Users are given the option to either turn on or off their mic during call
- Mute All Member : A user can mute other users in the call to avoid unwanted sound
- Name on Hovering : While hovering on a video box one can see the Member name
- Chat : While watching the movie , users can chat simultaneously
- Sign Up / Log In : If user watch moives regularly and hosts regular room and want to store the chats, list of created room and quickly remind people of the room then they can log in
- Reminders : Server automatically remind users about their room at the time of their room
- Contact Us : User can contact us and give feedback which will help me
- Help Page : A help page is provided where every question regarding the use of the website is provided
- Create Groups / Join Groups : User can create many groups, each with a key to keep the group private and secure from unwanted people
- Group Details in Group Dashboard : In the dashboard, one can see the details such as key and members so that if one forgets the key, they can find it there and also know who all are a part of the group
- Sound Alerts : This is provided so that the people in the call become aware of the entering of a new person
- Node.js - Back End
- Python - Recommendation system
- MongoDB (Mongoose) - Database
- Bcrypt - Hash Passwords
- Express-session - To manage sessions
- EJS - Templating
- CSS - Designing (also used Bootstrap's framework and AOS' library to design)
- JavaScript - For interactivity (also used jQuery)
- Socket.io - For real time communication
- Peer.js - Simplifies WebRTC's use
- Nodemailer - Sending Reminder Mails
- Node-cron - Scheduling Reminders
- Pickle - For creating Model file
- Cold-start Problem : Recommendation for new user and new movies was a problem for me. So for new user I recommended most popular movie and new movie are recommend to user according to genres and keyword
- Integration of Python and Nodejs : using "require("child_process").spawn" I got rid of this
Recommend similar choice user :- Recommendation of user those who watch moive of similar genres and keyword.
- I plan to add genres and keyword of all the searched movie
- convert whole thing in vector using countVectorizer
- store distance of one user with all other user in matrix using cosine_similarity
- Then recommend most similar user
- If you are not able to see the other user then try checking your connection and try using mobile data
- If you are not able to connect with the other user - go to inspect -> settings -> untick "Enable Java Script Source Maps"
- Developer -
- Himanshi Sharma
- Shashank singh
- Ankit Gupta