The All Seeing Eye is an app to discover movies you want to watch for later so you don't get into a decision-making black hole when you actually have time to watch one. I did the UX design and wrote all the code.
TASE runs on a Heroku server with a Mongo, Express, and Node.js backend and a React front-end. Front-end state is managed in Redux with Redux Thunk, and I designed the UI and wrote the CSS without using any front-end libraries. TASE is responsive and works well on mobile devices. Users create accounts and log in with Google OAuth (with help from Passport.js).
The movie info is pulled from The Movie Database API and cached in Mongo to reduce the number of calls to the API. The Discover section is paginated to increase load speed.
Users can filter the highest rated movies from TMDB by release year and genre, and save movies to a watchlist for later, or mark them as seen so they aren't surfaced in the Discover tab. The app caches movies after they've been loaded or saved to a list to reduce the number of calls to the TMDB API.
The app is functional, but I still have a backlog of features to work on, including:
Search for movies by title
Related movie suggestions
Creating more movie filters to improve the discovery experience, e.g. by number of reviews, average rating, cast and director
Building friend relationships between users and prioritising movies that your friends have also saved in the Watchlist and Discover sections