The recommendation engine displays a list of 10 movies to the user and allows them to rate them, and then based on their ratings it displays the recommendations.
The user can also filter the results based on Year of Release, Running Time, Directors, and Genre.
The UI adapts to the OS and might look different on your system, the screenshots below were taken on Ubuntu 18.04, with Canta theme
import the project into IntelliJ and select 'Use existing sources' when prompted.
Open the TempLoader.java file and run it
Refer this diagram to understand how the different classes interact with each other, and how the interfaces are implemented. The diagram was generated automoatically inside InterlliJ.
(Click on the image to enlarge it)
The recommendation engine uses an open source data set from the Movie Tweetings project which is present in the 'data' Folder.
The project also uses Apache Commons and edu.duke open source Java Libraries, which are also included in the source.
- The recommendation results sometimes also include movies that the user rated to get the recommendation in the first place
- Add scrolling to the recommendation window
(easy fixes - contributions welcome)