Inspiration
Originally we were working on creating a kindle plugin that had a similar feature. It would summarize a book up to the current page and provide key insights so that you could continue reading. We wanted to broaden our scope to more than just kindles and Netflix seemed like a good place to start.
What it does
It is an extension for Chrome and any other browsers that are compatible with Chrome Extensions. When you have your browser open, you can use the pop up window. If you are on Netflix then it will ask you to select a show or movie. If you are not on Netflix then it will tell you that you are not on Netflix. It has two buttons that can give a review of a select show or a summary up to the current episode. In the case of movies, it will see how far you are in a movie and use that progress to generate a summary.
How we built it
We first followed a guide to make a very simple Chrome Extension that says Hello. From here, we simply added and changed the functionality to suit our case. A lot of googling was involved, understanding how extensions can interact with webpages and get data from them. We had some knowledge of HTML and CSS, so the designing part was not too bad. Chrome Extensions are basically like mini webpages, utilizing the same tech that websites do. Most of the time was figuring out how to make the scripts that ensured button functionality and used Gemini.
Challenges we ran into
The first issue we ran into was how to get data from the webpage. Netflix has a lot of HTML elements and we needed to find the right ones to get the information we wanted. There were multiple options but we wanted consistency across different types of media on Netflix.
The next issue we ran into was making the call to Gemini. It was hard to test with this and configure the call to the model. Since we were using a fetch call with the url, there were many issues that would resolve to an error 404. Eventually, we were able to properly call the model and get the data we needed. Figuring out the correct model for our use cases was also an issue, but we ended up with 2.0 flash.
Accomplishments that we're proud of
We are really proud of the styling. We wanted to match the Netflix feel and I think we did a good job of that. We also added in some basic animation for the buttons.
What we learned
The biggest thing we learned was how to work together. At the start, we found it hard to work together. Eventually we found our grove and communicated effectively. We were able to delegate tasks and ensure that work actually got done by everyone.
We also learned how to effectively build a project up. Usually we start with something but here we had nothing. I think it was a good experience to figure out where to start from and where to find resources.
What's next for Netflix Summary Extension
We hope to add functionality to other popular streaming services like DisneyPlus. Another aspect that we could improve on is the Gemini calls. The summaries are not perfect. We could implement technologies like RAG or fine tuning to make the model more effective for our use cases.
Log in or sign up for Devpost to join the conversation.