Skip to content

se24ncsu/PopcornPicks

 
 

Repository files navigation

PopcornPicks🍿: Your Destination for Movie Recommendations

Maintenance Contributors Activity GitHub issues GitHub issues-closed GitHub closed pull requests PRs Welcome License: MIT Unittest codecov GitHub release StyleCheck: pylint HitCount GitHub contributors GitHub Release Date - Published_At GitHub repo size Black Maintainability GitHub closed issues by-label Discord DOI

drawing

Popcorn Picks is your ultimate movie buddy, delivering handpicked film recommendations tailored to your taste! Powered by a lightning-fast algorithm, it makes discovering new favorites and hidden gems a breeze. Dive into a world of movie magic, where you can explore personalized insights, keep track of what you love, and even share recommendations with friends via email. Whether you're a casual viewer or a true cinephile, Popcorn Picks takes your movie-watching experience to the next level—effortlessly and enjoyably!

Contents

Why use PopcornPicks?

Movie Time

PopcornPicks: Your movie recommender! Input movies, get tailored suggestions, and share via email. Elevate your movie choices effortlessly!

  • Efficient: Lightning-fast recommendations for movie buffs! 🚀
  • Adaptable: Tailor the recommendations to your taste.
  • Accessible: Works across all platforms and shells.
  • Insightful: Get movie insights at a glance.
  • Comprehensive: Supports a wide array of user-preferred movies.
  • Simple: Easy installation and setup – start discovering great movies in no time!"

Documentation

Checkout for project documentation here

Project Presentation Videos

Project Overview

animated_video.mp4

New Features 2 minute demo

why contribute video

Project Description

PopcornPicks is a user-friendly movie recommender that curates a tailored list of 10 movie predictions based on user-provided movie preferences. Users can input their favorite movies, and our algorithm refines recommendations based on feedback—Liked, Disliked, or Yet To Watch. Additionally, PopcornPicks offers the convenience of emailing the recommended movies, enhancing the movie-watching experience. For the system architecture and other details, please refer to our documentation here

What docs

View our documentation outlining each class and function of PopcornPicks here

View our autogenerated doco here Doco

How docs

MongoDB integration

NEW in project 2

The project now uses MongoDB Atlas, which is highly scalable and fast.

Docker Container

NEW in project 2

The application is containerized using Docker, ensuring consistent deployment across all environments.

Collaborative Filtering

NEW in project 2

Implements an intelligent recommendation system using collaborative filtering to suggest personalized movie choices.

React Components

NEW in project 2

Utilizes modern React components with hooks for efficient state management and reusable UI elements.

Streaming Links

NEW in project 2

We provide streaming links directly to the appropriate website for easier access.

Dashboard

NEW in project 2

Features an analytics dashboard that displays user-related data like genres.

Create an Account

Users can now create accounts, persisting data including their movie reviews and recommendations

Login to account

The user can log in to their account securly with encrypted passwords stored in our database

Profile and Friends

The user can add friends, view the movies reviewed by the friends, and see their reviewed movies in their profile

Wall

The user can interact with other users, by viewing a community sourced wall of recent moview reviews

Movie Recommendation Mechanism

The user selects upto 5 movies to get a tailored watchlist and provide feedback for the same

Email Notifier

The user sends his/her movies feedback via an email (Notify Me button)

Email Notifier Email

Project 2 Delta

Check out the significant changes that we made for Project 2 here

Our grading scorecard can be found here

Tech stack Used👨‍💻:

Getting Started

Step 1: Git Clone the Repository

git clone https://github.com/se24ncsu/PopcornPicks.git

(OR) Download the .zip file on your local machine from the following link

https://github.com/se24ncsu/PopcornPicks

Step 2: Follow the setup instructions in the installation documentation

https://github.com/se24ncsu/PopcornPicks/blob/main/docs/install.md

OR

Step 1: Use docker image present at Docker Image and use

docker save -o popcorn.tar popcorn

docker load -i popcorn.tar

docker run -d -p 3000:3000 -p 5001:5001 popcorn

Finally, start enjoying personalized movie recommendations!

Future Scope

PopcornPicks is a dynamic project with endless possibilities for expansion and enhancement. Here are some exciting avenues for future development:

  1. Friends Recommend Movies: Let users get personalized movie recommendations from their friends for a more social experience!

  2. Parental Controls & Kids Mode: Family-friendly viewing! Add parental controls and a curated kids’ section to make Popcorn Picks safe and fun for all ages!

  3. Dynamic Movie Collections: Always stay relevant! Offer seasonal and trending collections like “Halloween Specials” and “Oscar Winners” based on user interests.

  4. Fun Trivia & Movie Quizzes: Keep users engaged with interactive trivia and quizzes about movies they've watched!

  5. Tech Improvement: Supercharge the backend with Express and Node.js for smoother, seamless integration with the React frontend! Upgrade the UI from bootstrap to tailwind to material UI.

The future of PopcornPicks is full of potential, and we invite developers, movie lovers, and anyone passionate about cinema to join us in making this platform the ultimate movie companion.

Contribute to the Project!

Please refer to the CONTRIBUTING.md if you want to contribute to the PopcornPicks source code. Follow all the guidelines mentioned in the same and raise a pull request, we would love to look at it ❤️❤️!

Contributors

Project 2
Srimadh V Rao

Akul G Devali


Manav D Shah

Srimadh Rao
Akul Gopal Devali
Manav D Shah

Contact

In case of any issues, please e-mail your queries to [email protected] or raise an issue on this repository.
Our team of developers monitors this e-mail address and would be happy to answer any and all questions you have about setup or use of this project!

Join the PopcornPicks Community:

Contribute to the project and help us improve recommendations. Share your experience and film discoveries with us. Together, let's make PopcornPicks the ultimate movie companion! PopcornPicks is more than just code; it's a passion for cinema, and we invite you to be a part of this exciting journey. Start exploring, sharing, and discovering movies like never before with PopcornPicks! Let's make movie nights extraordinary together!

License

This project is under the MIT License.

About

NCSU CSC 510 project - A movie recommender system

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 39.9%
  • HTML 34.8%
  • JavaScript 15.2%
  • CSS 9.7%
  • Dockerfile 0.4%