WE6 Project by Stream Team
Relive the Bingeworthy Moments That Hooked You – Your Netflix Journey, Unfolded Anew!
Previously on Netflix is a web application designed to allow our users to relive and explore their Netflix viewing history in fun and engaging ways. We aim at providing a personalized experience that adds to your streaming experience.
- Project Overview
- Team Members
- Features
- Tech Stack
- Project Structure
- Challenges Faced
- Known Issues
- Future Plans
- Acknowledgements
The aim of this project is to create a website that shows the stats of the user's Netflix watch-history in an interesting and fun way. We focus to enhance user engagement and satisfaction by delivering personalized content recommendations and insights through a scalable and efficient platform.
The target audience for our website includes people who use Netflix regularly, who would enjoy discovering the trends, preferences and viewing habits that our product highlights.
Our project consists of 3 main features:
- Netflix Wrapped - Find out your viewing habits in the last 1 Year
- Netflix Blend - Discover how your Netflix taste aligns with your Friends!
- Roast Bot - Let our cute bot insult your binge taste (respectfully)
To find out more about these features in detail, check out the Features section of this document.
-
Abhaya Trivedi - Netflix Wrapped & RoastBot
-
Akshita Sure - Recommendation System, Integration & Debugging
-
Apoorva Yadav - Frontend Design & Development, Integration & Debugging
-
Khushi Kashyap - Netflix Blend
-
Mitiksha Paliwal - RoastBot and Integration
Inspired by Spotify Wrapped, our goal with this feature was to create a portal to display the user's viewing history in a unique way, bringing out the trends, preferences and viewing habits of the user.
When a user uploads their viewing history file, our website analyzes trends in the csv file over the last 1 year. It finds out the most rewatches, top directors & actors, top shows and many other exciting trends.
This feature allows the user to blend their viewing history with their friend's, and find out how similar their taste is.
The user uploads two csv files, and our website merges the two files to find out the common movies and shows watched. Then, our recommendation system suggests 5 shows and 5 movies that the user can enjoy with their friend, based on both their tastes.
Introduced as a fun feature mainly targeted at the 18-30 age group of Netflix viewers, the Roast Bot is designed to insult the user's viewing habits.
The UI is designed to depict a chat bot system, where the Bot sends texts after specific time intervals, insulting the user for the common trends found in their viewing history.
-
NumPy, Pandas, Seaborn, Matplotlib [Netflix Wrapped, Roast Bot, Blend]
-
SciKit, NumPy, Requests, Pandas [Movie Recommendation]
-
Figma [UI/UX design]
-
HTML, CSS, JS [Web Development]
-
Flask [Integration of Website]
This section describes the organization of the project's codebase.
/previously_on_netflix
│
├── /models # Python code files
│
├── /static # Static css, js & images
| └── images #images used in UI
│
├── /templates # html templates
|
├── app.py # Main integrated file
|
├── imdb.csv # Dataset for imdb ratings
│
├── netflix_titles.csv # Dataset containing Netflix titles
│
├── NetflixViewingHistory.csv # User's upload file
|
├── NetflixViewingHistory1.csv # User's friend upload file
│
├── tmdb_5000_movies.csv # TMDB Dataset of movies
│
└── README.md # Project overview and documentationFinding Datasets for Netflix movies along with accurate ratings, actors and directors was a challenge for us as some data was missing and inconsistent in most of the datasets we found.
We fixed this problem by merging multiple datasets to fill up the gaps.
Different members of the team worked on different python models, and so, while integrating, the input and output formats of all the models were inconsistent.
We restructured the entire code to fit our required format of inputs and outputs.
The animation of Netflix blend and the chat section of the Roast Bot were designed on Figma. While designing, we didn't consider how we would implement it in the code.
We learnt how to develop dynamic components on JS using different learning sources. After multiples tries and several hours spent, we finally managed to get our desired animation.
In case of no file uploaded, the website still shows random garbage data. We need to restrict the website from moving forward unless a file is uploaded.
In case of a user with less viewing history, the website malfunctions at some points. For example, in the Roast Bot feature, some messages appear incomplete due to lack of data in the viewing history to complete it.
The dataset for iMDB rating is very inconsistent and does not provide proper output for different scenarios. We need to work on finding a better dataset for this feature.
We see potential in this project, and would like to deploy the website to a url, and open it for public use. We're currently working on this.
Instead of having just Netflix data, we could allow users to select between which streaming platform they want to try out. For example, Amazon Prime, Disney Hotstar etc.
We plan on adding a feature to allow users to download a contracted summary of all the analysis. This would make it social-media friendly as people would enjoy sharing it on social media.
This project has been a huge learning experience for all of us. We would like to extend our heartfelt thanks to everyone who contributed to the success of the Previously on Netflix project:
Team Members: A big thank you to each member of our team — Abhaya, Akshita, Apoorva, Mitiksha and Khushi — for their dedication, creativity, and hard work throughout this project.
Mentors: We are deeply grateful to our mentors, Asokan, Aruvi, Ganapathi, Priyanka, Kunisha, and everyone else, for their invaluable guidance, support, and wisdom, which helped us navigate challenges and refine our ideas.
Organizationa: We would like to thank Talentsprint & Google for providing us with the platform, resources, and opportunity to bring this project to life. Your support and encouragement have been instrumental in our success.
Community: Lastly, a special thanks to the community around us, including friends, family, and colleagues, for their constant encouragement and feedback.