diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000000000..38c4669fb
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,2 @@
+log/development.log
+tmp/
diff --git a/Gemfile b/Gemfile
new file mode 100644
index 000000000..8bb9bcce3
--- /dev/null
+++ b/Gemfile
@@ -0,0 +1,75 @@
+source 'https://rubygems.org'
+
+git_source(:github) do |repo_name|
+ repo_name = "#{repo_name}/#{repo_name}" unless repo_name.include?("/")
+ "https://github.com/#{repo_name}.git"
+end
+
+
+# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
+gem 'rails', '~> 5.1.5'
+# Use postgresql as the database for Active Record
+gem 'pg', '>= 0.18', '< 2.0'
+# Use Puma as the app server
+gem 'puma', '~> 3.7'
+# Use SCSS for stylesheets
+gem 'sass-rails', '~> 5.0'
+# Use Uglifier as compressor for JavaScript assets
+gem 'uglifier', '>= 1.3.0'
+# See https://github.com/rails/execjs#readme for more supported runtimes
+# gem 'therubyracer', platforms: :ruby
+
+# Use CoffeeScript for .coffee assets and views
+# gem 'coffee-rails', '~> 4.2'
+# Turbolinks makes navigating your web application faster. Read more: https://github.com/turbolinks/turbolinks
+gem 'turbolinks', '~> 5'
+# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
+gem 'jbuilder', '~> 2.5'
+# Use Redis adapter to run Action Cable in production
+# gem 'redis', '~> 4.0'
+# Use ActiveModel has_secure_password
+# gem 'bcrypt', '~> 3.1.7'
+
+# Use Capistrano for deployment
+# gem 'capistrano-rails', group: :development
+
+group :development, :test do
+ # Call 'byebug' anywhere in the code to stop execution and get a debugger console
+ gem 'byebug', platforms: [:mri, :mingw, :x64_mingw]
+ # Adds support for Capybara system testing and selenium driver
+ gem 'capybara', '~> 2.13'
+ gem 'selenium-webdriver'
+end
+
+group :development do
+ gem "better_errors"
+ gem "binding_of_caller"
+end
+
+group :development do
+ # Access an IRB console on exception pages or by using <%= console %> anywhere in the code.
+ gem 'web-console', '>= 3.3.0'
+ gem 'listen', '>= 3.0.5', '< 3.2'
+ # Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring
+ gem 'spring'
+ gem 'spring-watcher-listen', '~> 2.0.0'
+end
+
+# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
+gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]
+
+gem 'jquery-turbolinks'
+gem 'jquery-rails'
+group :development, :test do
+ gem 'pry-rails'
+end
+
+group :development do
+ gem 'better_errors'
+ gem 'binding_of_caller'
+end
+
+group :test do
+ gem 'minitest-rails'
+ gem 'minitest-reporters'
+end
diff --git a/Gemfile.lock b/Gemfile.lock
new file mode 100644
index 000000000..8c4827325
--- /dev/null
+++ b/Gemfile.lock
@@ -0,0 +1,225 @@
+GEM
+ remote: https://rubygems.org/
+ specs:
+ actioncable (5.1.6)
+ actionpack (= 5.1.6)
+ nio4r (~> 2.0)
+ websocket-driver (~> 0.6.1)
+ actionmailer (5.1.6)
+ actionpack (= 5.1.6)
+ actionview (= 5.1.6)
+ activejob (= 5.1.6)
+ mail (~> 2.5, >= 2.5.4)
+ rails-dom-testing (~> 2.0)
+ actionpack (5.1.6)
+ actionview (= 5.1.6)
+ activesupport (= 5.1.6)
+ rack (~> 2.0)
+ rack-test (>= 0.6.3)
+ rails-dom-testing (~> 2.0)
+ rails-html-sanitizer (~> 1.0, >= 1.0.2)
+ actionview (5.1.6)
+ activesupport (= 5.1.6)
+ builder (~> 3.1)
+ erubi (~> 1.4)
+ rails-dom-testing (~> 2.0)
+ rails-html-sanitizer (~> 1.0, >= 1.0.3)
+ activejob (5.1.6)
+ activesupport (= 5.1.6)
+ globalid (>= 0.3.6)
+ activemodel (5.1.6)
+ activesupport (= 5.1.6)
+ activerecord (5.1.6)
+ activemodel (= 5.1.6)
+ activesupport (= 5.1.6)
+ arel (~> 8.0)
+ activesupport (5.1.6)
+ concurrent-ruby (~> 1.0, >= 1.0.2)
+ i18n (>= 0.7, < 2)
+ minitest (~> 5.1)
+ tzinfo (~> 1.1)
+ addressable (2.5.2)
+ public_suffix (>= 2.0.2, < 4.0)
+ ansi (1.5.0)
+ arel (8.0.0)
+ better_errors (2.4.0)
+ coderay (>= 1.0.0)
+ erubi (>= 1.0.0)
+ rack (>= 0.9.0)
+ bindex (0.5.0)
+ binding_of_caller (0.8.0)
+ debug_inspector (>= 0.0.1)
+ builder (3.2.3)
+ byebug (10.0.2)
+ capybara (2.18.0)
+ addressable
+ mini_mime (>= 0.1.3)
+ nokogiri (>= 1.3.3)
+ rack (>= 1.0.0)
+ rack-test (>= 0.5.4)
+ xpath (>= 2.0, < 4.0)
+ childprocess (0.9.0)
+ ffi (~> 1.0, >= 1.0.11)
+ coderay (1.1.2)
+ concurrent-ruby (1.0.5)
+ crass (1.0.3)
+ debug_inspector (0.0.3)
+ erubi (1.7.1)
+ execjs (2.7.0)
+ ffi (1.9.23)
+ globalid (0.4.1)
+ activesupport (>= 4.2.0)
+ i18n (1.0.0)
+ concurrent-ruby (~> 1.0)
+ jbuilder (2.7.0)
+ activesupport (>= 4.2.0)
+ multi_json (>= 1.2)
+ jquery-rails (4.3.1)
+ rails-dom-testing (>= 1, < 3)
+ railties (>= 4.2.0)
+ thor (>= 0.14, < 2.0)
+ jquery-turbolinks (2.1.0)
+ railties (>= 3.1.0)
+ turbolinks
+ listen (3.1.5)
+ rb-fsevent (~> 0.9, >= 0.9.4)
+ rb-inotify (~> 0.9, >= 0.9.7)
+ ruby_dep (~> 1.2)
+ loofah (2.2.2)
+ crass (~> 1.0.2)
+ nokogiri (>= 1.5.9)
+ mail (2.7.0)
+ mini_mime (>= 0.1.1)
+ method_source (0.9.0)
+ mini_mime (1.0.0)
+ mini_portile2 (2.3.0)
+ minitest (5.11.3)
+ minitest-rails (3.0.0)
+ minitest (~> 5.8)
+ railties (~> 5.0)
+ minitest-reporters (1.2.0)
+ ansi
+ builder
+ minitest (>= 5.0)
+ ruby-progressbar
+ multi_json (1.13.1)
+ nio4r (2.3.0)
+ nokogiri (1.8.2)
+ mini_portile2 (~> 2.3.0)
+ pg (1.0.0)
+ pry (0.11.3)
+ coderay (~> 1.1.0)
+ method_source (~> 0.9.0)
+ pry-rails (0.3.6)
+ pry (>= 0.10.4)
+ public_suffix (3.0.2)
+ puma (3.11.3)
+ rack (2.0.4)
+ rack-test (1.0.0)
+ rack (>= 1.0, < 3)
+ rails (5.1.6)
+ actioncable (= 5.1.6)
+ actionmailer (= 5.1.6)
+ actionpack (= 5.1.6)
+ actionview (= 5.1.6)
+ activejob (= 5.1.6)
+ activemodel (= 5.1.6)
+ activerecord (= 5.1.6)
+ activesupport (= 5.1.6)
+ bundler (>= 1.3.0)
+ railties (= 5.1.6)
+ sprockets-rails (>= 2.0.0)
+ rails-dom-testing (2.0.3)
+ activesupport (>= 4.2.0)
+ nokogiri (>= 1.6)
+ rails-html-sanitizer (1.0.4)
+ loofah (~> 2.2, >= 2.2.2)
+ railties (5.1.6)
+ actionpack (= 5.1.6)
+ activesupport (= 5.1.6)
+ method_source
+ rake (>= 0.8.7)
+ thor (>= 0.18.1, < 2.0)
+ rake (12.3.1)
+ rb-fsevent (0.10.3)
+ rb-inotify (0.9.10)
+ ffi (>= 0.5.0, < 2)
+ ruby-progressbar (1.9.0)
+ ruby_dep (1.5.0)
+ rubyzip (1.2.1)
+ sass (3.5.6)
+ sass-listen (~> 4.0.0)
+ sass-listen (4.0.0)
+ rb-fsevent (~> 0.9, >= 0.9.4)
+ rb-inotify (~> 0.9, >= 0.9.7)
+ sass-rails (5.0.7)
+ railties (>= 4.0.0, < 6)
+ sass (~> 3.1)
+ sprockets (>= 2.8, < 4.0)
+ sprockets-rails (>= 2.0, < 4.0)
+ tilt (>= 1.1, < 3)
+ selenium-webdriver (3.11.0)
+ childprocess (~> 0.5)
+ rubyzip (~> 1.2)
+ spring (2.0.2)
+ activesupport (>= 4.2)
+ spring-watcher-listen (2.0.1)
+ listen (>= 2.7, < 4.0)
+ spring (>= 1.2, < 3.0)
+ sprockets (3.7.1)
+ concurrent-ruby (~> 1.0)
+ rack (> 1, < 3)
+ sprockets-rails (3.2.1)
+ actionpack (>= 4.0)
+ activesupport (>= 4.0)
+ sprockets (>= 3.0.0)
+ thor (0.20.0)
+ thread_safe (0.3.6)
+ tilt (2.0.8)
+ turbolinks (5.1.0)
+ turbolinks-source (~> 5.1)
+ turbolinks-source (5.1.0)
+ tzinfo (1.2.5)
+ thread_safe (~> 0.1)
+ uglifier (4.1.8)
+ execjs (>= 0.3.0, < 3)
+ web-console (3.5.1)
+ actionview (>= 5.0)
+ activemodel (>= 5.0)
+ bindex (>= 0.4.0)
+ railties (>= 5.0)
+ websocket-driver (0.6.5)
+ websocket-extensions (>= 0.1.0)
+ websocket-extensions (0.1.3)
+ xpath (3.0.0)
+ nokogiri (~> 1.8)
+
+PLATFORMS
+ ruby
+
+DEPENDENCIES
+ better_errors
+ binding_of_caller
+ byebug
+ capybara (~> 2.13)
+ jbuilder (~> 2.5)
+ jquery-rails
+ jquery-turbolinks
+ listen (>= 3.0.5, < 3.2)
+ minitest-rails
+ minitest-reporters
+ pg (>= 0.18, < 2.0)
+ pry-rails
+ puma (~> 3.7)
+ rails (~> 5.1.5)
+ sass-rails (~> 5.0)
+ selenium-webdriver
+ spring
+ spring-watcher-listen (~> 2.0.0)
+ turbolinks (~> 5)
+ tzinfo-data
+ uglifier (>= 1.3.0)
+ web-console (>= 3.3.0)
+
+BUNDLED WITH
+ 1.16.1
diff --git a/README.md b/README.md
index 53f2948a7..7db80e4ca 100644
--- a/README.md
+++ b/README.md
@@ -1,187 +1,24 @@
-# Rideshare Rails
+# README
-## Introduction
+This README would normally document whatever steps are necessary to get the
+application up and running.
-In this project you will build a website to model a small community ridesharing app.
+Things you may want to cover:
-This is a [stage 2](https://github.com/Ada-Developers-Academy/pedagogy/blob/master/rule-of-three.md) pair project. It is due EOD on Friday 4/6/2018.
+* Ruby version
-There will be two main pieces of functionality:
-- New passengers and drivers can sign up for the service and review their information
-- Passengers can request and rate trips, and drivers can see their aggregated statistics
+* System dependencies
-This project is meant to be exploratory. Take time to try to dive into each piece of Rails (routes, controllers, models, views). This project is built so that you and your partner can create the waves yourself based on the dependencies of the requirements given.
+* Configuration
-## Learning Goals
+* Database creation
-This project should demonstrate your ability to:
+* Database initialization
-1. Create multiple related Active Record Models
-1. Create models with validations and methods performing business logic
-1. Craft effective RESTful routing
-1. Work with a partner to create an attractive and functional Rails site
-1. Practice Agile methodology
-1. Work with a large amount of existing data in a rails app
+* How to run the test suite
-## Baseline
+* Services (job queues, cache servers, search engines, etc.)
-### Initial Setup
+* Deployment instructions
-Before you start writing _any_ code:
-
-- Review the requirements with your partner
-- Create a Trello board
- - Organize your tasks/stories
- - Discuss who will do which tasks and when you will target completion
- - What things should be done together as pairs vs individually?
- - Organize your tasks/stories into iterations (a.k.a waves)
-- Create a data diagram based on the data in the CSV files
-
-Once the above is complete, this project:
-
-- Requires a shared repo with your partner as a collaborator
-- Requires you to create a Rails application which
- - Conforms to Rails conventions on naming and inflection
- - Is created by using `rails new .` you will create a new rails app _inside_ of the fork folder instead of creating a _new_ folder for your rails app
- - `rails new` will ask if you want to overwrite the existing files `README.md` and `db/seeds.rb`. Answer `n` to both of these (keep the existing file)
- - Uses [Postgresql](https://github.com/Ada-Developers-Academy/textbook-curriculum/blob/master/08-rails/how-to-use-postgres.md) as its database.
-
-**Your team shall submit a pull request with a link to your Trello board once you are done with this initial setup. This must be reviewed by an instructor before you may begin implementing the requirements.**
-
-### Minimum Requirements
-
-However far you and your partner get, the application should have, at a minimum, the following features:
-
-- Seeded data in your database from the original CSV files (see below)
-- Multiple related Active Record models
-- [RESTful routing](https://github.com/Ada-Developers-Academy/textbook-curriculum/blob/master/08-rails/mvc-and-restful-routing.md)
-- Deployed application to [Heroku](https://github.com/Ada-Developers-Academy/textbook-curriculum/blob/master/00-programming-fundamentals/11-deploying-to-heroku.md)
-- A "look and feel" that will make you and your partner happy!
-
-### Seeding the Database
-
-We have provided sample data for your site in the form of CSV files. These files are located in the directory `db/seed_data/`. We have also provided a seed script, `db/seeds.rb`, to load these files into your database.
-
-`db/seeds.rb` assumes a few things about how your database is set up:
-
-- There are `Driver`, `Passenger` and `Trip` models
-- These models are related in a certain way
-- The field names of these models match the column names in the CSV files
-
-This is the recommended way to configure this project, but not a hard requirement. If you've got a good reason to change the setup, feel free to edit `db/seeds.rb` accordingly.
-
-### Things to Keep in Mind
-
-1. Use git relentlessly
-1. Pair program on difficult problems and to share learning experiences
-1. Deploy early (two days before submission), deploy often.
-1. Business logic should be implemented in the model
-1. You will probably need nested routes, but avoid routes that are more than 2 levels deep
-1. Use Semantic HTML
-1. Make good use of partial views
-1. Regarding validations:
- - Validations are useful for making sure your database records are sane, and you should make use of them on this project
- - It is easy to validate too much! If it's not a hard requirement for your app to function, it probably shouldn't be a validation.
- - If validations fail, let the user know why
-
-## User Stories
-
-This project has a lot of user stories, and it is likely you and your partner won't get to all of them. Here is our prioritized list of what's important for this project, based on this week's learning goals:
-
-1. CRUD operations on models with relations
- - Creating new trips
-1. Model validations and reporting errors to the user
-1. Basic structure of a complex Rails app
-1. Deployment
-1. Complex business logic
- - Driver earning and average rating
-1. Styling and design
-
-Please use this list as you decide what to work on (or at the end of the week as you decide what features to cut).
-
-### Overall
-
-- From any page, I can click a menu entry to...
- - View a list of all passengers
- - View a list of all drivers
- - Create a new passenger
- - Create a new driver
-- From any form in the site, if processing the form submission fails, the user should be politely informed of what went wrong and how they can correct it
-
-### Working with Passengers
-
-- On the passenger list page I can click on a passenger to see that passenger's details
-- On the passenger's details page I can...
- - See the total amount the passenger has been charged
- - See a list of trips that passenger went on
- - Clicking on a trip from the list will take me to a detail page for that trip
- - Click links to edit and delete that passenger
- - It is up to you and your pair on how to deal with "validations" surrounding deleting a passenger associated with a trip
- - Add a new trip for this passenger
- - An available driver is selected automatically by the server
- - The trip starts with no rating
-- When adding a new passenger:
- - The user must provide a name and phone number
- - Don't worry about how the phone number is formatted
-
-### Working with Drivers
-
-- On the driver list page I can click on a driver to see that driver's details
-- On the driver's details page I can...
- - See the driver's total earnings
- - The driver gets 80% of the trip cost after a fee of $1.65 is subtracted
- - See the driver's average rating
- - See a list of trips this driver has driven
- - Clicking on a trip from the list will take me to a detail page for that trip
- - Click links to edit and delete that driver
- - It is up to you and your pair on how to deal with "validations" surrounding deleting a passenger associated with a trip
-- When creating a new driver:
- - The user must provide a name and VIN
- - Don't worry about how the VIN is formatted
-
-### Investigating Trips
-
-On the trip details page I can...
-
-- View details of the trip
-- Assign a rating (1-5) to the trip, if it does not already have one
-- Click links to detail pages for the trip's driver and passenger
-- Click links to edit and delete the trip
-
-## Wireframes
-
-Homepage:
-
-![Homepage](images/Rideshare-Rails-Wireframe-homepage.png)
-
-Add a Driver:
-
-![Add A Driver](images/Rideshare-Rails-Wireframe-add-driver.png)
-
-Drivers List:
-
-![Driver List](images/Rideshare-Rails-Wireframe-drivers-index.png)
-
-Driver Show Page:
-
-![Driver Show Page](images/Rideshare-Rails-Wireframe-show-driver.png)
-
-Add a Passenger:
-
-![Add a Passenger](images/Rideshare-Rails-Wireframe-add-passenger.png)
-
-Passenger List:
-
-![Passenger List](images/Rideshare-Rails-Wireframe-passengers-index-page.png)
-
-Passenger Show Page:
-
-![Passenger Show Page](images/Rideshare-Rails-Wireframe-show-passenger.png)
-
-Trip Details:
-
-![Trip Details Page](images/Rideshare-Rails-Wireframe-trip-details.png)
-
-
-## What we're looking for
-You can find what instructors will be looking for in the [feedback](feedback.md) markdown document.
+* ...
diff --git a/Rakefile b/Rakefile
new file mode 100644
index 000000000..e85f91391
--- /dev/null
+++ b/Rakefile
@@ -0,0 +1,6 @@
+# Add your own tasks in files placed in lib/tasks ending in .rake,
+# for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.
+
+require_relative 'config/application'
+
+Rails.application.load_tasks
diff --git a/app/assets/config/manifest.js b/app/assets/config/manifest.js
new file mode 100644
index 000000000..b16e53d6d
--- /dev/null
+++ b/app/assets/config/manifest.js
@@ -0,0 +1,3 @@
+//= link_tree ../images
+//= link_directory ../javascripts .js
+//= link_directory ../stylesheets .css
diff --git a/app/assets/images/.keep b/app/assets/images/.keep
new file mode 100644
index 000000000..e69de29bb
diff --git a/app/assets/javascripts/application.js b/app/assets/javascripts/application.js
new file mode 100644
index 000000000..46b20359f
--- /dev/null
+++ b/app/assets/javascripts/application.js
@@ -0,0 +1,15 @@
+// This is a manifest file that'll be compiled into application.js, which will include all the files
+// listed below.
+//
+// Any JavaScript/Coffee file within this directory, lib/assets/javascripts, or any plugin's
+// vendor/assets/javascripts directory can be referenced here using a relative path.
+//
+// It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
+// compiled file. JavaScript code in this file should be added after the last require_* statement.
+//
+// Read Sprockets README (https://github.com/rails/sprockets#sprockets-directives) for details
+// about supported directives.
+//
+//= require rails-ujs
+//= require turbolinks
+//= require_tree .
diff --git a/app/assets/javascripts/cable.js b/app/assets/javascripts/cable.js
new file mode 100644
index 000000000..739aa5f02
--- /dev/null
+++ b/app/assets/javascripts/cable.js
@@ -0,0 +1,13 @@
+// Action Cable provides the framework to deal with WebSockets in Rails.
+// You can generate new channels where WebSocket features live using the `rails generate channel` command.
+//
+//= require action_cable
+//= require_self
+//= require_tree ./channels
+
+(function() {
+ this.App || (this.App = {});
+
+ App.cable = ActionCable.createConsumer();
+
+}).call(this);
diff --git a/app/assets/javascripts/channels/.keep b/app/assets/javascripts/channels/.keep
new file mode 100644
index 000000000..e69de29bb
diff --git a/app/assets/stylesheets/application.css b/app/assets/stylesheets/application.css
new file mode 100644
index 000000000..d05ea0f51
--- /dev/null
+++ b/app/assets/stylesheets/application.css
@@ -0,0 +1,15 @@
+/*
+ * This is a manifest file that'll be compiled into application.css, which will include all the files
+ * listed below.
+ *
+ * Any CSS and SCSS file within this directory, lib/assets/stylesheets, or any plugin's
+ * vendor/assets/stylesheets directory can be referenced here using a relative path.
+ *
+ * You're free to add application-wide styles to this file and they'll appear at the bottom of the
+ * compiled file so the styles you add here take precedence over styles defined in any other CSS/SCSS
+ * files in this directory. Styles in this file should be added after the last require_* statement.
+ * It is generally better to create a new file per style scope.
+ *
+ *= require_tree .
+ *= require_self
+ */
diff --git a/app/channels/application_cable/channel.rb b/app/channels/application_cable/channel.rb
new file mode 100644
index 000000000..d67269728
--- /dev/null
+++ b/app/channels/application_cable/channel.rb
@@ -0,0 +1,4 @@
+module ApplicationCable
+ class Channel < ActionCable::Channel::Base
+ end
+end
diff --git a/app/channels/application_cable/connection.rb b/app/channels/application_cable/connection.rb
new file mode 100644
index 000000000..0ff5442f4
--- /dev/null
+++ b/app/channels/application_cable/connection.rb
@@ -0,0 +1,4 @@
+module ApplicationCable
+ class Connection < ActionCable::Connection::Base
+ end
+end
diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb
new file mode 100644
index 000000000..1c07694e9
--- /dev/null
+++ b/app/controllers/application_controller.rb
@@ -0,0 +1,3 @@
+class ApplicationController < ActionController::Base
+ protect_from_forgery with: :exception
+end
diff --git a/app/controllers/concerns/.keep b/app/controllers/concerns/.keep
new file mode 100644
index 000000000..e69de29bb
diff --git a/app/controllers/drivers_controller.rb b/app/controllers/drivers_controller.rb
new file mode 100644
index 000000000..a56b2c7bd
--- /dev/null
+++ b/app/controllers/drivers_controller.rb
@@ -0,0 +1,55 @@
+class DriversController < ApplicationController
+# if the driver is selected, show the total revenue , avg rating, --clicking on list will take you to trips page
+
+ def new
+ @driver = Driver.new
+ end
+
+ def index
+ @drivers = Driver.all
+ end
+
+ def create
+ @driver = Driver.new(driver_params)
+
+ if @driver.save
+ redirect_to drivers_path
+ else
+ render :new
+ end
+ end
+
+ def show
+ @driver = Driver.find(params[:id])
+ @trips = @driver.trips
+ # could also do a nested route
+ end
+
+ def edit
+ @driver = Driver.find(params[:id])
+ end
+
+ def update
+ @driver = Driver.find(params[:id])
+
+ @driver.assign_attributes(driver_params)
+
+ if @driver.save
+ redirect_to driver_path(@driver)
+ else
+ render :edit
+ end
+ end
+
+ def destroy
+ Driver.destroy(params[:id])
+
+ redirect_to drivers_path
+ end
+
+ private
+ def driver_params
+ return params.require(:driver).permit(:name, :driver_id, :vin, :status)
+ end
+
+end
diff --git a/app/controllers/passengers_controller.rb b/app/controllers/passengers_controller.rb
new file mode 100644
index 000000000..f3f0f4277
--- /dev/null
+++ b/app/controllers/passengers_controller.rb
@@ -0,0 +1,52 @@
+class PassengersController < ApplicationController
+
+ def new
+ @passenger = Passenger.new
+ end
+
+ def index
+ @passenger = Passenger.all
+ end
+
+ def create
+ @passenger = Passenger.new(passenger_params)
+
+ if @passenger.save
+ redirect_to passengers_path
+ else
+ render :new
+ end
+ end
+
+ def update
+ updated_info = params[:passenger]
+ @passenger = Passenger.find(params[:id])
+ @passenger.assign_attributes(passenger_params)
+
+ if @passenger.save
+ redirect_to passenger_path
+ else
+ render :edit
+ end
+ end
+
+ def show
+ @passenger = Passenger.find(params[:id])
+ end
+
+ def edit
+ @passenger = Passenger.find(params[:id])
+ end
+
+ def destroy
+ Passenger.destroy(params[:id])
+ redirect_to passengers_path
+ end
+
+ private
+
+ def passenger_params
+ return params.require(:passenger).permit(:name, :phone_num)
+ end
+
+end
diff --git a/app/controllers/trips_controller.rb b/app/controllers/trips_controller.rb
new file mode 100644
index 000000000..ac91cff34
--- /dev/null
+++ b/app/controllers/trips_controller.rb
@@ -0,0 +1,55 @@
+class TripsController < ApplicationController
+
+ def index
+ @trips = Trip.all
+ end
+
+ def new
+ @trip = Trip.new
+ end
+
+ def create
+ new_trip_info = {
+ passenger_id: params[:passenger_id],
+ driver_id: Driver.get_available_driver,
+ date: Time.now.strftime("%Y-%m-%d")
+ }
+
+ @trip = Trip.create(new_trip_info)
+
+ redirect_to passenger_path(params[:passenger_id])
+ end
+
+ def show
+ @trip = Trip.find(params[:id])
+ end
+
+ def edit
+ @trip = Trip.find(params[:id])
+ end
+
+ def update
+ @trip = Trip.find(params[:id])
+
+ @trip.assign_attributes(trip_params)
+
+ if @trip.save
+ redirect_to trip_path(@trip)
+ else
+ render :edit
+ end
+ end
+
+ def destroy
+ trip = Trip.find(params[:id])
+ trip.destroy
+ redirect_to passenger_path(trip.passenger)
+ end
+
+ private
+ def trip_params
+ return params.require(:trip).permit(:date, :rating, :cost, :passenger_id, :driver_id)
+ end
+
+
+end
diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb
new file mode 100644
index 000000000..de6be7945
--- /dev/null
+++ b/app/helpers/application_helper.rb
@@ -0,0 +1,2 @@
+module ApplicationHelper
+end
diff --git a/app/jobs/application_job.rb b/app/jobs/application_job.rb
new file mode 100644
index 000000000..a009ace51
--- /dev/null
+++ b/app/jobs/application_job.rb
@@ -0,0 +1,2 @@
+class ApplicationJob < ActiveJob::Base
+end
diff --git a/app/mailers/application_mailer.rb b/app/mailers/application_mailer.rb
new file mode 100644
index 000000000..286b2239d
--- /dev/null
+++ b/app/mailers/application_mailer.rb
@@ -0,0 +1,4 @@
+class ApplicationMailer < ActionMailer::Base
+ default from: 'from@example.com'
+ layout 'mailer'
+end
diff --git a/app/models/application_record.rb b/app/models/application_record.rb
new file mode 100644
index 000000000..10a4cba84
--- /dev/null
+++ b/app/models/application_record.rb
@@ -0,0 +1,3 @@
+class ApplicationRecord < ActiveRecord::Base
+ self.abstract_class = true
+end
diff --git a/app/models/concerns/.keep b/app/models/concerns/.keep
new file mode 100644
index 000000000..e69de29bb
diff --git a/app/models/driver.rb b/app/models/driver.rb
new file mode 100644
index 000000000..d782f13f4
--- /dev/null
+++ b/app/models/driver.rb
@@ -0,0 +1,46 @@
+class Driver < ApplicationRecord
+ has_many :trips
+
+ validates :vin, presence: true
+ validates :name, presence: true
+
+ FEE = 1.65
+ DRIVER_SHARE = 0.8
+
+ def total_revenue
+
+ subtotal = 0
+ trips.each do |trip|
+ subtotal += trip.cost - FEE
+ end
+
+ total = subtotal * DRIVER_SHARE
+ return total.to_f.round(2)
+ end
+
+ def average_rating
+
+ total_ratings = 0
+ self.trips.each do |trip|
+ total_ratings += trip.rating
+ end
+
+ if trips.length == 0
+ average = 0
+ else
+ average = (total_ratings.to_f) / trips.length
+ end
+
+ return average.round
+ end
+
+ def self.get_available_driver
+ driver_list = Driver.all
+ driver_list.each do |driver|
+ if driver.status == "AVAILABLE"
+ return driver.id
+ end
+ end
+ end
+
+end
diff --git a/app/models/passenger.rb b/app/models/passenger.rb
new file mode 100644
index 000000000..b9f52e76d
--- /dev/null
+++ b/app/models/passenger.rb
@@ -0,0 +1,20 @@
+class Passenger < ApplicationRecord
+
+ has_many :trips
+
+ validates :name, presence: true
+
+ validates :phone_num, presence: true
+
+ def total_cost
+ total = 0
+
+ trips.each do |trip|
+ if trip.cost
+ total += trip.cost
+ end
+ end
+ return total
+ end
+
+end
diff --git a/app/models/trip.rb b/app/models/trip.rb
new file mode 100644
index 000000000..381cb872e
--- /dev/null
+++ b/app/models/trip.rb
@@ -0,0 +1,8 @@
+class Trip < ApplicationRecord
+
+ belongs_to :driver
+ belongs_to :passenger
+
+
+
+end
diff --git a/app/views/drivers/_form.html.erb b/app/views/drivers/_form.html.erb
new file mode 100644
index 000000000..73946a4c8
--- /dev/null
+++ b/app/views/drivers/_form.html.erb
@@ -0,0 +1,39 @@
+
+ <%= "Riderly Drivers are here for YOU." %>
+
+
+<% if @driver.errors.any? %>
+
+ <% @driver.errors.each do |column, message| %>
+ -
+ <%= column.capitalize %> <%= message %>
+
+ <% end %>
+
+<% end %>
+
+
+
+<%= form_for @driver do |f| %>
+<%= f.label :name %>
+<%= f.text_field :name %>
+
+<%= f.label :vin %>
+<%= f.text_field :vin %>
+
+<%= f.label :status %>
+<%= f.select :status, ['AVAILABLE' ,'UNAVAILABLE'] %>
+
+<%= f.submit %>
+
+<% end %>
diff --git a/app/views/drivers/edit.html.erb b/app/views/drivers/edit.html.erb
new file mode 100644
index 000000000..d44c608b6
--- /dev/null
+++ b/app/views/drivers/edit.html.erb
@@ -0,0 +1 @@
+<%= render partial: "form" %>
diff --git a/app/views/drivers/index.html.erb b/app/views/drivers/index.html.erb
new file mode 100644
index 000000000..9fbbeb98c
--- /dev/null
+++ b/app/views/drivers/index.html.erb
@@ -0,0 +1,17 @@
+ Drivers page
+
+<%= link_to("Create a new driver", new_driver_path(@driver)) %>
+
+
+ <% @drivers.each do |driver| %>
+ -
+ <%= link_to(driver.name, driver_path(driver.id)) %>
+
+ <%= link_to("Edit", edit_driver_path(driver)) %>
+
+ <%= link_to("Delete", driver_path(driver), method: :delete, data: { confirm: "Are you sure you want to delete Driver #{driver.name}?" }) %>
+
+
+ <% end %>
+
+
diff --git a/app/views/drivers/new.html.erb b/app/views/drivers/new.html.erb
new file mode 100644
index 000000000..b3f4cca08
--- /dev/null
+++ b/app/views/drivers/new.html.erb
@@ -0,0 +1 @@
+<%= render partial: "form", locals: { page_title: "Create a new driver"} %>
diff --git a/app/views/drivers/show.html.erb b/app/views/drivers/show.html.erb
new file mode 100644
index 000000000..b82dfd3af
--- /dev/null
+++ b/app/views/drivers/show.html.erb
@@ -0,0 +1,22 @@
+Details for driver: <%= @driver.name %>
+
+
+ Vin: <%= @driver.vin %>
+
+ Total Revenue: $<%= @driver.total_revenue %>
+
+ Average Rating: <%= @driver.average_rating %>
+
+<%= link_to "Edit", edit_driver_path(@driver) %>
+<%= link_to "Delete", drivers_path(@driver) %>
+
+
+ <% @trips.each do |trip| %>
+ -
+ <%= link_to(trip.date, trip_path(trip.id)) %>
+
+
+ <% end %>
+
+
+
diff --git a/app/views/layouts/application.html.erb b/app/views/layouts/application.html.erb
new file mode 100644
index 000000000..d202d95d1
--- /dev/null
+++ b/app/views/layouts/application.html.erb
@@ -0,0 +1,14 @@
+
+
+
+ RideShare
+ <%= csrf_meta_tags %>
+
+ <%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload' %>
+ <%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %>
+
+
+
+ <%= yield %>
+
+
diff --git a/app/views/layouts/mailer.html.erb b/app/views/layouts/mailer.html.erb
new file mode 100644
index 000000000..cbd34d2e9
--- /dev/null
+++ b/app/views/layouts/mailer.html.erb
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+ <%= yield %>
+
+
diff --git a/app/views/layouts/mailer.text.erb b/app/views/layouts/mailer.text.erb
new file mode 100644
index 000000000..37f0bddbd
--- /dev/null
+++ b/app/views/layouts/mailer.text.erb
@@ -0,0 +1 @@
+<%= yield %>
diff --git a/app/views/passengers/_error_messages.html.erb b/app/views/passengers/_error_messages.html.erb
new file mode 100644
index 000000000..b8032302a
--- /dev/null
+++ b/app/views/passengers/_error_messages.html.erb
@@ -0,0 +1,15 @@
+<% if model.errors.messages.any? %>
+
+
+ Oops! Looks like there were some problems. Please see below:
+ <% @passenger.errors.messages.each do |field, problems| %>
+ <% problems.each do |problem| %>
+ -
+ <%= field %>
+ <%= problem %>
+
+ <% end %>
+ <% end %>
+
+
+<% end %>
diff --git a/app/views/passengers/_form.html.erb b/app/views/passengers/_form.html.erb
new file mode 100644
index 000000000..8c38b0685
--- /dev/null
+++ b/app/views/passengers/_form.html.erb
@@ -0,0 +1,13 @@
+<%= page_title %>
+
+<%= render partial: "error_messages", locals: {model: @passenger} %>
+
+<%= form_for @passenger do |p| %>
+ <%= p.label :name %>
+ <%= p.text_field :name %>
+
+ <%= p.label :phone_num %>
+ <%= p.text_field :phone_num %>
+
+ <%= p.submit %>
+<% end %>
diff --git a/app/views/passengers/edit.html.erb b/app/views/passengers/edit.html.erb
new file mode 100644
index 000000000..5752c4182
--- /dev/null
+++ b/app/views/passengers/edit.html.erb
@@ -0,0 +1 @@
+<%= render partial: "form", locals: { page_title: "Edit my info"} %>
diff --git a/app/views/passengers/index.html.erb b/app/views/passengers/index.html.erb
new file mode 100644
index 000000000..25d6ea9e1
--- /dev/null
+++ b/app/views/passengers/index.html.erb
@@ -0,0 +1,13 @@
+Welcome to the best rideshare app ever - Riderly. We're revolutionizing the rideshare app industry!
+
+Passengers
+
+<%= link_to("Create a new passenger", new_passenger_path) %>
+
+
+ <% @passenger.each do |passenger| %>
+ -
+ <%= link_to(passenger.name, passenger_path(passenger)) %>
+
+ <% end %>
+
diff --git a/app/views/passengers/new.html.erb b/app/views/passengers/new.html.erb
new file mode 100644
index 000000000..30faa9b04
--- /dev/null
+++ b/app/views/passengers/new.html.erb
@@ -0,0 +1 @@
+<%= render partial: "form", locals: { page_title: "Create a new passenger"} %>
diff --git a/app/views/passengers/show.html.erb b/app/views/passengers/show.html.erb
new file mode 100644
index 000000000..5b409c8a5
--- /dev/null
+++ b/app/views/passengers/show.html.erb
@@ -0,0 +1,23 @@
+Details for <%= @passenger.name %>
+
+
+ -
+ Total Spent on Completed Trips:
+ $<%= @passenger.total_cost %>
+
+
+ <% @passenger.trips.each do |trip| %>
+ -
+ <%= link_to(trip.date, trip_path(trip)) %>
+
+ <% end %>
+ -
+ <%= link_to("Edit #{@passenger.name}", edit_passenger_path) %>
+
+ -
+ <%= link_to("Delete #{@passenger.name}", passenger_path, method: :delete, data: { confirm: "Are you sure you want to delete #{@passenger.name}?"}) %>
+
+ -
+ <%= link_to("Start a new trip!", passenger_trips_path(@passenger), method: :create) %>
+
+
diff --git a/app/views/trips/_form.html.erb b/app/views/trips/_form.html.erb
new file mode 100644
index 000000000..144119e2d
--- /dev/null
+++ b/app/views/trips/_form.html.erb
@@ -0,0 +1,22 @@
+<%= page_title %>
+
+<%= render partial: "error_messages", locals: {model: @trip} %>
+
+<%= form_for @trip do |p| %>
+ <%= p.label :date %>
+ <%= p.date_field :date %>
+
+ <%= p.label :rating %>
+ <%= p.text_field :rating %>
+
+ <%= p.label :cost %>
+ <%= p.text_field :cost %>
+
+ <% p.label :driver %>
+ <% p.hidden_field :driver %>
+
+ <% p.label :passenger %>
+ <% p.hidden_field :passenger %>
+
+ <%= p.submit %>
+<% end %>
diff --git a/app/views/trips/edit.html.erb b/app/views/trips/edit.html.erb
new file mode 100644
index 000000000..7ee07477a
--- /dev/null
+++ b/app/views/trips/edit.html.erb
@@ -0,0 +1,21 @@
+
+Edit trip details
+
+<%= form_for @trip do |p| %>
+ <% p.label :date %>
+ <% p.date_field :date %>
+
+ <%= p.label :rating %>
+ <%= p.select :rating, [1, 2, 3, 4, 5] %>
+
+ <%= p.label :cost %>
+ <%= p.text_field :cost %>
+
+ <% p.label :driver %>
+ <% p.hidden_field :driver %>
+
+ <% p.label :passenger %>
+ <% p.hidden_field :passenger %>
+
+ <%= p.submit %>
+<% end %>
diff --git a/app/views/trips/index.html.erb b/app/views/trips/index.html.erb
new file mode 100644
index 000000000..386661310
--- /dev/null
+++ b/app/views/trips/index.html.erb
@@ -0,0 +1,11 @@
+Riderly Trips - the most disruptive in the industry. Because they're so freaking expensive.
+
+Trips
+
+
+ <% @trips.each do |trip| %>
+ -
+ <%= link_to(trip.id, trip_path(trip)) %>
+
+ <% end %>
+
diff --git a/app/views/trips/new.html.erb b/app/views/trips/new.html.erb
new file mode 100644
index 000000000..e69de29bb
diff --git a/app/views/trips/show.html.erb b/app/views/trips/show.html.erb
new file mode 100644
index 000000000..974d44a95
--- /dev/null
+++ b/app/views/trips/show.html.erb
@@ -0,0 +1,15 @@
+Trip Details
+
+Trip # <%= @trip.id %>
+
+
+ - Trip Date: <%= @trip.date %>
+ - Driver: <%= link_to(@trip.driver.name, driver_path(@trip.driver)) %>
+ - Passenger: <%= link_to(@trip.passenger.name, passenger_path(@trip.passenger)) %>
+ - Trip Price: $<%= @trip.cost %>
+ - Trip Rating: <%= @trip.rating %>
+
+
+<%= link_to("Edit this trip", edit_trip_path(@trip)) %>
+
+<%= link_to("Delete trip", trip_path, method: :delete, data: { confirm: "Are you sure you want to delete this trip?"}) %>
diff --git a/bin/bundle b/bin/bundle
new file mode 100755
index 000000000..66e9889e8
--- /dev/null
+++ b/bin/bundle
@@ -0,0 +1,3 @@
+#!/usr/bin/env ruby
+ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', __FILE__)
+load Gem.bin_path('bundler', 'bundle')
diff --git a/bin/rails b/bin/rails
new file mode 100755
index 000000000..5badb2fde
--- /dev/null
+++ b/bin/rails
@@ -0,0 +1,9 @@
+#!/usr/bin/env ruby
+begin
+ load File.expand_path('../spring', __FILE__)
+rescue LoadError => e
+ raise unless e.message.include?('spring')
+end
+APP_PATH = File.expand_path('../config/application', __dir__)
+require_relative '../config/boot'
+require 'rails/commands'
diff --git a/bin/rake b/bin/rake
new file mode 100755
index 000000000..d87d5f578
--- /dev/null
+++ b/bin/rake
@@ -0,0 +1,9 @@
+#!/usr/bin/env ruby
+begin
+ load File.expand_path('../spring', __FILE__)
+rescue LoadError => e
+ raise unless e.message.include?('spring')
+end
+require_relative '../config/boot'
+require 'rake'
+Rake.application.run
diff --git a/bin/setup b/bin/setup
new file mode 100755
index 000000000..78c4e861d
--- /dev/null
+++ b/bin/setup
@@ -0,0 +1,38 @@
+#!/usr/bin/env ruby
+require 'pathname'
+require 'fileutils'
+include FileUtils
+
+# path to your application root.
+APP_ROOT = Pathname.new File.expand_path('../../', __FILE__)
+
+def system!(*args)
+ system(*args) || abort("\n== Command #{args} failed ==")
+end
+
+chdir APP_ROOT do
+ # This script is a starting point to setup your application.
+ # Add necessary setup steps to this file.
+
+ puts '== Installing dependencies =='
+ system! 'gem install bundler --conservative'
+ system('bundle check') || system!('bundle install')
+
+ # Install JavaScript dependencies if using Yarn
+ # system('bin/yarn')
+
+
+ # puts "\n== Copying sample files =="
+ # unless File.exist?('config/database.yml')
+ # cp 'config/database.yml.sample', 'config/database.yml'
+ # end
+
+ puts "\n== Preparing database =="
+ system! 'bin/rails db:setup'
+
+ puts "\n== Removing old logs and tempfiles =="
+ system! 'bin/rails log:clear tmp:clear'
+
+ puts "\n== Restarting application server =="
+ system! 'bin/rails restart'
+end
diff --git a/bin/spring b/bin/spring
new file mode 100755
index 000000000..fb2ec2ebb
--- /dev/null
+++ b/bin/spring
@@ -0,0 +1,17 @@
+#!/usr/bin/env ruby
+
+# This file loads spring without using Bundler, in order to be fast.
+# It gets overwritten when you run the `spring binstub` command.
+
+unless defined?(Spring)
+ require 'rubygems'
+ require 'bundler'
+
+ lockfile = Bundler::LockfileParser.new(Bundler.default_lockfile.read)
+ spring = lockfile.specs.detect { |spec| spec.name == "spring" }
+ if spring
+ Gem.use_paths Gem.dir, Bundler.bundle_path.to_s, *Gem.path
+ gem 'spring', spring.version
+ require 'spring/binstub'
+ end
+end
diff --git a/bin/update b/bin/update
new file mode 100755
index 000000000..a8e4462f2
--- /dev/null
+++ b/bin/update
@@ -0,0 +1,29 @@
+#!/usr/bin/env ruby
+require 'pathname'
+require 'fileutils'
+include FileUtils
+
+# path to your application root.
+APP_ROOT = Pathname.new File.expand_path('../../', __FILE__)
+
+def system!(*args)
+ system(*args) || abort("\n== Command #{args} failed ==")
+end
+
+chdir APP_ROOT do
+ # This script is a way to update your development environment automatically.
+ # Add necessary update steps to this file.
+
+ puts '== Installing dependencies =='
+ system! 'gem install bundler --conservative'
+ system('bundle check') || system!('bundle install')
+
+ puts "\n== Updating database =="
+ system! 'bin/rails db:migrate'
+
+ puts "\n== Removing old logs and tempfiles =="
+ system! 'bin/rails log:clear tmp:clear'
+
+ puts "\n== Restarting application server =="
+ system! 'bin/rails restart'
+end
diff --git a/bin/yarn b/bin/yarn
new file mode 100755
index 000000000..c2bacef83
--- /dev/null
+++ b/bin/yarn
@@ -0,0 +1,11 @@
+#!/usr/bin/env ruby
+VENDOR_PATH = File.expand_path('..', __dir__)
+Dir.chdir(VENDOR_PATH) do
+ begin
+ exec "yarnpkg #{ARGV.join(" ")}"
+ rescue Errno::ENOENT
+ $stderr.puts "Yarn executable was not detected in the system."
+ $stderr.puts "Download Yarn at https://yarnpkg.com/en/docs/install"
+ exit 1
+ end
+end
diff --git a/config.ru b/config.ru
new file mode 100644
index 000000000..f7ba0b527
--- /dev/null
+++ b/config.ru
@@ -0,0 +1,5 @@
+# This file is used by Rack-based servers to start the application.
+
+require_relative 'config/environment'
+
+run Rails.application
diff --git a/config/application.rb b/config/application.rb
new file mode 100644
index 000000000..f4e117aaf
--- /dev/null
+++ b/config/application.rb
@@ -0,0 +1,25 @@
+require_relative 'boot'
+
+require 'rails/all'
+
+# Require the gems listed in Gemfile, including any gems
+# you've limited to :test, :development, or :production.
+Bundler.require(*Rails.groups)
+
+module RideShare
+ class Application < Rails::Application
+ config.generators do |g|
+ # Force new test files to be generated in the minitest-spec style
+ g.test_framework :minitest, spec: true
+
+ # Always use .js files, never .coffee
+ g.javascript_engine :js
+ end
+ # Initialize configuration defaults for originally generated Rails version.
+ config.load_defaults 5.1
+
+ # Settings in config/environments/* take precedence over those specified here.
+ # Application configuration should go into files in config/initializers
+ # -- all .rb files in that directory are automatically loaded.
+ end
+end
diff --git a/config/boot.rb b/config/boot.rb
new file mode 100644
index 000000000..30f5120df
--- /dev/null
+++ b/config/boot.rb
@@ -0,0 +1,3 @@
+ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../Gemfile', __dir__)
+
+require 'bundler/setup' # Set up gems listed in the Gemfile.
diff --git a/config/cable.yml b/config/cable.yml
new file mode 100644
index 000000000..3580154fd
--- /dev/null
+++ b/config/cable.yml
@@ -0,0 +1,10 @@
+development:
+ adapter: async
+
+test:
+ adapter: async
+
+production:
+ adapter: redis
+ url: redis://localhost:6379/1
+ channel_prefix: ride-share_production
diff --git a/config/database.yml b/config/database.yml
new file mode 100644
index 000000000..d9b55606b
--- /dev/null
+++ b/config/database.yml
@@ -0,0 +1,85 @@
+# PostgreSQL. Versions 9.1 and up are supported.
+#
+# Install the pg driver:
+# gem install pg
+# On OS X with Homebrew:
+# gem install pg -- --with-pg-config=/usr/local/bin/pg_config
+# On OS X with MacPorts:
+# gem install pg -- --with-pg-config=/opt/local/lib/postgresql84/bin/pg_config
+# On Windows:
+# gem install pg
+# Choose the win32 build.
+# Install PostgreSQL and put its /bin directory on your path.
+#
+# Configure Using Gemfile
+# gem 'pg'
+#
+default: &default
+ adapter: postgresql
+ encoding: unicode
+ # For details on connection pooling, see Rails configuration guide
+ # http://guides.rubyonrails.org/configuring.html#database-pooling
+ pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
+
+development:
+ <<: *default
+ database: ride-share_development
+
+ # The specified database role being used to connect to postgres.
+ # To create additional roles in postgres see `$ createuser --help`.
+ # When left blank, postgres will use the default role. This is
+ # the same name as the operating system user that initialized the database.
+ #username: ride-share
+
+ # The password associated with the postgres role (username).
+ #password:
+
+ # Connect on a TCP socket. Omitted by default since the client uses a
+ # domain socket that doesn't need configuration. Windows does not have
+ # domain sockets, so uncomment these lines.
+ #host: localhost
+
+ # The TCP port the server listens on. Defaults to 5432.
+ # If your server runs on a different port number, change accordingly.
+ #port: 5432
+
+ # Schema search path. The server defaults to $user,public
+ #schema_search_path: myapp,sharedapp,public
+
+ # Minimum log levels, in increasing order:
+ # debug5, debug4, debug3, debug2, debug1,
+ # log, notice, warning, error, fatal, and panic
+ # Defaults to warning.
+ #min_messages: notice
+
+# Warning: The database defined as "test" will be erased and
+# re-generated from your development database when you run "rake".
+# Do not set this db to the same as development or production.
+test:
+ <<: *default
+ database: ride-share_test
+
+# As with config/secrets.yml, you never want to store sensitive information,
+# like your database password, in your source code. If your source code is
+# ever seen by anyone, they now have access to your database.
+#
+# Instead, provide the password as a unix environment variable when you boot
+# the app. Read http://guides.rubyonrails.org/configuring.html#configuring-a-database
+# for a full rundown on how to provide these environment variables in a
+# production deployment.
+#
+# On Heroku and other platform providers, you may have a full connection URL
+# available as an environment variable. For example:
+#
+# DATABASE_URL="postgres://myuser:mypass@localhost/somedatabase"
+#
+# You can use this database configuration with:
+#
+# production:
+# url: <%= ENV['DATABASE_URL'] %>
+#
+production:
+ <<: *default
+ database: ride-share_production
+ username: ride-share
+ password: <%= ENV['RIDE-SHARE_DATABASE_PASSWORD'] %>
diff --git a/config/environment.rb b/config/environment.rb
new file mode 100644
index 000000000..426333bb4
--- /dev/null
+++ b/config/environment.rb
@@ -0,0 +1,5 @@
+# Load the Rails application.
+require_relative 'application'
+
+# Initialize the Rails application.
+Rails.application.initialize!
diff --git a/config/environments/development.rb b/config/environments/development.rb
new file mode 100644
index 000000000..5187e2218
--- /dev/null
+++ b/config/environments/development.rb
@@ -0,0 +1,54 @@
+Rails.application.configure do
+ # Settings specified here will take precedence over those in config/application.rb.
+
+ # In the development environment your application's code is reloaded on
+ # every request. This slows down response time but is perfect for development
+ # since you don't have to restart the web server when you make code changes.
+ config.cache_classes = false
+
+ # Do not eager load code on boot.
+ config.eager_load = false
+
+ # Show full error reports.
+ config.consider_all_requests_local = true
+
+ # Enable/disable caching. By default caching is disabled.
+ if Rails.root.join('tmp/caching-dev.txt').exist?
+ config.action_controller.perform_caching = true
+
+ config.cache_store = :memory_store
+ config.public_file_server.headers = {
+ 'Cache-Control' => "public, max-age=#{2.days.seconds.to_i}"
+ }
+ else
+ config.action_controller.perform_caching = false
+
+ config.cache_store = :null_store
+ end
+
+ # Don't care if the mailer can't send.
+ config.action_mailer.raise_delivery_errors = false
+
+ config.action_mailer.perform_caching = false
+
+ # Print deprecation notices to the Rails logger.
+ config.active_support.deprecation = :log
+
+ # Raise an error on page load if there are pending migrations.
+ config.active_record.migration_error = :page_load
+
+ # Debug mode disables concatenation and preprocessing of assets.
+ # This option may cause significant delays in view rendering with a large
+ # number of complex assets.
+ config.assets.debug = true
+
+ # Suppress logger output for asset requests.
+ config.assets.quiet = true
+
+ # Raises error for missing translations
+ # config.action_view.raise_on_missing_translations = true
+
+ # Use an evented file watcher to asynchronously detect changes in source code,
+ # routes, locales, etc. This feature depends on the listen gem.
+ config.file_watcher = ActiveSupport::EventedFileUpdateChecker
+end
diff --git a/config/environments/production.rb b/config/environments/production.rb
new file mode 100644
index 000000000..0627f98aa
--- /dev/null
+++ b/config/environments/production.rb
@@ -0,0 +1,91 @@
+Rails.application.configure do
+ # Settings specified here will take precedence over those in config/application.rb.
+
+ # Code is not reloaded between requests.
+ config.cache_classes = true
+
+ # Eager load code on boot. This eager loads most of Rails and
+ # your application in memory, allowing both threaded web servers
+ # and those relying on copy on write to perform better.
+ # Rake tasks automatically ignore this option for performance.
+ config.eager_load = true
+
+ # Full error reports are disabled and caching is turned on.
+ config.consider_all_requests_local = false
+ config.action_controller.perform_caching = true
+
+ # Attempt to read encrypted secrets from `config/secrets.yml.enc`.
+ # Requires an encryption key in `ENV["RAILS_MASTER_KEY"]` or
+ # `config/secrets.yml.key`.
+ config.read_encrypted_secrets = true
+
+ # Disable serving static files from the `/public` folder by default since
+ # Apache or NGINX already handles this.
+ config.public_file_server.enabled = ENV['RAILS_SERVE_STATIC_FILES'].present?
+
+ # Compress JavaScripts and CSS.
+ config.assets.js_compressor = :uglifier
+ # config.assets.css_compressor = :sass
+
+ # Do not fallback to assets pipeline if a precompiled asset is missed.
+ config.assets.compile = false
+
+ # `config.assets.precompile` and `config.assets.version` have moved to config/initializers/assets.rb
+
+ # Enable serving of images, stylesheets, and JavaScripts from an asset server.
+ # config.action_controller.asset_host = 'http://assets.example.com'
+
+ # Specifies the header that your server uses for sending files.
+ # config.action_dispatch.x_sendfile_header = 'X-Sendfile' # for Apache
+ # config.action_dispatch.x_sendfile_header = 'X-Accel-Redirect' # for NGINX
+
+ # Mount Action Cable outside main process or domain
+ # config.action_cable.mount_path = nil
+ # config.action_cable.url = 'wss://example.com/cable'
+ # config.action_cable.allowed_request_origins = [ 'http://example.com', /http:\/\/example.*/ ]
+
+ # Force all access to the app over SSL, use Strict-Transport-Security, and use secure cookies.
+ # config.force_ssl = true
+
+ # Use the lowest log level to ensure availability of diagnostic information
+ # when problems arise.
+ config.log_level = :debug
+
+ # Prepend all log lines with the following tags.
+ config.log_tags = [ :request_id ]
+
+ # Use a different cache store in production.
+ # config.cache_store = :mem_cache_store
+
+ # Use a real queuing backend for Active Job (and separate queues per environment)
+ # config.active_job.queue_adapter = :resque
+ # config.active_job.queue_name_prefix = "ride-share_#{Rails.env}"
+ config.action_mailer.perform_caching = false
+
+ # Ignore bad email addresses and do not raise email delivery errors.
+ # Set this to true and configure the email server for immediate delivery to raise delivery errors.
+ # config.action_mailer.raise_delivery_errors = false
+
+ # Enable locale fallbacks for I18n (makes lookups for any locale fall back to
+ # the I18n.default_locale when a translation cannot be found).
+ config.i18n.fallbacks = true
+
+ # Send deprecation notices to registered listeners.
+ config.active_support.deprecation = :notify
+
+ # Use default logging formatter so that PID and timestamp are not suppressed.
+ config.log_formatter = ::Logger::Formatter.new
+
+ # Use a different logger for distributed setups.
+ # require 'syslog/logger'
+ # config.logger = ActiveSupport::TaggedLogging.new(Syslog::Logger.new 'app-name')
+
+ if ENV["RAILS_LOG_TO_STDOUT"].present?
+ logger = ActiveSupport::Logger.new(STDOUT)
+ logger.formatter = config.log_formatter
+ config.logger = ActiveSupport::TaggedLogging.new(logger)
+ end
+
+ # Do not dump schema after migrations.
+ config.active_record.dump_schema_after_migration = false
+end
diff --git a/config/environments/test.rb b/config/environments/test.rb
new file mode 100644
index 000000000..8e5cbde53
--- /dev/null
+++ b/config/environments/test.rb
@@ -0,0 +1,42 @@
+Rails.application.configure do
+ # Settings specified here will take precedence over those in config/application.rb.
+
+ # The test environment is used exclusively to run your application's
+ # test suite. You never need to work with it otherwise. Remember that
+ # your test database is "scratch space" for the test suite and is wiped
+ # and recreated between test runs. Don't rely on the data there!
+ config.cache_classes = true
+
+ # Do not eager load code on boot. This avoids loading your whole application
+ # just for the purpose of running a single test. If you are using a tool that
+ # preloads Rails for running tests, you may have to set it to true.
+ config.eager_load = false
+
+ # Configure public file server for tests with Cache-Control for performance.
+ config.public_file_server.enabled = true
+ config.public_file_server.headers = {
+ 'Cache-Control' => "public, max-age=#{1.hour.seconds.to_i}"
+ }
+
+ # Show full error reports and disable caching.
+ config.consider_all_requests_local = true
+ config.action_controller.perform_caching = false
+
+ # Raise exceptions instead of rendering exception templates.
+ config.action_dispatch.show_exceptions = false
+
+ # Disable request forgery protection in test environment.
+ config.action_controller.allow_forgery_protection = false
+ config.action_mailer.perform_caching = false
+
+ # Tell Action Mailer not to deliver emails to the real world.
+ # The :test delivery method accumulates sent emails in the
+ # ActionMailer::Base.deliveries array.
+ config.action_mailer.delivery_method = :test
+
+ # Print deprecation notices to the stderr.
+ config.active_support.deprecation = :stderr
+
+ # Raises error for missing translations
+ # config.action_view.raise_on_missing_translations = true
+end
diff --git a/config/initializers/application_controller_renderer.rb b/config/initializers/application_controller_renderer.rb
new file mode 100644
index 000000000..89d2efab2
--- /dev/null
+++ b/config/initializers/application_controller_renderer.rb
@@ -0,0 +1,8 @@
+# Be sure to restart your server when you modify this file.
+
+# ActiveSupport::Reloader.to_prepare do
+# ApplicationController.renderer.defaults.merge!(
+# http_host: 'example.org',
+# https: false
+# )
+# end
diff --git a/config/initializers/assets.rb b/config/initializers/assets.rb
new file mode 100644
index 000000000..4b828e80c
--- /dev/null
+++ b/config/initializers/assets.rb
@@ -0,0 +1,14 @@
+# Be sure to restart your server when you modify this file.
+
+# Version of your assets, change this if you want to expire all your assets.
+Rails.application.config.assets.version = '1.0'
+
+# Add additional assets to the asset load path.
+# Rails.application.config.assets.paths << Emoji.images_path
+# Add Yarn node_modules folder to the asset load path.
+Rails.application.config.assets.paths << Rails.root.join('node_modules')
+
+# Precompile additional assets.
+# application.js, application.css, and all non-JS/CSS in the app/assets
+# folder are already added.
+# Rails.application.config.assets.precompile += %w( admin.js admin.css )
diff --git a/config/initializers/backtrace_silencers.rb b/config/initializers/backtrace_silencers.rb
new file mode 100644
index 000000000..59385cdf3
--- /dev/null
+++ b/config/initializers/backtrace_silencers.rb
@@ -0,0 +1,7 @@
+# Be sure to restart your server when you modify this file.
+
+# You can add backtrace silencers for libraries that you're using but don't wish to see in your backtraces.
+# Rails.backtrace_cleaner.add_silencer { |line| line =~ /my_noisy_library/ }
+
+# You can also remove all the silencers if you're trying to debug a problem that might stem from framework code.
+# Rails.backtrace_cleaner.remove_silencers!
diff --git a/config/initializers/cookies_serializer.rb b/config/initializers/cookies_serializer.rb
new file mode 100644
index 000000000..5a6a32d37
--- /dev/null
+++ b/config/initializers/cookies_serializer.rb
@@ -0,0 +1,5 @@
+# Be sure to restart your server when you modify this file.
+
+# Specify a serializer for the signed and encrypted cookie jars.
+# Valid options are :json, :marshal, and :hybrid.
+Rails.application.config.action_dispatch.cookies_serializer = :json
diff --git a/config/initializers/filter_parameter_logging.rb b/config/initializers/filter_parameter_logging.rb
new file mode 100644
index 000000000..4a994e1e7
--- /dev/null
+++ b/config/initializers/filter_parameter_logging.rb
@@ -0,0 +1,4 @@
+# Be sure to restart your server when you modify this file.
+
+# Configure sensitive parameters which will be filtered from the log file.
+Rails.application.config.filter_parameters += [:password]
diff --git a/config/initializers/inflections.rb b/config/initializers/inflections.rb
new file mode 100644
index 000000000..ac033bf9d
--- /dev/null
+++ b/config/initializers/inflections.rb
@@ -0,0 +1,16 @@
+# Be sure to restart your server when you modify this file.
+
+# Add new inflection rules using the following format. Inflections
+# are locale specific, and you may define rules for as many different
+# locales as you wish. All of these examples are active by default:
+# ActiveSupport::Inflector.inflections(:en) do |inflect|
+# inflect.plural /^(ox)$/i, '\1en'
+# inflect.singular /^(ox)en/i, '\1'
+# inflect.irregular 'person', 'people'
+# inflect.uncountable %w( fish sheep )
+# end
+
+# These inflection rules are supported but not enabled by default:
+# ActiveSupport::Inflector.inflections(:en) do |inflect|
+# inflect.acronym 'RESTful'
+# end
diff --git a/config/initializers/mime_types.rb b/config/initializers/mime_types.rb
new file mode 100644
index 000000000..dc1899682
--- /dev/null
+++ b/config/initializers/mime_types.rb
@@ -0,0 +1,4 @@
+# Be sure to restart your server when you modify this file.
+
+# Add new mime types for use in respond_to blocks:
+# Mime::Type.register "text/richtext", :rtf
diff --git a/config/initializers/wrap_parameters.rb b/config/initializers/wrap_parameters.rb
new file mode 100644
index 000000000..bbfc3961b
--- /dev/null
+++ b/config/initializers/wrap_parameters.rb
@@ -0,0 +1,14 @@
+# Be sure to restart your server when you modify this file.
+
+# This file contains settings for ActionController::ParamsWrapper which
+# is enabled by default.
+
+# Enable parameter wrapping for JSON. You can disable this by setting :format to an empty array.
+ActiveSupport.on_load(:action_controller) do
+ wrap_parameters format: [:json]
+end
+
+# To enable root element in JSON for ActiveRecord objects.
+# ActiveSupport.on_load(:active_record) do
+# self.include_root_in_json = true
+# end
diff --git a/config/locales/en.yml b/config/locales/en.yml
new file mode 100644
index 000000000..decc5a857
--- /dev/null
+++ b/config/locales/en.yml
@@ -0,0 +1,33 @@
+# Files in the config/locales directory are used for internationalization
+# and are automatically loaded by Rails. If you want to use locales other
+# than English, add the necessary files in this directory.
+#
+# To use the locales, use `I18n.t`:
+#
+# I18n.t 'hello'
+#
+# In views, this is aliased to just `t`:
+#
+# <%= t('hello') %>
+#
+# To use a different locale, set it with `I18n.locale`:
+#
+# I18n.locale = :es
+#
+# This would use the information in config/locales/es.yml.
+#
+# The following keys must be escaped otherwise they will not be retrieved by
+# the default I18n backend:
+#
+# true, false, on, off, yes, no
+#
+# Instead, surround them with single quotes.
+#
+# en:
+# 'true': 'foo'
+#
+# To learn more, please read the Rails Internationalization guide
+# available at http://guides.rubyonrails.org/i18n.html.
+
+en:
+ hello: "Hello world"
diff --git a/config/puma.rb b/config/puma.rb
new file mode 100644
index 000000000..1e19380dc
--- /dev/null
+++ b/config/puma.rb
@@ -0,0 +1,56 @@
+# Puma can serve each request in a thread from an internal thread pool.
+# The `threads` method setting takes two numbers: a minimum and maximum.
+# Any libraries that use thread pools should be configured to match
+# the maximum value specified for Puma. Default is set to 5 threads for minimum
+# and maximum; this matches the default thread size of Active Record.
+#
+threads_count = ENV.fetch("RAILS_MAX_THREADS") { 5 }
+threads threads_count, threads_count
+
+# Specifies the `port` that Puma will listen on to receive requests; default is 3000.
+#
+port ENV.fetch("PORT") { 3000 }
+
+# Specifies the `environment` that Puma will run in.
+#
+environment ENV.fetch("RAILS_ENV") { "development" }
+
+# Specifies the number of `workers` to boot in clustered mode.
+# Workers are forked webserver processes. If using threads and workers together
+# the concurrency of the application would be max `threads` * `workers`.
+# Workers do not work on JRuby or Windows (both of which do not support
+# processes).
+#
+# workers ENV.fetch("WEB_CONCURRENCY") { 2 }
+
+# Use the `preload_app!` method when specifying a `workers` number.
+# This directive tells Puma to first boot the application and load code
+# before forking the application. This takes advantage of Copy On Write
+# process behavior so workers use less memory. If you use this option
+# you need to make sure to reconnect any threads in the `on_worker_boot`
+# block.
+#
+# preload_app!
+
+# If you are preloading your application and using Active Record, it's
+# recommended that you close any connections to the database before workers
+# are forked to prevent connection leakage.
+#
+# before_fork do
+# ActiveRecord::Base.connection_pool.disconnect! if defined?(ActiveRecord)
+# end
+
+# The code in the `on_worker_boot` will be called if you are using
+# clustered mode by specifying a number of `workers`. After each worker
+# process is booted, this block will be run. If you are using the `preload_app!`
+# option, you will want to use this block to reconnect to any threads
+# or connections that may have been created at application boot, as Ruby
+# cannot share connections between processes.
+#
+# on_worker_boot do
+# ActiveRecord::Base.establish_connection if defined?(ActiveRecord)
+# end
+#
+
+# Allow puma to be restarted by `rails restart` command.
+plugin :tmp_restart
diff --git a/config/routes.rb b/config/routes.rb
new file mode 100644
index 000000000..774edbc36
--- /dev/null
+++ b/config/routes.rb
@@ -0,0 +1,13 @@
+Rails.application.routes.draw do
+ # For details on the DSL available within this file, see http://guides.rubyonrails.org/routing.html
+ root 'passengers#index'
+
+ resources :drivers
+
+ resources :passengers do
+ resources :trips, only: [:create]
+ end
+
+ resources :trips
+
+end
diff --git a/config/secrets.yml b/config/secrets.yml
new file mode 100644
index 000000000..df7716ab0
--- /dev/null
+++ b/config/secrets.yml
@@ -0,0 +1,32 @@
+# Be sure to restart your server when you modify this file.
+
+# Your secret key is used for verifying the integrity of signed cookies.
+# If you change this key, all old signed cookies will become invalid!
+
+# Make sure the secret is at least 30 characters and all random,
+# no regular words or you'll be exposed to dictionary attacks.
+# You can use `rails secret` to generate a secure secret key.
+
+# Make sure the secrets in this file are kept private
+# if you're sharing your code publicly.
+
+# Shared secrets are available across all environments.
+
+# shared:
+# api_key: a1B2c3D4e5F6
+
+# Environmental secrets are only available for that specific environment.
+
+development:
+ secret_key_base: eea8d079479693b4939c8df2e4ae74db85acf2e5eb64e5e529a727777456f3ea649a9a31ea74e507f25b2d93a5079514a2654b7a437097482fdd04a456589644
+
+test:
+ secret_key_base: d8c2cac2d3ffbfd7e6504a74d6604b771e4e8ed8a50ae6805679c2940339524761b1c1754a5b6f4a405a2413eefc116988716cd8216286bfb18aa77eba346f25
+
+# Do not keep production secrets in the unencrypted secrets file.
+# Instead, either read values from the environment.
+# Or, use `bin/rails secrets:setup` to configure encrypted secrets
+# and move the `production:` environment over there.
+
+production:
+ secret_key_base: <%= ENV["SECRET_KEY_BASE"] %>
diff --git a/config/spring.rb b/config/spring.rb
new file mode 100644
index 000000000..c9119b40c
--- /dev/null
+++ b/config/spring.rb
@@ -0,0 +1,6 @@
+%w(
+ .ruby-version
+ .rbenv-vars
+ tmp/restart.txt
+ tmp/caching-dev.txt
+).each { |path| Spring.watch(path) }
diff --git a/db/migrate/20180403001023_create_drivers.rb b/db/migrate/20180403001023_create_drivers.rb
new file mode 100644
index 000000000..eddae1b05
--- /dev/null
+++ b/db/migrate/20180403001023_create_drivers.rb
@@ -0,0 +1,10 @@
+class CreateDrivers < ActiveRecord::Migration[5.1]
+ def change
+ create_table :drivers do |t|
+ t.string :name
+ t.string :vin
+
+ t.timestamps
+ end
+ end
+end
diff --git a/db/migrate/20180403001617_create_passengers.rb b/db/migrate/20180403001617_create_passengers.rb
new file mode 100644
index 000000000..91ede51f5
--- /dev/null
+++ b/db/migrate/20180403001617_create_passengers.rb
@@ -0,0 +1,10 @@
+class CreatePassengers < ActiveRecord::Migration[5.1]
+ def change
+ create_table :passengers do |t|
+ t.string :name
+ t.string :phone_number
+
+ t.timestamps
+ end
+ end
+end
diff --git a/db/migrate/20180403002006_create_trips.rb b/db/migrate/20180403002006_create_trips.rb
new file mode 100644
index 000000000..f0f7705b7
--- /dev/null
+++ b/db/migrate/20180403002006_create_trips.rb
@@ -0,0 +1,11 @@
+class CreateTrips < ActiveRecord::Migration[5.1]
+ def change
+ create_table :trips do |t|
+ t.date :date
+ t.integer :rating
+ t.integer :cost
+
+ t.timestamps
+ end
+ end
+end
diff --git a/db/migrate/20180403192106_add_columns_driver_and_passenger_to_trip.rb b/db/migrate/20180403192106_add_columns_driver_and_passenger_to_trip.rb
new file mode 100644
index 000000000..1c718ac04
--- /dev/null
+++ b/db/migrate/20180403192106_add_columns_driver_and_passenger_to_trip.rb
@@ -0,0 +1,6 @@
+class AddColumnsDriverAndPassengerToTrip < ActiveRecord::Migration[5.1]
+ def change
+ add_reference :trips, :driver, foreign_key: true
+ add_reference :trips, :passenger, foreign_key: true
+ end
+end
diff --git a/db/migrate/20180403235041_change_passenger_phone_number_column_name.rb b/db/migrate/20180403235041_change_passenger_phone_number_column_name.rb
new file mode 100644
index 000000000..841110765
--- /dev/null
+++ b/db/migrate/20180403235041_change_passenger_phone_number_column_name.rb
@@ -0,0 +1,5 @@
+class ChangePassengerPhoneNumberColumnName < ActiveRecord::Migration[5.1]
+ def change
+ rename_column :passengers, :phone_number, :phone_num
+ end
+end
diff --git a/db/migrate/20180406220436_add_status_column_to_driver.rb b/db/migrate/20180406220436_add_status_column_to_driver.rb
new file mode 100644
index 000000000..8de53e041
--- /dev/null
+++ b/db/migrate/20180406220436_add_status_column_to_driver.rb
@@ -0,0 +1,5 @@
+class AddStatusColumnToDriver < ActiveRecord::Migration[5.1]
+ def change
+ add_column(:drivers, :status, :string)
+ end
+end
diff --git a/db/schema.rb b/db/schema.rb
new file mode 100644
index 000000000..434c18028
--- /dev/null
+++ b/db/schema.rb
@@ -0,0 +1,47 @@
+# This file is auto-generated from the current state of the database. Instead
+# of editing this file, please use the migrations feature of Active Record to
+# incrementally modify your database, and then regenerate this schema definition.
+#
+# Note that this schema.rb definition is the authoritative source for your
+# database schema. If you need to create the application database on another
+# system, you should be using db:schema:load, not running all the migrations
+# from scratch. The latter is a flawed and unsustainable approach (the more migrations
+# you'll amass, the slower it'll run and the greater likelihood for issues).
+#
+# It's strongly recommended that you check this file into your version control system.
+
+ActiveRecord::Schema.define(version: 20180406220436) do
+
+ # These are extensions that must be enabled in order to support this database
+ enable_extension "plpgsql"
+
+ create_table "drivers", force: :cascade do |t|
+ t.string "name"
+ t.string "vin"
+ t.datetime "created_at", null: false
+ t.datetime "updated_at", null: false
+ t.string "status"
+ end
+
+ create_table "passengers", force: :cascade do |t|
+ t.string "name"
+ t.string "phone_num"
+ t.datetime "created_at", null: false
+ t.datetime "updated_at", null: false
+ end
+
+ create_table "trips", force: :cascade do |t|
+ t.date "date"
+ t.integer "rating"
+ t.integer "cost"
+ t.datetime "created_at", null: false
+ t.datetime "updated_at", null: false
+ t.bigint "driver_id"
+ t.bigint "passenger_id"
+ t.index ["driver_id"], name: "index_trips_on_driver_id"
+ t.index ["passenger_id"], name: "index_trips_on_passenger_id"
+ end
+
+ add_foreign_key "trips", "drivers"
+ add_foreign_key "trips", "passengers"
+end
diff --git a/lib/assets/.keep b/lib/assets/.keep
new file mode 100644
index 000000000..e69de29bb
diff --git a/lib/tasks/.keep b/lib/tasks/.keep
new file mode 100644
index 000000000..e69de29bb
diff --git a/log/.keep b/log/.keep
new file mode 100644
index 000000000..e69de29bb
diff --git a/package.json b/package.json
new file mode 100644
index 000000000..29015d533
--- /dev/null
+++ b/package.json
@@ -0,0 +1,5 @@
+{
+ "name": "ride-share",
+ "private": true,
+ "dependencies": {}
+}
diff --git a/public/404.html b/public/404.html
new file mode 100644
index 000000000..2be3af26f
--- /dev/null
+++ b/public/404.html
@@ -0,0 +1,67 @@
+
+
+
+ The page you were looking for doesn't exist (404)
+
+
+
+
+
+
+
+
+
The page you were looking for doesn't exist.
+
You may have mistyped the address or the page may have moved.
+
+
If you are the application owner check the logs for more information.
+
+
+
diff --git a/public/422.html b/public/422.html
new file mode 100644
index 000000000..c08eac0d1
--- /dev/null
+++ b/public/422.html
@@ -0,0 +1,67 @@
+
+
+
+ The change you wanted was rejected (422)
+
+
+
+
+
+
+
+
+
The change you wanted was rejected.
+
Maybe you tried to change something you didn't have access to.
+
+
If you are the application owner check the logs for more information.
+
+
+
diff --git a/public/500.html b/public/500.html
new file mode 100644
index 000000000..78a030af2
--- /dev/null
+++ b/public/500.html
@@ -0,0 +1,66 @@
+
+
+
+ We're sorry, but something went wrong (500)
+
+
+
+
+
+
+
+
+
We're sorry, but something went wrong.
+
+
If you are the application owner check the logs for more information.
+
+
+
diff --git a/public/apple-touch-icon-precomposed.png b/public/apple-touch-icon-precomposed.png
new file mode 100644
index 000000000..e69de29bb
diff --git a/public/apple-touch-icon.png b/public/apple-touch-icon.png
new file mode 100644
index 000000000..e69de29bb
diff --git a/public/favicon.ico b/public/favicon.ico
new file mode 100644
index 000000000..e69de29bb
diff --git a/public/robots.txt b/public/robots.txt
new file mode 100644
index 000000000..37b576a4a
--- /dev/null
+++ b/public/robots.txt
@@ -0,0 +1 @@
+# See http://www.robotstxt.org/robotstxt.html for documentation on how to use the robots.txt file
diff --git a/test/application_system_test_case.rb b/test/application_system_test_case.rb
new file mode 100644
index 000000000..d19212abd
--- /dev/null
+++ b/test/application_system_test_case.rb
@@ -0,0 +1,5 @@
+require "test_helper"
+
+class ApplicationSystemTestCase < ActionDispatch::SystemTestCase
+ driven_by :selenium, using: :chrome, screen_size: [1400, 1400]
+end
diff --git a/test/controllers/.keep b/test/controllers/.keep
new file mode 100644
index 000000000..e69de29bb
diff --git a/test/fixtures/.keep b/test/fixtures/.keep
new file mode 100644
index 000000000..e69de29bb
diff --git a/test/fixtures/drivers.yml b/test/fixtures/drivers.yml
new file mode 100644
index 000000000..74f888f2f
--- /dev/null
+++ b/test/fixtures/drivers.yml
@@ -0,0 +1,11 @@
+# Read about fixtures at http://api.rubyonrails.org/classes/ActiveRecord/FixtureSet.html
+
+one:
+ id: 1
+ name: MyString
+ vin: MyString
+
+two:
+ id: 1
+ name: MyString
+ vin: MyString
diff --git a/test/fixtures/files/.keep b/test/fixtures/files/.keep
new file mode 100644
index 000000000..e69de29bb
diff --git a/test/fixtures/passengers.yml b/test/fixtures/passengers.yml
new file mode 100644
index 000000000..e1f1a49bf
--- /dev/null
+++ b/test/fixtures/passengers.yml
@@ -0,0 +1,9 @@
+# Read about fixtures at http://api.rubyonrails.org/classes/ActiveRecord/FixtureSet.html
+
+one:
+ name: MyString
+ phone_number: MyString
+
+two:
+ name: MyString
+ phone_number: MyString
diff --git a/test/fixtures/trips.yml b/test/fixtures/trips.yml
new file mode 100644
index 000000000..a3b2d0876
--- /dev/null
+++ b/test/fixtures/trips.yml
@@ -0,0 +1,11 @@
+# Read about fixtures at http://api.rubyonrails.org/classes/ActiveRecord/FixtureSet.html
+
+one:
+ date:
+ rating: 1
+ cost: 1
+
+two:
+ date:
+ rating: 1
+ cost: 1
diff --git a/test/helpers/.keep b/test/helpers/.keep
new file mode 100644
index 000000000..e69de29bb
diff --git a/test/integration/.keep b/test/integration/.keep
new file mode 100644
index 000000000..e69de29bb
diff --git a/test/mailers/.keep b/test/mailers/.keep
new file mode 100644
index 000000000..e69de29bb
diff --git a/test/models/.keep b/test/models/.keep
new file mode 100644
index 000000000..e69de29bb
diff --git a/test/models/driver_test.rb b/test/models/driver_test.rb
new file mode 100644
index 000000000..203cc4e33
--- /dev/null
+++ b/test/models/driver_test.rb
@@ -0,0 +1,9 @@
+require "test_helper"
+
+describe Driver do
+ let(:driver) { Driver.new }
+
+ it "must be valid" do
+ value(driver).must_be :valid?
+ end
+end
diff --git a/test/models/passenger_test.rb b/test/models/passenger_test.rb
new file mode 100644
index 000000000..3f55ffd00
--- /dev/null
+++ b/test/models/passenger_test.rb
@@ -0,0 +1,9 @@
+require "test_helper"
+
+describe Passenger do
+ let(:passenger) { Passenger.new }
+
+ it "must be valid" do
+ value(passenger).must_be :valid?
+ end
+end
diff --git a/test/models/trip_test.rb b/test/models/trip_test.rb
new file mode 100644
index 000000000..6bbc51182
--- /dev/null
+++ b/test/models/trip_test.rb
@@ -0,0 +1,9 @@
+require "test_helper"
+
+describe Trip do
+ let(:trip) { Trip.new }
+
+ it "must be valid" do
+ value(trip).must_be :valid?
+ end
+end
diff --git a/test/system/.keep b/test/system/.keep
new file mode 100644
index 000000000..e69de29bb
diff --git a/test/test_helper.rb b/test/test_helper.rb
new file mode 100644
index 000000000..10594a324
--- /dev/null
+++ b/test/test_helper.rb
@@ -0,0 +1,26 @@
+ENV["RAILS_ENV"] = "test"
+require File.expand_path("../../config/environment", __FILE__)
+require "rails/test_help"
+require "minitest/rails"
+require "minitest/reporters" # for Colorized output
+
+# For colorful output!
+Minitest::Reporters.use!(
+ Minitest::Reporters::SpecReporter.new,
+ ENV,
+ Minitest.backtrace_filter
+)
+
+
+# To add Capybara feature tests add `gem "minitest-rails-capybara"`
+# to the test group in the Gemfile and uncomment the following:
+# require "minitest/rails/capybara"
+
+# Uncomment for awesome colorful output
+# require "minitest/pride"
+
+class ActiveSupport::TestCase
+ # Setup all fixtures in test/fixtures/*.yml for all tests in alphabetical order.
+ fixtures :all
+ # Add more helper methods to be used by all tests here...
+end
diff --git a/tmp/cache/assets/sprockets/v3.0/09/09VG3ntpdKqcsVUBQd0vh6gbB61Tg52pl4mX3Dp80zA.cache b/tmp/cache/assets/sprockets/v3.0/09/09VG3ntpdKqcsVUBQd0vh6gbB61Tg52pl4mX3Dp80zA.cache
new file mode 100644
index 000000000..f9f88b260
Binary files /dev/null and b/tmp/cache/assets/sprockets/v3.0/09/09VG3ntpdKqcsVUBQd0vh6gbB61Tg52pl4mX3Dp80zA.cache differ
diff --git a/tmp/cache/assets/sprockets/v3.0/0C/0CLlplPSfep8s5eVPs712AgLC8WL_fABbEevUTacWj4.cache b/tmp/cache/assets/sprockets/v3.0/0C/0CLlplPSfep8s5eVPs712AgLC8WL_fABbEevUTacWj4.cache
new file mode 100644
index 000000000..8cbfb77bb
Binary files /dev/null and b/tmp/cache/assets/sprockets/v3.0/0C/0CLlplPSfep8s5eVPs712AgLC8WL_fABbEevUTacWj4.cache differ
diff --git a/tmp/cache/assets/sprockets/v3.0/2a/2a7qFZpK0jkj7HEDzIC9yO5vZZwjVYeaibaoMK0FbuQ.cache b/tmp/cache/assets/sprockets/v3.0/2a/2a7qFZpK0jkj7HEDzIC9yO5vZZwjVYeaibaoMK0FbuQ.cache
new file mode 100644
index 000000000..2fe2f0952
Binary files /dev/null and b/tmp/cache/assets/sprockets/v3.0/2a/2a7qFZpK0jkj7HEDzIC9yO5vZZwjVYeaibaoMK0FbuQ.cache differ
diff --git a/tmp/cache/assets/sprockets/v3.0/2d/2dehC5f1yO6b0RJqvvdBIS0A-YLskNOVN4S2c5xKcsM.cache b/tmp/cache/assets/sprockets/v3.0/2d/2dehC5f1yO6b0RJqvvdBIS0A-YLskNOVN4S2c5xKcsM.cache
new file mode 100644
index 000000000..2fd6c86b9
Binary files /dev/null and b/tmp/cache/assets/sprockets/v3.0/2d/2dehC5f1yO6b0RJqvvdBIS0A-YLskNOVN4S2c5xKcsM.cache differ
diff --git a/tmp/cache/assets/sprockets/v3.0/50/509GNsBoFhvTm2lYt62GKxOo0Xy2e2PSW0vycRhJqrs.cache b/tmp/cache/assets/sprockets/v3.0/50/509GNsBoFhvTm2lYt62GKxOo0Xy2e2PSW0vycRhJqrs.cache
new file mode 100644
index 000000000..6248d5397
Binary files /dev/null and b/tmp/cache/assets/sprockets/v3.0/50/509GNsBoFhvTm2lYt62GKxOo0Xy2e2PSW0vycRhJqrs.cache differ
diff --git a/tmp/cache/assets/sprockets/v3.0/5L/5Lb6Ux9_q_S3JTxqnlc8SKq3te6nHk1RDMl3c7Yicyg.cache b/tmp/cache/assets/sprockets/v3.0/5L/5Lb6Ux9_q_S3JTxqnlc8SKq3te6nHk1RDMl3c7Yicyg.cache
new file mode 100644
index 000000000..18e518eaa
Binary files /dev/null and b/tmp/cache/assets/sprockets/v3.0/5L/5Lb6Ux9_q_S3JTxqnlc8SKq3te6nHk1RDMl3c7Yicyg.cache differ
diff --git a/tmp/cache/assets/sprockets/v3.0/5M/5MUssFjPLU03xEsvHcLSu30k8mw7Ttbyi_bQBlDISuo.cache b/tmp/cache/assets/sprockets/v3.0/5M/5MUssFjPLU03xEsvHcLSu30k8mw7Ttbyi_bQBlDISuo.cache
new file mode 100644
index 000000000..dab948dd1
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/5M/5MUssFjPLU03xEsvHcLSu30k8mw7Ttbyi_bQBlDISuo.cache
@@ -0,0 +1,3 @@
+[o:Set:
+@hash}
+I"environment-version:ETTI"environment-paths;TTI"rails-env;TTI"Zprocessors:type=application/javascript&file_type=application/javascript&pipeline=self;TTI"pfile-digest:///Users/Emilce/.rvm/gems/ruby-2.5.0/gems/actioncable-5.1.6/lib/assets/compiled/action_cable.js;TTF
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/5a/5a5gwLUgPgD75nt_LT0Lw7QJtgT7qgg3Yq6KE7fdewA.cache b/tmp/cache/assets/sprockets/v3.0/5a/5a5gwLUgPgD75nt_LT0Lw7QJtgT7qgg3Yq6KE7fdewA.cache
new file mode 100644
index 000000000..adf734b91
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/5a/5a5gwLUgPgD75nt_LT0Lw7QJtgT7qgg3Yq6KE7fdewA.cache
@@ -0,0 +1 @@
+I"app/assets/stylesheets/application.css?type=text/css&pipeline=self&id=bcf34c15c0ffc6b1c7f2f45b70864de2013be22bb4242831a00baf59a646df52:ET
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/61/61DYE6KWkT0kZHOqhoDyZVE-tFnswqDzUluEf04Z9qI.cache b/tmp/cache/assets/sprockets/v3.0/61/61DYE6KWkT0kZHOqhoDyZVE-tFnswqDzUluEf04Z9qI.cache
new file mode 100644
index 000000000..4e82a6d26
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/61/61DYE6KWkT0kZHOqhoDyZVE-tFnswqDzUluEf04Z9qI.cache
@@ -0,0 +1,2 @@
+[o:Set:
+@hash}I"environment-version:ETTI"environment-paths;TTI"rails-env;TTI"?processors:type=text/css&file_type=text/css&pipeline=debug;TTI"9file-digest://app/assets/stylesheets/application.css;TTI">processors:type=text/css&file_type=text/css&pipeline=self;TTI")file-digest://app/assets/stylesheets;TTF
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/6M/6MLrDvcoLuTUWbN6nlkdajujY6-rBsxYPIj7BH7nl0Q.cache b/tmp/cache/assets/sprockets/v3.0/6M/6MLrDvcoLuTUWbN6nlkdajujY6-rBsxYPIj7BH7nl0Q.cache
new file mode 100644
index 000000000..120374d55
Binary files /dev/null and b/tmp/cache/assets/sprockets/v3.0/6M/6MLrDvcoLuTUWbN6nlkdajujY6-rBsxYPIj7BH7nl0Q.cache differ
diff --git a/tmp/cache/assets/sprockets/v3.0/6X/6XoaCLqwArEAjnt1xHBJeindEM9YL4ZHXdkMtToUIEs.cache b/tmp/cache/assets/sprockets/v3.0/6X/6XoaCLqwArEAjnt1xHBJeindEM9YL4ZHXdkMtToUIEs.cache
new file mode 100644
index 000000000..f4b465779
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/6X/6XoaCLqwArEAjnt1xHBJeindEM9YL4ZHXdkMtToUIEs.cache
@@ -0,0 +1 @@
+I"/Users/Emilce/.rvm/gems/ruby-2.5.0/gems/turbolinks-source-5.1.0/lib/assets/javascripts/turbolinks.js?type=application/javascript&pipeline=self&id=80646cf3d933eae6827750f3f26f83dab001a6f4b0d77ce2c065876b64e5e38a:ET
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/7C/7CLnORfMral7tTX-yV_HrpN8EhICULWtpTA8_hmWmH0.cache b/tmp/cache/assets/sprockets/v3.0/7C/7CLnORfMral7tTX-yV_HrpN8EhICULWtpTA8_hmWmH0.cache
new file mode 100644
index 000000000..6435cfa8b
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/7C/7CLnORfMral7tTX-yV_HrpN8EhICULWtpTA8_hmWmH0.cache
@@ -0,0 +1 @@
+I"/Users/Emilce/.rvm/gems/ruby-2.5.0/gems/actionview-5.1.6/lib/assets/compiled/rails-ujs.js?type=application/javascript&pipeline=self&id=2bfd6d654e0626113cdd7d00157ea6848e95a70b35a3416a4a296c43d2b97b02:ET
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/7q/7qn1x9-h_PpBSgnyYuSHlUb4NJt1uaxnH9pMbdCFQXc.cache b/tmp/cache/assets/sprockets/v3.0/7q/7qn1x9-h_PpBSgnyYuSHlUb4NJt1uaxnH9pMbdCFQXc.cache
new file mode 100644
index 000000000..60f52bb85
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/7q/7qn1x9-h_PpBSgnyYuSHlUb4NJt1uaxnH9pMbdCFQXc.cache
@@ -0,0 +1 @@
+"%AG{h tlmVNEf
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/8M/8MX6bXtraWsd5lzkI_7qnIjLWhdtjxlkNSNDXjm0qmA.cache b/tmp/cache/assets/sprockets/v3.0/8M/8MX6bXtraWsd5lzkI_7qnIjLWhdtjxlkNSNDXjm0qmA.cache
new file mode 100644
index 000000000..59b348e26
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/8M/8MX6bXtraWsd5lzkI_7qnIjLWhdtjxlkNSNDXjm0qmA.cache
@@ -0,0 +1 @@
+"%d-K`8Y3/Ya~K
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/8p/8p4tFDOUDZ6vZBCZRav-L2HVe_d0vIU1FNJ7ZDx5h4I.cache b/tmp/cache/assets/sprockets/v3.0/8p/8p4tFDOUDZ6vZBCZRav-L2HVe_d0vIU1FNJ7ZDx5h4I.cache
new file mode 100644
index 000000000..6a07c5d1a
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/8p/8p4tFDOUDZ6vZBCZRav-L2HVe_d0vIU1FNJ7ZDx5h4I.cache
@@ -0,0 +1 @@
+I"/Users/Emilce/.rvm/gems/ruby-2.5.0/gems/actioncable-5.1.6/lib/assets/compiled/action_cable.js?type=application/javascript&pipeline=self&id=65efc173d0048752a3283bdbfa48c70b730ed91125d26ca93a80f9eb2578568e:ET
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/99/99m8UCKl4j8IpsVOK8ltLHyNh8Ae0nHw3GBkC34V_co.cache b/tmp/cache/assets/sprockets/v3.0/99/99m8UCKl4j8IpsVOK8ltLHyNh8Ae0nHw3GBkC34V_co.cache
new file mode 100644
index 000000000..419da84a5
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/99/99m8UCKl4j8IpsVOK8ltLHyNh8Ae0nHw3GBkC34V_co.cache
@@ -0,0 +1,2 @@
+[o:Set:
+@hash}I"environment-version:ETTI"environment-paths;TTI"rails-env;TTI"0processors:type=text/css&file_type=text/css;TTI"9file-digest://app/assets/stylesheets/application.css;TTI">processors:type=text/css&file_type=text/css&pipeline=self;TTI")file-digest://app/assets/stylesheets;TTF
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/9j/9jKW9WElmj9F_q6I_okQeIlVMfwYVh_qdeKn9sQXrQc.cache b/tmp/cache/assets/sprockets/v3.0/9j/9jKW9WElmj9F_q6I_okQeIlVMfwYVh_qdeKn9sQXrQc.cache
new file mode 100644
index 000000000..e1341673e
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/9j/9jKW9WElmj9F_q6I_okQeIlVMfwYVh_qdeKn9sQXrQc.cache
@@ -0,0 +1 @@
+I"app/assets/stylesheets/application.css?type=text/css&pipeline=self&id=7edd31c6eb6243c21124aab0840f312dfa641dee2bbd2606968a308687ff1ef7:ET
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/AQ/AQD3NJ9_YxQUo7edkN4kMYeBq6g7P-7fRpJYQT7F4_Q.cache b/tmp/cache/assets/sprockets/v3.0/AQ/AQD3NJ9_YxQUo7edkN4kMYeBq6g7P-7fRpJYQT7F4_Q.cache
new file mode 100644
index 000000000..36e1c6527
Binary files /dev/null and b/tmp/cache/assets/sprockets/v3.0/AQ/AQD3NJ9_YxQUo7edkN4kMYeBq6g7P-7fRpJYQT7F4_Q.cache differ
diff --git a/tmp/cache/assets/sprockets/v3.0/B4/B43LeT9Wba4fLvXw-C_kKq-x9HwYZxnBBiltbIufzzQ.cache b/tmp/cache/assets/sprockets/v3.0/B4/B43LeT9Wba4fLvXw-C_kKq-x9HwYZxnBBiltbIufzzQ.cache
new file mode 100644
index 000000000..99c1ed4d7
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/B4/B43LeT9Wba4fLvXw-C_kKq-x9HwYZxnBBiltbIufzzQ.cache
@@ -0,0 +1,2 @@
+[o:Set:
+@hash}I"environment-version:ETTI"environment-paths;TTI"rails-env;TTI">processors:type=text/css&file_type=text/css&pipeline=self;TTI"9file-digest://app/assets/stylesheets/application.css;TTI")file-digest://app/assets/stylesheets;TTF
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/BK/BK18VeFoZLAfi86wThHywmlSwWFDft_VS_m5g2rdkbc.cache b/tmp/cache/assets/sprockets/v3.0/BK/BK18VeFoZLAfi86wThHywmlSwWFDft_VS_m5g2rdkbc.cache
new file mode 100644
index 000000000..92073c674
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/BK/BK18VeFoZLAfi86wThHywmlSwWFDft_VS_m5g2rdkbc.cache
@@ -0,0 +1 @@
+I"app/assets/javascripts/application.js?type=application/javascript&pipeline=self&id=fb2c6ddadcaeacc5cd4c1354a373390f9bb0c39b719ae4e88265ca29155a6dbd:ET
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/Bm/Bmk_sKdVMLGrsE-A_MufZKLWIOO-jqcmbd5N3D2BJqA.cache b/tmp/cache/assets/sprockets/v3.0/Bm/Bmk_sKdVMLGrsE-A_MufZKLWIOO-jqcmbd5N3D2BJqA.cache
new file mode 100644
index 000000000..207337bd7
Binary files /dev/null and b/tmp/cache/assets/sprockets/v3.0/Bm/Bmk_sKdVMLGrsE-A_MufZKLWIOO-jqcmbd5N3D2BJqA.cache differ
diff --git a/tmp/cache/assets/sprockets/v3.0/DA/DAf2L_j8QSTZg8BB2ZbHWq7GPZ0em5IsFhFWGglkxlc.cache b/tmp/cache/assets/sprockets/v3.0/DA/DAf2L_j8QSTZg8BB2ZbHWq7GPZ0em5IsFhFWGglkxlc.cache
new file mode 100644
index 000000000..baa1fd1d7
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/DA/DAf2L_j8QSTZg8BB2ZbHWq7GPZ0em5IsFhFWGglkxlc.cache
@@ -0,0 +1 @@
+I"app/assets/javascripts/application.js?type=application/javascript&pipeline=self&id=1453857c4fd34ea81b7635a4906ae3018526cc86cb6577f0f9083ccfc97be7a8:ET
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/Fc/FcW9jerX2GWLWvWQ-ELi_jBUaHsqiPbXUdSjOFK0cYs.cache b/tmp/cache/assets/sprockets/v3.0/Fc/FcW9jerX2GWLWvWQ-ELi_jBUaHsqiPbXUdSjOFK0cYs.cache
new file mode 100644
index 000000000..cc25e11c7
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/Fc/FcW9jerX2GWLWvWQ-ELi_jBUaHsqiPbXUdSjOFK0cYs.cache
@@ -0,0 +1 @@
+I"/Users/hannahlisa/.rvm/gems/ruby-2.5.0/gems/actionview-5.1.6/lib/assets/compiled/rails-ujs.js?type=application/javascript&pipeline=self&id=1a60a0f8ddec383eda5d34839cacbf8e1998c29764b7612de3297404292f197c:ET
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/Fh/Fh8J00sf4XDidCwr0543o0p4HLa5KlvhpZSY9JhJopo.cache b/tmp/cache/assets/sprockets/v3.0/Fh/Fh8J00sf4XDidCwr0543o0p4HLa5KlvhpZSY9JhJopo.cache
new file mode 100644
index 000000000..51e0e41a4
Binary files /dev/null and b/tmp/cache/assets/sprockets/v3.0/Fh/Fh8J00sf4XDidCwr0543o0p4HLa5KlvhpZSY9JhJopo.cache differ
diff --git a/tmp/cache/assets/sprockets/v3.0/G9/G9G5v2j9NOzBpyhcu7cpI-jYHzCwDmiGBCe-j2i1S2Y.cache b/tmp/cache/assets/sprockets/v3.0/G9/G9G5v2j9NOzBpyhcu7cpI-jYHzCwDmiGBCe-j2i1S2Y.cache
new file mode 100644
index 000000000..bea3b767b
Binary files /dev/null and b/tmp/cache/assets/sprockets/v3.0/G9/G9G5v2j9NOzBpyhcu7cpI-jYHzCwDmiGBCe-j2i1S2Y.cache differ
diff --git a/tmp/cache/assets/sprockets/v3.0/HC/HCDOUd7-S45aJ_PjVAC_Vmjyud3i1aQv4cE3t9_Z3Dw.cache b/tmp/cache/assets/sprockets/v3.0/HC/HCDOUd7-S45aJ_PjVAC_Vmjyud3i1aQv4cE3t9_Z3Dw.cache
new file mode 100644
index 000000000..41c143955
Binary files /dev/null and b/tmp/cache/assets/sprockets/v3.0/HC/HCDOUd7-S45aJ_PjVAC_Vmjyud3i1aQv4cE3t9_Z3Dw.cache differ
diff --git a/tmp/cache/assets/sprockets/v3.0/I2/I2WxkuIf-f3zOOvskD8SgmqP-oLaW_ikBfrlR1rV-sA.cache b/tmp/cache/assets/sprockets/v3.0/I2/I2WxkuIf-f3zOOvskD8SgmqP-oLaW_ikBfrlR1rV-sA.cache
new file mode 100644
index 000000000..8a6cadcbf
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/I2/I2WxkuIf-f3zOOvskD8SgmqP-oLaW_ikBfrlR1rV-sA.cache
@@ -0,0 +1 @@
+"%%?a>6(8ϥ>jaUz
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/Jy/JyJY6i05-42nclT8CRdMZ8JQB9viRhwoSDq-CIPo3Jw.cache b/tmp/cache/assets/sprockets/v3.0/Jy/JyJY6i05-42nclT8CRdMZ8JQB9viRhwoSDq-CIPo3Jw.cache
new file mode 100644
index 000000000..e14ba4ba0
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/Jy/JyJY6i05-42nclT8CRdMZ8JQB9viRhwoSDq-CIPo3Jw.cache
@@ -0,0 +1 @@
+I"app/assets/stylesheets/application.css?type=text/css&pipeline=debug&id=a98e88fc91a804fbacb177880e71e476e6742f520ac3abfba6bedeaae8513936:ET
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/K6/K6DzQadyGFaB0Qq8CNurD_OyCpG3VSjznKFMVzfM9A8.cache b/tmp/cache/assets/sprockets/v3.0/K6/K6DzQadyGFaB0Qq8CNurD_OyCpG3VSjznKFMVzfM9A8.cache
new file mode 100644
index 000000000..5c5e1dcd9
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/K6/K6DzQadyGFaB0Qq8CNurD_OyCpG3VSjznKFMVzfM9A8.cache
@@ -0,0 +1 @@
+"%uWljZxU>?]pcs
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/KJ/KJAF7-v3red0qqxllRKJcQfUNrJ9P9xivD5JKDf_Dpk.cache b/tmp/cache/assets/sprockets/v3.0/KJ/KJAF7-v3red0qqxllRKJcQfUNrJ9P9xivD5JKDf_Dpk.cache
new file mode 100644
index 000000000..4a24e1ef7
Binary files /dev/null and b/tmp/cache/assets/sprockets/v3.0/KJ/KJAF7-v3red0qqxllRKJcQfUNrJ9P9xivD5JKDf_Dpk.cache differ
diff --git a/tmp/cache/assets/sprockets/v3.0/LB/LBs3NHmkUUlFr4cjAjqgOT2IXtho8nzsHV4P-l37wfE.cache b/tmp/cache/assets/sprockets/v3.0/LB/LBs3NHmkUUlFr4cjAjqgOT2IXtho8nzsHV4P-l37wfE.cache
new file mode 100644
index 000000000..a5dce822d
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/LB/LBs3NHmkUUlFr4cjAjqgOT2IXtho8nzsHV4P-l37wfE.cache
@@ -0,0 +1,3 @@
+[o:Set:
+@hash}
+I"environment-version:ETTI"environment-paths;TTI"rails-env;TTI"Zprocessors:type=application/javascript&file_type=application/javascript&pipeline=self;TTI"{file-digest:///Users/hannahlisa/.rvm/gems/ruby-2.5.0/gems/turbolinks-source-5.1.0/lib/assets/javascripts/turbolinks.js;TTF
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/LY/LYSfIhbf-IEdcVb3Rx9YkP_K3rrzdj-4VO5ZqdwgjHo.cache b/tmp/cache/assets/sprockets/v3.0/LY/LYSfIhbf-IEdcVb3Rx9YkP_K3rrzdj-4VO5ZqdwgjHo.cache
new file mode 100644
index 000000000..615be736d
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/LY/LYSfIhbf-IEdcVb3Rx9YkP_K3rrzdj-4VO5ZqdwgjHo.cache
@@ -0,0 +1 @@
+"%iOH3
l;ӯY4Q
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/Lf/LfOlLjiBOvYXPPyULzw8LFbXZgIGT2Hs8ZTNTBwFliA.cache b/tmp/cache/assets/sprockets/v3.0/Lf/LfOlLjiBOvYXPPyULzw8LFbXZgIGT2Hs8ZTNTBwFliA.cache
new file mode 100644
index 000000000..8a6cadcbf
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/Lf/LfOlLjiBOvYXPPyULzw8LFbXZgIGT2Hs8ZTNTBwFliA.cache
@@ -0,0 +1 @@
+"%%?a>6(8ϥ>jaUz
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/MJ/MJRiQeCtO2SlQwpziBggwexsqYiV3yg78f3cW7mMqNY.cache b/tmp/cache/assets/sprockets/v3.0/MJ/MJRiQeCtO2SlQwpziBggwexsqYiV3yg78f3cW7mMqNY.cache
new file mode 100644
index 000000000..615be736d
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/MJ/MJRiQeCtO2SlQwpziBggwexsqYiV3yg78f3cW7mMqNY.cache
@@ -0,0 +1 @@
+"%iOH3
l;ӯY4Q
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/ML/MLgzw28RnkQTphUQpxfz9T3qzA_6w2tLvnh67RwHcsA.cache b/tmp/cache/assets/sprockets/v3.0/ML/MLgzw28RnkQTphUQpxfz9T3qzA_6w2tLvnh67RwHcsA.cache
new file mode 100644
index 000000000..ca7f2e1bf
Binary files /dev/null and b/tmp/cache/assets/sprockets/v3.0/ML/MLgzw28RnkQTphUQpxfz9T3qzA_6w2tLvnh67RwHcsA.cache differ
diff --git a/tmp/cache/assets/sprockets/v3.0/MX/MXIfq_lC1Yg59vLDzOq25OeKkZV46Rk5cIaGcg7smeU.cache b/tmp/cache/assets/sprockets/v3.0/MX/MXIfq_lC1Yg59vLDzOq25OeKkZV46Rk5cIaGcg7smeU.cache
new file mode 100644
index 000000000..57b40b7e2
Binary files /dev/null and b/tmp/cache/assets/sprockets/v3.0/MX/MXIfq_lC1Yg59vLDzOq25OeKkZV46Rk5cIaGcg7smeU.cache differ
diff --git a/tmp/cache/assets/sprockets/v3.0/Nb/NbxND_tbRGfktv0Ys3vk3egQw0OkWx435RvZwdTEnW4.cache b/tmp/cache/assets/sprockets/v3.0/Nb/NbxND_tbRGfktv0Ys3vk3egQw0OkWx435RvZwdTEnW4.cache
new file mode 100644
index 000000000..c678ef43a
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/Nb/NbxND_tbRGfktv0Ys3vk3egQw0OkWx435RvZwdTEnW4.cache
@@ -0,0 +1 @@
+"%Cm&UVUi>7.a24
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/QF/QFJ7a9XNZRRD_f3KTrjyAWrzluZS5OYeNqvqCM7_kc0.cache b/tmp/cache/assets/sprockets/v3.0/QF/QFJ7a9XNZRRD_f3KTrjyAWrzluZS5OYeNqvqCM7_kc0.cache
new file mode 100644
index 000000000..2800ad3b2
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/QF/QFJ7a9XNZRRD_f3KTrjyAWrzluZS5OYeNqvqCM7_kc0.cache
@@ -0,0 +1 @@
+"%Bșo$'AdLxRU
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/S7/S7HXBIB4ys4v6whypAYSjMH2kJfvFXb7lwV-tzIheyI.cache b/tmp/cache/assets/sprockets/v3.0/S7/S7HXBIB4ys4v6whypAYSjMH2kJfvFXb7lwV-tzIheyI.cache
new file mode 100644
index 000000000..e4fa23a00
Binary files /dev/null and b/tmp/cache/assets/sprockets/v3.0/S7/S7HXBIB4ys4v6whypAYSjMH2kJfvFXb7lwV-tzIheyI.cache differ
diff --git a/tmp/cache/assets/sprockets/v3.0/Sn/Snnla5iVE9b9m8bW0UpOMB8q68jwt48E-q-YXOor3Zg.cache b/tmp/cache/assets/sprockets/v3.0/Sn/Snnla5iVE9b9m8bW0UpOMB8q68jwt48E-q-YXOor3Zg.cache
new file mode 100644
index 000000000..275ba577a
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/Sn/Snnla5iVE9b9m8bW0UpOMB8q68jwt48E-q-YXOor3Zg.cache
@@ -0,0 +1 @@
+I"app/assets/stylesheets/application.css?type=text/css&pipeline=debug&id=0a79c12d371420b66036bb22d3986e3c7b57e87061e8f69832e57c3b0f1bbe32:ET
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/Sz/SzvhYeiXyGqvxJXTdA-MLuapUYzGNvmAecYR02KU5tA.cache b/tmp/cache/assets/sprockets/v3.0/Sz/SzvhYeiXyGqvxJXTdA-MLuapUYzGNvmAecYR02KU5tA.cache
new file mode 100644
index 000000000..f3a3e5598
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/Sz/SzvhYeiXyGqvxJXTdA-MLuapUYzGNvmAecYR02KU5tA.cache
@@ -0,0 +1,2 @@
+"%ErZJM=ֽek
+rXˊ@KҞ$^
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/Ti/Ti-Tcnltzen0F1q-HSIOe9h_qaAbDg0UujNlYvY7Uc8.cache b/tmp/cache/assets/sprockets/v3.0/Ti/Ti-Tcnltzen0F1q-HSIOe9h_qaAbDg0UujNlYvY7Uc8.cache
new file mode 100644
index 000000000..692001e7f
Binary files /dev/null and b/tmp/cache/assets/sprockets/v3.0/Ti/Ti-Tcnltzen0F1q-HSIOe9h_qaAbDg0UujNlYvY7Uc8.cache differ
diff --git a/tmp/cache/assets/sprockets/v3.0/U2/U2SQaR8684sStIgsIsbkbNmisIiPFgv1nObWBN1MtwY.cache b/tmp/cache/assets/sprockets/v3.0/U2/U2SQaR8684sStIgsIsbkbNmisIiPFgv1nObWBN1MtwY.cache
new file mode 100644
index 000000000..8b07d4cbb
Binary files /dev/null and b/tmp/cache/assets/sprockets/v3.0/U2/U2SQaR8684sStIgsIsbkbNmisIiPFgv1nObWBN1MtwY.cache differ
diff --git a/tmp/cache/assets/sprockets/v3.0/UI/UImkupbDpB-zXvLDGumJiWlQ6cR37yQzq0Wrfdheywk.cache b/tmp/cache/assets/sprockets/v3.0/UI/UImkupbDpB-zXvLDGumJiWlQ6cR37yQzq0Wrfdheywk.cache
new file mode 100644
index 000000000..58ded955e
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/UI/UImkupbDpB-zXvLDGumJiWlQ6cR37yQzq0Wrfdheywk.cache
@@ -0,0 +1 @@
+"%ónx|b[ģYxF
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/VS/VSSuqze4tmYmmFLvT-LqGmNcgWqH499x9jm8-dvttdU.cache b/tmp/cache/assets/sprockets/v3.0/VS/VSSuqze4tmYmmFLvT-LqGmNcgWqH499x9jm8-dvttdU.cache
new file mode 100644
index 000000000..238b7bfd3
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/VS/VSSuqze4tmYmmFLvT-LqGmNcgWqH499x9jm8-dvttdU.cache
@@ -0,0 +1 @@
+I"app/assets/javascripts/cable.js?type=application/javascript&pipeline=self&id=ff395eb45fd22fc68573806dc9a82975c15d90827d9a44dff9f3e72c32f37b47:ET
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/VY/VYJl61OdNcQ2t_gcV_Ha-iyUfzFJL98ZVWyi5doq4_4.cache b/tmp/cache/assets/sprockets/v3.0/VY/VYJl61OdNcQ2t_gcV_Ha-iyUfzFJL98ZVWyi5doq4_4.cache
new file mode 100644
index 000000000..2800ad3b2
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/VY/VYJl61OdNcQ2t_gcV_Ha-iyUfzFJL98ZVWyi5doq4_4.cache
@@ -0,0 +1 @@
+"%Bșo$'AdLxRU
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/Va/VaSjkZjfMKN8xyO1jzVVH2iVvPMsT-41V5djYrldcyk.cache b/tmp/cache/assets/sprockets/v3.0/Va/VaSjkZjfMKN8xyO1jzVVH2iVvPMsT-41V5djYrldcyk.cache
new file mode 100644
index 000000000..59b348e26
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/Va/VaSjkZjfMKN8xyO1jzVVH2iVvPMsT-41V5djYrldcyk.cache
@@ -0,0 +1 @@
+"%d-K`8Y3/Ya~K
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/Vl/VlSWpOdwq44FLfJAN_Xgy2_Wevh26FNpKMmq8bzY8dk.cache b/tmp/cache/assets/sprockets/v3.0/Vl/VlSWpOdwq44FLfJAN_Xgy2_Wevh26FNpKMmq8bzY8dk.cache
new file mode 100644
index 000000000..fbaef6bf6
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/Vl/VlSWpOdwq44FLfJAN_Xgy2_Wevh26FNpKMmq8bzY8dk.cache
@@ -0,0 +1,3 @@
+[o:Set:
+@hash}
+I"environment-version:ETTI"environment-paths;TTI"rails-env;TTI"Zprocessors:type=application/javascript&file_type=application/javascript&pipeline=self;TTI"wfile-digest:///Users/Emilce/.rvm/gems/ruby-2.5.0/gems/turbolinks-source-5.1.0/lib/assets/javascripts/turbolinks.js;TTF
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/X5/X5lLZLMNgKCbDrM8LIISI6bYvvkX7cN3-9jW16clcAo.cache b/tmp/cache/assets/sprockets/v3.0/X5/X5lLZLMNgKCbDrM8LIISI6bYvvkX7cN3-9jW16clcAo.cache
new file mode 100644
index 000000000..51dce4010
Binary files /dev/null and b/tmp/cache/assets/sprockets/v3.0/X5/X5lLZLMNgKCbDrM8LIISI6bYvvkX7cN3-9jW16clcAo.cache differ
diff --git a/tmp/cache/assets/sprockets/v3.0/X6/X6Fv0U2erXM7QMiyLawUBUX17q2hOlvWIrfkWtpVswg.cache b/tmp/cache/assets/sprockets/v3.0/X6/X6Fv0U2erXM7QMiyLawUBUX17q2hOlvWIrfkWtpVswg.cache
new file mode 100644
index 000000000..59910600c
Binary files /dev/null and b/tmp/cache/assets/sprockets/v3.0/X6/X6Fv0U2erXM7QMiyLawUBUX17q2hOlvWIrfkWtpVswg.cache differ
diff --git a/tmp/cache/assets/sprockets/v3.0/X6/X6VCvA0rDzcYppPZbbpKdoG1vdG5aSZ5ISyit_DAj0Y.cache b/tmp/cache/assets/sprockets/v3.0/X6/X6VCvA0rDzcYppPZbbpKdoG1vdG5aSZ5ISyit_DAj0Y.cache
new file mode 100644
index 000000000..080c2a89a
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/X6/X6VCvA0rDzcYppPZbbpKdoG1vdG5aSZ5ISyit_DAj0Y.cache
@@ -0,0 +1 @@
+"%vl~wд2:k3!=?xW
jK4I
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/XJ/XJneIpcdddotwX80WBLZIyzFiFtN8wQSP2TpaBwZNjk.cache b/tmp/cache/assets/sprockets/v3.0/XJ/XJneIpcdddotwX80WBLZIyzFiFtN8wQSP2TpaBwZNjk.cache
new file mode 100644
index 000000000..7aaf37dfd
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/XJ/XJneIpcdddotwX80WBLZIyzFiFtN8wQSP2TpaBwZNjk.cache
@@ -0,0 +1 @@
+"%RmvS3.OLڹcƕq=_j
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/Xe/XeCltWN-GNpFTenHDMNS_uNfUmKHQ7s6M9pd_wHyBt8.cache b/tmp/cache/assets/sprockets/v3.0/Xe/XeCltWN-GNpFTenHDMNS_uNfUmKHQ7s6M9pd_wHyBt8.cache
new file mode 100644
index 000000000..2800ad3b2
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/Xe/XeCltWN-GNpFTenHDMNS_uNfUmKHQ7s6M9pd_wHyBt8.cache
@@ -0,0 +1 @@
+"%Bșo$'AdLxRU
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/YS/YSQ8L6MdwZrb0mh7M355ikt1zlFXmhAzYHCkKDTYs0I.cache b/tmp/cache/assets/sprockets/v3.0/YS/YSQ8L6MdwZrb0mh7M355ikt1zlFXmhAzYHCkKDTYs0I.cache
new file mode 100644
index 000000000..e4fa23a00
Binary files /dev/null and b/tmp/cache/assets/sprockets/v3.0/YS/YSQ8L6MdwZrb0mh7M355ikt1zlFXmhAzYHCkKDTYs0I.cache differ
diff --git a/tmp/cache/assets/sprockets/v3.0/Yz/YzahBJaL5Z06BCXqUVebEjZKu_byh5yQPyhmqO5sMkM.cache b/tmp/cache/assets/sprockets/v3.0/Yz/YzahBJaL5Z06BCXqUVebEjZKu_byh5yQPyhmqO5sMkM.cache
new file mode 100644
index 000000000..27d6a418a
Binary files /dev/null and b/tmp/cache/assets/sprockets/v3.0/Yz/YzahBJaL5Z06BCXqUVebEjZKu_byh5yQPyhmqO5sMkM.cache differ
diff --git a/tmp/cache/assets/sprockets/v3.0/ZB/ZBUakOhmd-sBZ3JMvoerokLgs_xDmj7EAQunRNxeqy4.cache b/tmp/cache/assets/sprockets/v3.0/ZB/ZBUakOhmd-sBZ3JMvoerokLgs_xDmj7EAQunRNxeqy4.cache
new file mode 100644
index 000000000..080c2a89a
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/ZB/ZBUakOhmd-sBZ3JMvoerokLgs_xDmj7EAQunRNxeqy4.cache
@@ -0,0 +1 @@
+"%vl~wд2:k3!=?xW
jK4I
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/Zm/ZmdTi2ZpVKp9vNQPgWzQZNumSDk5ZEtlAXAzcnoyW40.cache b/tmp/cache/assets/sprockets/v3.0/Zm/ZmdTi2ZpVKp9vNQPgWzQZNumSDk5ZEtlAXAzcnoyW40.cache
new file mode 100644
index 000000000..935576228
Binary files /dev/null and b/tmp/cache/assets/sprockets/v3.0/Zm/ZmdTi2ZpVKp9vNQPgWzQZNumSDk5ZEtlAXAzcnoyW40.cache differ
diff --git a/tmp/cache/assets/sprockets/v3.0/_F/_FCxjTiwNMlKyxe_5E4_Ojq24kGmzjDvcn3foF6uAKQ.cache b/tmp/cache/assets/sprockets/v3.0/_F/_FCxjTiwNMlKyxe_5E4_Ojq24kGmzjDvcn3foF6uAKQ.cache
new file mode 100644
index 000000000..6e2b7dace
Binary files /dev/null and b/tmp/cache/assets/sprockets/v3.0/_F/_FCxjTiwNMlKyxe_5E4_Ojq24kGmzjDvcn3foF6uAKQ.cache differ
diff --git a/tmp/cache/assets/sprockets/v3.0/bM/bM4KgdS1P7jNadsJfmSZTfOdd2XgUqp32ajTXi-9zZ8.cache b/tmp/cache/assets/sprockets/v3.0/bM/bM4KgdS1P7jNadsJfmSZTfOdd2XgUqp32ajTXi-9zZ8.cache
new file mode 100644
index 000000000..54345cdb5
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/bM/bM4KgdS1P7jNadsJfmSZTfOdd2XgUqp32ajTXi-9zZ8.cache
@@ -0,0 +1,3 @@
+[o:Set:
+@hash}
+I"environment-version:ETTI"environment-paths;TTI"rails-env;TTI"Zprocessors:type=application/javascript&file_type=application/javascript&pipeline=self;TTI"pfile-digest:///Users/hannahlisa/.rvm/gems/ruby-2.5.0/gems/actionview-5.1.6/lib/assets/compiled/rails-ujs.js;TTF
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/dr/drcH9KYZv3hBc8DdFKeRjFGL0RZOXFBTfCbj4QZL_9A.cache b/tmp/cache/assets/sprockets/v3.0/dr/drcH9KYZv3hBc8DdFKeRjFGL0RZOXFBTfCbj4QZL_9A.cache
new file mode 100644
index 000000000..d02d1b56e
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/dr/drcH9KYZv3hBc8DdFKeRjFGL0RZOXFBTfCbj4QZL_9A.cache
@@ -0,0 +1 @@
+I"}app/assets/stylesheets/application.css?type=text/css&id=2dadd81e05ef27f6d8c3718b86b1b51a777fdc2575b35b9f10a5654af1c2ba51:ET
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/eJ/eJZph2z9oJMpf2rM0sPYprogVr0vRBvMiF2q6qNbR2A.cache b/tmp/cache/assets/sprockets/v3.0/eJ/eJZph2z9oJMpf2rM0sPYprogVr0vRBvMiF2q6qNbR2A.cache
new file mode 100644
index 000000000..5c5e1dcd9
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/eJ/eJZph2z9oJMpf2rM0sPYprogVr0vRBvMiF2q6qNbR2A.cache
@@ -0,0 +1 @@
+"%uWljZxU>?]pcs
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/it/itjRNeES05SCcSGnOSODR_gZHsHa2CudMz8StEEAPzw.cache b/tmp/cache/assets/sprockets/v3.0/it/itjRNeES05SCcSGnOSODR_gZHsHa2CudMz8StEEAPzw.cache
new file mode 100644
index 000000000..ba8824b3a
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/it/itjRNeES05SCcSGnOSODR_gZHsHa2CudMz8StEEAPzw.cache
@@ -0,0 +1 @@
+I"app/assets/javascripts/cable.js?type=application/javascript&pipeline=self&id=64146946a609ea7f2e198f1092ad687beea4d906c56f6244a636e2a0953b1bc4:ET
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/jE/jEBKLxvijM6o-1MWhx9ge0WtljhrtHAzuVDgnUZq6QQ.cache b/tmp/cache/assets/sprockets/v3.0/jE/jEBKLxvijM6o-1MWhx9ge0WtljhrtHAzuVDgnUZq6QQ.cache
new file mode 100644
index 000000000..03cbbb4d8
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/jE/jEBKLxvijM6o-1MWhx9ge0WtljhrtHAzuVDgnUZq6QQ.cache
@@ -0,0 +1 @@
+I"/Users/hannahlisa/.rvm/gems/ruby-2.5.0/gems/turbolinks-source-5.1.0/lib/assets/javascripts/turbolinks.js?type=application/javascript&pipeline=self&id=3b4887047457baa8ffad4b32d66990b52b1c3398ca692851391dec0ac58cb11e:ET
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/mR/mRxL3OZhTMFbCd9bN1MOQvqvpe1Wo_szerM39vFPNOY.cache b/tmp/cache/assets/sprockets/v3.0/mR/mRxL3OZhTMFbCd9bN1MOQvqvpe1Wo_szerM39vFPNOY.cache
new file mode 100644
index 000000000..2800ad3b2
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/mR/mRxL3OZhTMFbCd9bN1MOQvqvpe1Wo_szerM39vFPNOY.cache
@@ -0,0 +1 @@
+"%Bșo$'AdLxRU
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/nL/nLE1svCGxGh8lAVB6r04Zlz_tWSadP8qcXX2ZBFGiME.cache b/tmp/cache/assets/sprockets/v3.0/nL/nLE1svCGxGh8lAVB6r04Zlz_tWSadP8qcXX2ZBFGiME.cache
new file mode 100644
index 000000000..6079705b4
Binary files /dev/null and b/tmp/cache/assets/sprockets/v3.0/nL/nLE1svCGxGh8lAVB6r04Zlz_tWSadP8qcXX2ZBFGiME.cache differ
diff --git a/tmp/cache/assets/sprockets/v3.0/ou/ouBtEOjZilcev4O00KLjNNRepam46rOeLH-L3P5m89Q.cache b/tmp/cache/assets/sprockets/v3.0/ou/ouBtEOjZilcev4O00KLjNNRepam46rOeLH-L3P5m89Q.cache
new file mode 100644
index 000000000..03cd1b0ec
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/ou/ouBtEOjZilcev4O00KLjNNRepam46rOeLH-L3P5m89Q.cache
@@ -0,0 +1 @@
+I"app/assets/javascripts/application.js?type=application/javascript&id=7d380812057538791fe6fdfe1ab0bf7526052e712d73c19bc4d6fd112355638e:ET
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/ou/ouM7ZO9VPLXKDLDFXpL9c8BTFOzChWsZ2ic6Yjiv-fs.cache b/tmp/cache/assets/sprockets/v3.0/ou/ouM7ZO9VPLXKDLDFXpL9c8BTFOzChWsZ2ic6Yjiv-fs.cache
new file mode 100644
index 000000000..976b84cb8
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/ou/ouM7ZO9VPLXKDLDFXpL9c8BTFOzChWsZ2ic6Yjiv-fs.cache
@@ -0,0 +1 @@
+"%zyÆO]u"Mێ
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/qX/qXO9Lmm3FeVrqIRqZdAeVL4S_ABP3bFX6jdzYYsyZ88.cache b/tmp/cache/assets/sprockets/v3.0/qX/qXO9Lmm3FeVrqIRqZdAeVL4S_ABP3bFX6jdzYYsyZ88.cache
new file mode 100644
index 000000000..a517be2b7
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/qX/qXO9Lmm3FeVrqIRqZdAeVL4S_ABP3bFX6jdzYYsyZ88.cache
@@ -0,0 +1 @@
+I"app/assets/javascripts/application.js?type=application/javascript&pipeline=debug&id=636fc1bda3688356a58f217c3790ca283c9d5b98298001dbd98891ff84b12455:ET
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/rI/rISfKeYe9GzAeKOoLe6MCG5zTYOzUEY1KPVqda8kYV8.cache b/tmp/cache/assets/sprockets/v3.0/rI/rISfKeYe9GzAeKOoLe6MCG5zTYOzUEY1KPVqda8kYV8.cache
new file mode 100644
index 000000000..ba0d61332
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/rI/rISfKeYe9GzAeKOoLe6MCG5zTYOzUEY1KPVqda8kYV8.cache
@@ -0,0 +1 @@
+I"app/assets/javascripts/application.js?type=application/javascript&id=13d88470b046cf925988b0c9d1abb4bd68f004e57ec39f8904dfcb8f53f086f6:ET
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/sY/sYTSiD1dFW6gw23-7xFzlVhyuPOmzCXwEv7mSB4i5Fk.cache b/tmp/cache/assets/sprockets/v3.0/sY/sYTSiD1dFW6gw23-7xFzlVhyuPOmzCXwEv7mSB4i5Fk.cache
new file mode 100644
index 000000000..09bb6ed52
Binary files /dev/null and b/tmp/cache/assets/sprockets/v3.0/sY/sYTSiD1dFW6gw23-7xFzlVhyuPOmzCXwEv7mSB4i5Fk.cache differ
diff --git a/tmp/cache/assets/sprockets/v3.0/tn/tn-f0UrgR9aDyjBG1R0AEG8cQjCJOZg2Oean-CJBSog.cache b/tmp/cache/assets/sprockets/v3.0/tn/tn-f0UrgR9aDyjBG1R0AEG8cQjCJOZg2Oean-CJBSog.cache
new file mode 100644
index 000000000..d3bf0fc33
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/tn/tn-f0UrgR9aDyjBG1R0AEG8cQjCJOZg2Oean-CJBSog.cache
@@ -0,0 +1 @@
+I"/Users/hannahlisa/.rvm/gems/ruby-2.5.0/gems/actioncable-5.1.6/lib/assets/compiled/action_cable.js?type=application/javascript&pipeline=self&id=1fa4f90b6cb042df1db8455b23f56e52a67cb229b61977fc9e4d9dc825fc66b7:ET
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/uM/uMFRJATS86UMmN_YsqXij4qsUPuHr9K1O2jItr7AUHI.cache b/tmp/cache/assets/sprockets/v3.0/uM/uMFRJATS86UMmN_YsqXij4qsUPuHr9K1O2jItr7AUHI.cache
new file mode 100644
index 000000000..c678ef43a
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/uM/uMFRJATS86UMmN_YsqXij4qsUPuHr9K1O2jItr7AUHI.cache
@@ -0,0 +1 @@
+"%Cm&UVUi>7.a24
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/uR/uRvnCW0r_okZvjRbTdkWp9Fy8GGOkkES7Hf7nC_QKIk.cache b/tmp/cache/assets/sprockets/v3.0/uR/uRvnCW0r_okZvjRbTdkWp9Fy8GGOkkES7Hf7nC_QKIk.cache
new file mode 100644
index 000000000..b9fa6c9f4
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/uR/uRvnCW0r_okZvjRbTdkWp9Fy8GGOkkES7Hf7nC_QKIk.cache
@@ -0,0 +1 @@
+I"}app/assets/stylesheets/application.css?type=text/css&id=d02b287ae57bdeead1e486b4f06b3bf21a2f383eb5dc03f28f3d5c38e917cbfb:ET
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/up/uprcxuXNk2BEEbixvypceR8d9E_RP2Q4nRBkhXmOYAw.cache b/tmp/cache/assets/sprockets/v3.0/up/uprcxuXNk2BEEbixvypceR8d9E_RP2Q4nRBkhXmOYAw.cache
new file mode 100644
index 000000000..de322d76c
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/up/uprcxuXNk2BEEbixvypceR8d9E_RP2Q4nRBkhXmOYAw.cache
@@ -0,0 +1,3 @@
+[o:Set:
+@hash}
+I"environment-version:ETTI"environment-paths;TTI"rails-env;TTI"Zprocessors:type=application/javascript&file_type=application/javascript&pipeline=self;TTI"lfile-digest:///Users/Emilce/.rvm/gems/ruby-2.5.0/gems/actionview-5.1.6/lib/assets/compiled/rails-ujs.js;TTF
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/v5/v5yTOMznGgdQAhS_UR3WhdS_H6d_IvQozB5jjryDwUQ.cache b/tmp/cache/assets/sprockets/v3.0/v5/v5yTOMznGgdQAhS_UR3WhdS_H6d_IvQozB5jjryDwUQ.cache
new file mode 100644
index 000000000..8b07d4cbb
Binary files /dev/null and b/tmp/cache/assets/sprockets/v3.0/v5/v5yTOMznGgdQAhS_UR3WhdS_H6d_IvQozB5jjryDwUQ.cache differ
diff --git a/tmp/cache/assets/sprockets/v3.0/vM/vMqGP5i74cusl58QyKXJDTu5MmNFb4iayWE_OyJbGNs.cache b/tmp/cache/assets/sprockets/v3.0/vM/vMqGP5i74cusl58QyKXJDTu5MmNFb4iayWE_OyJbGNs.cache
new file mode 100644
index 000000000..58ded955e
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/vM/vMqGP5i74cusl58QyKXJDTu5MmNFb4iayWE_OyJbGNs.cache
@@ -0,0 +1 @@
+"%ónx|b[ģYxF
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/vV/vVzHtC8Ouw8rPH734lGsRfqaT3Hqcd6ctcrLicxMTSU.cache b/tmp/cache/assets/sprockets/v3.0/vV/vVzHtC8Ouw8rPH734lGsRfqaT3Hqcd6ctcrLicxMTSU.cache
new file mode 100644
index 000000000..976b84cb8
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/vV/vVzHtC8Ouw8rPH734lGsRfqaT3Hqcd6ctcrLicxMTSU.cache
@@ -0,0 +1 @@
+"%zyÆO]u"Mێ
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/wJ/wJaNvsrbb2nIp7CapbDVajz2Awn8bm0RrenlCgomiLc.cache b/tmp/cache/assets/sprockets/v3.0/wJ/wJaNvsrbb2nIp7CapbDVajz2Awn8bm0RrenlCgomiLc.cache
new file mode 100644
index 000000000..f3a3e5598
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/wJ/wJaNvsrbb2nIp7CapbDVajz2Awn8bm0RrenlCgomiLc.cache
@@ -0,0 +1,2 @@
+"%ErZJM=ֽek
+rXˊ@KҞ$^
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/wn/wn2aFhXXWOjKgI2tgJDzK0hzYW-SS6AOZpDhTEdrwRs.cache b/tmp/cache/assets/sprockets/v3.0/wn/wn2aFhXXWOjKgI2tgJDzK0hzYW-SS6AOZpDhTEdrwRs.cache
new file mode 100644
index 000000000..f12064378
Binary files /dev/null and b/tmp/cache/assets/sprockets/v3.0/wn/wn2aFhXXWOjKgI2tgJDzK0hzYW-SS6AOZpDhTEdrwRs.cache differ
diff --git a/tmp/cache/assets/sprockets/v3.0/wt/wttefXq5jOchAvqQJD_By6QSz07OkiQeIJBCajsxQ5Q.cache b/tmp/cache/assets/sprockets/v3.0/wt/wttefXq5jOchAvqQJD_By6QSz07OkiQeIJBCajsxQ5Q.cache
new file mode 100644
index 000000000..42c921029
Binary files /dev/null and b/tmp/cache/assets/sprockets/v3.0/wt/wttefXq5jOchAvqQJD_By6QSz07OkiQeIJBCajsxQ5Q.cache differ
diff --git a/tmp/cache/assets/sprockets/v3.0/ww/wwesvfD_fC40lFS82o7CcH1olAKwtTC4H4JpLi6A8wA.cache b/tmp/cache/assets/sprockets/v3.0/ww/wwesvfD_fC40lFS82o7CcH1olAKwtTC4H4JpLi6A8wA.cache
new file mode 100644
index 000000000..18b6d6dcb
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/ww/wwesvfD_fC40lFS82o7CcH1olAKwtTC4H4JpLi6A8wA.cache
@@ -0,0 +1 @@
+I"app/assets/javascripts/application.js?type=application/javascript&pipeline=debug&id=6aeabb0cf3cac8e63b52f37f2afbcbdc87265a591b1e2b2c39b502cdb0d63b80:ET
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/xe/xeN0fbhaEFdW_PCkuQs5kk-c0BF6icvfW02M6Fhx-8E.cache b/tmp/cache/assets/sprockets/v3.0/xe/xeN0fbhaEFdW_PCkuQs5kk-c0BF6icvfW02M6Fhx-8E.cache
new file mode 100644
index 000000000..18e518eaa
Binary files /dev/null and b/tmp/cache/assets/sprockets/v3.0/xe/xeN0fbhaEFdW_PCkuQs5kk-c0BF6icvfW02M6Fhx-8E.cache differ
diff --git a/tmp/cache/assets/sprockets/v3.0/z-/z-IKA0gFH1jG5lczHDYNuNh49rJ-PIs1RMbk5d04rlo.cache b/tmp/cache/assets/sprockets/v3.0/z-/z-IKA0gFH1jG5lczHDYNuNh49rJ-PIs1RMbk5d04rlo.cache
new file mode 100644
index 000000000..7aaf37dfd
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/z-/z-IKA0gFH1jG5lczHDYNuNh49rJ-PIs1RMbk5d04rlo.cache
@@ -0,0 +1 @@
+"%RmvS3.OLڹcƕq=_j
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/zK/zK1VvDXoYFcRabTWgXu0l4l3XZebMuQ-sRnfOktA4Ds.cache b/tmp/cache/assets/sprockets/v3.0/zK/zK1VvDXoYFcRabTWgXu0l4l3XZebMuQ-sRnfOktA4Ds.cache
new file mode 100644
index 000000000..3eb4e6ab2
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/zK/zK1VvDXoYFcRabTWgXu0l4l3XZebMuQ-sRnfOktA4Ds.cache
@@ -0,0 +1,3 @@
+[o:Set:
+@hash}
+I"environment-version:ETTI"environment-paths;TTI"rails-env;TTI"Zprocessors:type=application/javascript&file_type=application/javascript&pipeline=self;TTI"tfile-digest:///Users/hannahlisa/.rvm/gems/ruby-2.5.0/gems/actioncable-5.1.6/lib/assets/compiled/action_cable.js;TTF
\ No newline at end of file
diff --git a/tmp/cache/assets/sprockets/v3.0/zm/zmthNmWuoDj1l2pcrB8--AfEtuhZIh4q_x-R4UQWHK0.cache b/tmp/cache/assets/sprockets/v3.0/zm/zmthNmWuoDj1l2pcrB8--AfEtuhZIh4q_x-R4UQWHK0.cache
new file mode 100644
index 000000000..60f52bb85
--- /dev/null
+++ b/tmp/cache/assets/sprockets/v3.0/zm/zmthNmWuoDj1l2pcrB8--AfEtuhZIh4q_x-R4UQWHK0.cache
@@ -0,0 +1 @@
+"%AG{h tlmVNEf
\ No newline at end of file
diff --git a/tmp/pids/server.pid b/tmp/pids/server.pid
new file mode 100644
index 000000000..76405ae77
--- /dev/null
+++ b/tmp/pids/server.pid
@@ -0,0 +1 @@
+52340
\ No newline at end of file
diff --git a/tmp/restart.txt b/tmp/restart.txt
new file mode 100644
index 000000000..e69de29bb
diff --git a/vendor/.keep b/vendor/.keep
new file mode 100644
index 000000000..e69de29bb