Viewing Party is a Rails web application in which users can explore movie options and create a viewing party event for themselves and include other users of the application. This repository is an extension of the Turing Viewing Party Lite Pair Project with additions of authentication, authorization, and session features. The Movie Database(TMDB) API endpoints are used to power movie searches and render various movie data to the user.
- Visit https://viewing-party-lite-tj.herokuapp.com/
- Register as a new user (can use dummy email) or log in as:
user@example.com
, password:supersecret
.
- Pages
- Welcome page with links to Register/Login/Discover movies
- User Login page
- User registration page (*user authentication)
- User Dashboard with sections to add/view friends and view past/(and cancel/leave) upcoming viewing parties (*user authentication)
- Discover movie page(logged in or not) that allows movie searches by name or top movies; shows 20 results per page.
- Movie show page that displays movie title, runtime, genre, rating, summary, cast and review author and content.
- New Party page that allows user to start a viewing party (*user authentication, *custom validator for party duration)
- Admin dashboard that allows admin to view all users' email and creation date and view/delete any viewing parties (*admin authentication)
- Admin user page(via user email link on admin dashboard) that allows admin to view user's dashboard.
- Total of 5 API TMDB endpoints via API authentication consumed following facades, poros, services framework structure:
- Top20 movie search:
https://api.themoviedb.org/3/movie/top_rated
- Partial movie title search:
https://api.themoviedb.org/3/search/movie?&query=#{keyword}&page=#{page}
- Movie info search:
https://api.themoviedb.org/3/movie/#{movie_id}
- Movie cast search:
https://api.themoviedb.org/3/get_url("/movie/#{movie_id}
- Movie review search:
https://api.themoviedb.org/3/movie/#{movie_id}/reviews
- Top20 movie search:
API endpoints Reference: The Movie Database
- Fork and/or Clone the repo
git clone git@github.com:jenniferhalloran/viewing_party_lite.git
- Install gems and dependencies
bundle install
- Set up figaro to securely use API key
bundle exec figaro install
- To use the API services provided by TMDB, add the following line in the hidden
root/application.yml
file generated from step 3:
tmdb_api_key': '6a31677f95a3e6923d1ecd6e9b5fd07c
- Setup and seed database
rails db:create
rails db:seed
- Run run test suit
bundle exec rspec
- Co-Author: Jennifer Halloran
- Co-Author: Thomas Haines
The soft search function is powered by the movie database API services: