Inspiration
Current Internet Movie Databases technologies have limited to no user interaction capabilities. This leads to a huge gap in the use of social network tech in the film community which is a market that can be profitably exploited. During the COVID19 pandemic, activity on social apps has increased. In March 2020, Tinder surpassed its highest number of swipes in a day and OkCupid had a 700% increase in dates. Netflix also saw growth in the number of subscribers during the lockdown. In the first three months of 2020, the number of new signups almost doubled compared to the last months of 2019. And yet, in the biggest online movie databases like IMDb, Letterbox, or TMDb it is not even possible to send a private message.
We designed and developed Filmmate in response to the social need for a platform that helps people establish connections based on movie/TVshow interests.
What it does
Filmmate is an Internet Movie Database in which, as usual, you can rate and review movies. However, when signing up, you can also select your favorite actors, directors, movies... This information, together with the constant stream of data users provided while rating movies, is then used in our matching algorithm which recommends users based on their movie preferences.
How we built it
This was achieved by considering various software technologies and selecting the most suitable ones for the deployment of this application. The information in this section will provide insight into our design choices for the development of Filmmate and the implementation of a film interest-based matching algorithm which is our main feature. Note: Our work was limited to the Android platform only, due to time constraints and a preference for native mobile applications, and the usage of Firebase as the database solution. We did not explore other database scaling strategies and solutions since Firebase handles all the serverside processes. The matching algorithm was implemented using a cosine similarity index which iterated over all of the users in the database. We divide the application's user interface into primary and secondary screens, these being: P1. Recommendations screen: This is the screen on which users can view a curated list of potential matches. As for the matches, their name, age, location1, cover picture, and a short bio about them is shown. Additionally, users can also apply filters on this screen to further refine their list of matches. P2. Film discovery screen: This is the screen on which users can search/discover new shows. Additionally, they can also leave ratings and reviews on various shows. P3. Account screen: This is the screen on which users can get an overview of their account. Here they will be able to view and or edit the reviews and ratings, view and or edit their favorites list, pictures they have uploaded, etc. Secondary screens are rooted in various primary screens: S1. Match details screen: This screen enables a user to get a deeper understanding of their match by seeing their favorite shows, the ratings and reviews they have given certain shows, etc. S2. Matches screen: Once two users have matched with each other, they can begin a new chat session on this screen. This screen contains a list of all chats. S3. Film details screen: rooted from the Film discovery screen 2, the Media details screen allows the user to view additional information about a particular show. Details of shows like release date, genre, duration, cast, etc can be found on this screen. Additionally, users can also leave reviews of particular shows on this screen. S4. Chat session screen: rooted from chat screen 2, this screen shows the messages between two matches users.
Challenges we ran into
We are not experts in UI design so the app did not look as good as we wanted at several points.
Accomplishments that we're proud of
People are missing out on potentially finding people with similar tastes, people who they can share their experiences with, their favorite movies, their passion, their love for a movie, an actor, a director... Watching a movie is such an intimate and personal activity and if we find other people to share these experiences with, it'll get so much better, you’ll get to know people in a deeper way. If we help achieve this we can really be proud of what we've done.
What we learned
It is not easy to make an app in 2 days.
What's next for Filmmate
In conclusion, we have presented the idea behind our technology and how it would work in practice to solve the explained problem. We believe that the matching algorithm can be tested further throughout the deployment of the application and that a good potential alternative could be the PIP similarity index. Some other changes can be made to the application both technically and visually.
Log in or sign up for Devpost to join the conversation.