travel-consensus / cinemaplate

End dinner and a movie indecision paralysis.
http://cinemaplate.herokuapp.com
0 stars 1 forks source link

CinemaPlate

Stories in Ready Stories in Progress Build Status

Getting Started

$ npm install
$ npm start

Local Development (DB)

Follow full instructions in db/db_setup.js.

Tests

There is a basic test framework in your test/ folder. To run the tests, simply run npm test.

Continuous Integration

On every pull request Travis will automatically run and perform the following:

If any of the above fail, travis will report on what went wrong on the Github pull request page.

Browserify Middleware

Cinemaplate is built on top of node-catapult. The browserify-middleware piece of catapult provides concatening JavaScript and SCSS files.

Environment Variables

The Yelp API requires 4 separate keys in order to access, however all 4 are provided in one request after creating an account at: https://www.yelp.com/developers/.

Instructions for accessing The Movie Database API are available here: https://www.themoviedb.org/documentation/api

Stack

Database

See references directory

Data Flow

The most challenging part of the data flow is cross-referencing the Reddit API with the Movie Database API.

The Reddit API returns 100 results, which are then sent through the MovieDB API.

MovieDB returns loose matches, so we then filter those results for an exact match.

Reddit API provides the Netflix url link, and MovieDB provides the summary and rating.

These are combined and inserted into the database as a single movie.

The Yelp API returns 200 restaurants based on the provided zipcode, which is then filtered by those with Eat24 capabilities.

Once the database is populated with restaurants and movies, we simply return a random row from each table and display them to the user.

Road Map