kevxo / viewing_party

Starter repo for a backend module 3 project.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Viewing Party is an application with a focus on API consumption that was created utilizing the viewing party project base repo as part of the Turing School of Software and Design Backend Module 3 cirriculum.

Table of Contents

  1. About This Project
  2. Local Setup
  3. Testing
  4. Deployment
  5. Schema Design
  6. Development Team
  7. Learning Achievements

About This Project

Viewing party is an application in which users can explore movies, add friends, and create parties to watch movies together! Users can search for a specific movie or they can explore a list of the current top movies. A user can click on a chosen movie's title to be taken to a details page to learn more about that movie including information about the runtime, genre, cast members, and reviews.

Once a user has chosen a movie, and selected friend's they would like to invite, the user can create a viewing party on a given date, at a specific start time, and for a given duration!

Top 40 Movies:

movies_show_page_reduced_opacity

Movie Details:

shawhank_movie_show

Local Setup

This project requires:

  • Ruby 2.5.3.
  • Rails 5.2.4.3
  • Fork this repository
  • Clone your fork
  • From the command line, install gems and set up your DB:
    • bundle install
    • rails db:create
    • rails db:migrate
  • Install Figaro with bundle exec figaro install to create an application.yml file locally
  • Secure an API key from TheMovieDB API
  • Add your API key to the application.yml file (/config/application.yml): MOVIE_API_KEY: <your API key>

Testing

This app utilizes Travis CI for integrated testing Build Status

Run the test suite with bundle exec rspec

Viewing Party utilizes the following gems and libraries in testing:

Deployment

For local deployment run your development server with rails s and visit localhost:3000 to see the app in action.

Viewing Party is deployed remotely via Heroku (NOTE - is there a heroku badge?)

Schema

viewing_party_2008_schema

Development Team

Jesse Mellinger

Kevin Cuadros

Chris Allbritton

The team utilized the following resources for build out:

TheMovieDB API

User stories

Example wireframes

Learning Achievements

  • Build an application that requires basic authentication
  • Consume JSON APIs that require authentication
  • Implement self-refential relationships in ActiveRecord
  • Utilize continuous Integration using Travis CI
  • Apply RuboCop’s style guide for code quality
  • Deploy remotely (Heroku)

About

Starter repo for a backend module 3 project.


Languages

Language:Ruby 82.3%Language:HTML 15.2%Language:JavaScript 1.3%Language:SCSS 1.3%