se24ncsu / PopcornPicks

NCSU CSC 510 project - A movie recommender system
Other
0 stars 0 forks source link

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

PopcornPicks is more than just a movie recommender system; it's a gateway to a world of cinematic adventures. With an ever-expanding library of films and a powerful recommendation algorithm, PopcornPicks is here to transform the way you discover, enjoy, and connect with movies.

Contents

Why use PopcornPicks?

<img src="https://media.giphy.com/media/l1J9GIXk9w7OYsd5S/giphy.gif" alt="Starship with iTerm2 and the Snazzy theme" width="40%" align="right" />

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

Documentation

Checkout for project documentation here

Project Presentation Videos

New Features 2 minute demo

why contribute video

Why contribute?

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

Movie Recommendation Mechanism

(Modified in project 3)

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

Create an Account

(NEW in project 3)

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

Login to account

(NEW in project 3)

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

Profile and Friends

(NEW in project 3)

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

Wall

(NEW in project 3)

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

Project 3 Delta

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

Our grading scorecard can be found here

Tech stack Used👨‍💻:

Getting Started

Step 1: Git Clone the Repository

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

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

https://github.com/brwali/PopcornPicks

Step 2: Follow the setup instructions in the installation documentation

https://github.com/brwali/PopcornPicks/blob/master/docs/install.md

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. User Profiles and Preferences: Continue to improve user profiles. More features could be added with friend interaction, such as ability to send messages. More data on the users could be persisted such as preferences and watch history for a more personalized movie discovery experience.

  2. Integration with Streaming Services: Integrate with popular streaming services to provide real-time availability information and seamless access to recommended movies.

  3. Improved Recommendation Algorithm: Enhance the recommendation engine with more advanced machine learning models and collaborative filtering techniques to provide even more accurate and personalized movie suggestions.

  4. Frontend rework: Currently the frontend uses jquery, which is a bit dated. As the program becomes more complex, it may be nice to use a component based architecture such as React, Angular, or Blazor.

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 3
Brandon Walia

Nathan Kohen


Nicholas Foster


Robert Kenney

Aditya Pai Brahmavar
Ananya Mantravadi
Rishi Singhal
Samarth Shetty

Contact

In case of any issues, please e-mail your queries to popcornpicks777@gmail.com 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.