A social movie recommendation app designed to enhance your movie-watching experience
MovieBoxPro
Movie Box is a social movie recommendation app designed to enhance your movie-watching experience. Discover personalized movie recommendations based on your interactions within the app, including survey, comments, likes, and following. Connect with fellow movie enthusiasts and explore a community of users who share your passion for films. Enjoy a tailored recommendation system and engage in social interactions that revolve around the love of movies!
User Stories
- User can Register
- User can Login.
- User can Logout.
- Survey for user preferences
- Personalized recomendations based on User Interaction(survey, comments, likes, and following)
- View movie Details(synopsis, rating, poster, related movies, trailer and etc)
- Like a movie
- Comment under a movie
- Search for movies
- Explore movies (popular, now playing and Upcoming)
- View User Profile (following count, Like count, Username, profile pic, liked movies , user comments and selected generes)
- User can view other users profile
- User can follow other users
Recomendation System
The movie recommendation algorithm in this project is designed to provide personalized recommendations based on genre preferences. User preferences within each genre are determined through an equal distribution of four factors:
Initial Survey: The user’s response to the initial survey indicates their initial inclination towards specific genres.
Likes: The percentage of movies liked by the user within each genre influences their preference for those genres.
User Comments: The percentage of comments made by the user within each genre reflects their engagement and interest.
Following: The percentage of users the individual follows who have a preference for a particular genre helps identify commonly appreciated genres.
By analyzing these factors, the algorithm assigns a rating to each genre, determining its relevance to the user’s preferences. The top four genres with the highest ratings are then selected as the user’s genre preferences, forming the basis of the personalized movie recommendations.
Database Schema
Database Schema:
-
Email
- email
- username: String
- friends: [String]
- liked: [String]
- preferences: [String]
- initialized: [String]
- commented: [String]
- likeCount: Int
- commentCount: Int
- User Preferences:
- genre
- likes: Int
- commented: Int
- initial: Bool …(Additional genres)
- genre
- email
-
Comments
- Movie 1
- comment: [Comment]
- Movie 1
Welcome screen
Welcome.mp4
Register
register.MP4
Login
Login.MP4
Survey
survey.mp4
Recommendations
Recommendation.MP4
Search
Search.MP4
Explore
Explore.MP4
Movie Details
Detail.MP4
Comment
Comment.mp4
Like
like.mp4
Trailer
Trailer.mp4
Follow
follow_zr5LQ4de.mov
Profile and Logout
profile_qAmFc1sH.mov