Skip to content

unsw-cse-capstone-project/capstone-project-comp9900-h16a-tahelka

Repository files navigation

FilmFinder

Project Description

People are often looking for movies to watch. In this project we call them FilmFinders. These FilmFinders must be able to search for new movies to watch by keywords that can match on the name, genre, or description of movies. The results that are provided must include the name and the latest associated average rating for each movie. Naturally, these FilmFinders should then be able to select a movie from these search results to view its full details. Here, the full details for a movie should include its name, description, genre, director, cast, latest average rating, as well as all reviews that other FilmFinders have left for this movie. Apart from searching for movies, FilmFinders may want to watch a movie that is similar to one they've already seen. To help with this, FilmFinders should see a list of recommended movies on the details page for a given movie that they want to find “similar” movies to. These recommendations must be based on at least review history, and a selection of multiple attributes that a user can select (eg: genre and/or director). Once a FilmFinder locates a movie they are interested in, they must be able to add (and later remove) this movie to their "wishlist" of movies they'd like to watch. FilmFinders must also be able to leave a review for any number of movies, where each review is to also include a rating from 0 to 5. In further assisting FilmFinders with finding movies of interest, they should be able to view the wishlist of the FilmFinder who has left any given review. They must also be able to browse movies by director or genre, with movies sorted from most popular to least popular based on the movie average rating, and movies with an equal rating being sorted alphabetically (movies with no rating would be treated as having an average rating of 0). Finally, to avoid reviews from authors a FilmFinder does not find credible, a FilmFinder must be able to add any review writer(s) they wish to their "banned" list, meaning that the reviews written by the banned review writer(s) will not be seen or influence the average rating for the FilmFinder who banned the review writer(s).

Project Objectives

Film finders must be able to search for movies they are interested by keywords that match to the movie name, description, or genre, with listed results showing matching movie names, and their latest average rating. A film finder must be able to view the full details of any movie they come across on the platform, including the movie name, description, genre, cast, director, latest average rating, and all associated reviews. The full details page for a given movie must also show recommendations for other movies that are "similar", where such recommendations must be based on at least review history, and a selection of multiple attributes that a user can select (eg: genre and/or director). Film finders must be able to add any movie they come across on the platform to a wishlist of movies they'd like to watch, and must also be able to remove movies from this wishlist. A film finder must also be able to leave a review for any given movie they browse to on the platform, where such a review includes text as well as a rating from 0 to 5. Film finders must also be able to view the wishlist of any other film finder that has left a review for a given movie. The platform must also allow film finders to browse movies by director or genre, with movies sorted from most popular to least popular based on the movie average rating, and movies with an equal rating being sorted alphabetically (movies with no rating would be treated as having an average rating of 0). The platform must also allow film finders to add any review writer(s) they wish to their "banned" list, meaning that the reviews written by the banned review writer(s) will not be seen or influence the average rating for the FilmFinder who banned the review writer(s). Some of the reference links you may find useful for this project are shown below. Please note that project objectives always take priority.

Frontend readme

Backend readme

About

capstone-project-comp9900-h16a-tahelka created by GitHub Classroom

Resources

Stars

Watchers

Forks