This web application allows a user to view movie titles and schedule viewing parties with their friends.
This App allows a visitor to register or login search the MovieDB using keywords or viewing the top 40 movies. A user can click on a specific title to see more details about the film and have the option to create a viewing party. On the viewing party page, they can schedule a duration, date, and time for the event, and also invite their friends (if they are registered users of the site). Once a party is scheduled, the event is added to the user's dashboard as well as their invited friends' dashboards.
For exploration, use below credentials:
login: [email protected]
password: Test1234!
To install and run this application locally:
- To setup the repository locally, from your command line:
$git clone [email protected]:dunlapww/viewing_party.git
$bundle
$rails db:{create,migrate,seed}
- To run it on your local server type 'rails s' into the command line:
$rails s
- Open your web browser and navigate to http://localhost:3000/
You should now see the welcome page for the application! https://developers.themoviedb.org/
This application uses the below test suite:
gem 'rspec-rails'
gem 'capybara'
gem 'launchy'
gem 'simplecov'
gem 'shoulda-matchers'
gem 'nyan-cat-formatter'
gem 'vcr'
gem 'webmock'
Both features and models should be tested
Ensure the functionality of a component of the user experience. Every aspect of functionality should have a test built for it.
As an example, The below feature test ensures a user can successfully login
Ensures the backend database and classes work properly
As an example, the below test ensures that the User table has the proper validations and relationships, and ensures our validations are working properly:
When you first visit, the user is greeted with the login page where they can either login or register as a new user.
- The user can invite some friends who are also users by typing their email and clicking 'Add Friend'
- Alternatively, they can begin perusing movie titles by clicking 'Discover Movies'
- Searching by either option will send the user to the results page where they will see a list of movies. They can click on any title to see more details about the movie.
- On the movie Details page they are given the option to schedule a viewing party. Clicking 'Create Viewing Party' allows them to scheduling a viewing party
- To schedule a viewing party, a user must select a party duration, date, time, and select some friends to invite. In this case we'll invite only a selection of our friends. Clicking 'Create Viewing Party' schedules the event and returns the user to their dashboard.
- Now the party has been scheduled, the party appears on both the user's dashboard and their invited friends' dashboard. The user now has the option to schedule more parties or to logout.
User Dashboard | Friend Dashboard |
---|---|
This application was created
- using the MovieDB
- Ruby 2.5.3
- Rspec
- George Soderholm
- Kate Tester
- Will Dunlap
These are the resources and people that helped us along the way!
- Complex Passwords
- Email Validation
- Flexbox Guide
- Our Instructors, Dione and Ian
- 2008 BE Cohort!