Setup rspec and create file for customizing generators
diff --git a/.rspec b/.rspec
new file mode 100644
index 0000000..83e16f8
--- /dev/null
+++ b/.rspec
@@ -0,0 +1,2 @@
+--color
+--require spec_helper
diff --git a/config/initializers/generators.rb b/config/initializers/generators.rb
new file mode 100644
index 0000000..939732c
--- /dev/null
+++ b/config/initializers/generators.rb
@@ -0,0 +1,18 @@
+Rails.application.config.generators do |g|
+  # Generate desired tests using RSpec.
+  g.test_framework :rspec,
+                   view_specs: false,
+                   controller_specs: false,
+                   feature_specs: true,
+                   routing_specs: false,
+                   decorator_specs: false
+
+  # Use factory_girl for factories.
+  g.fixture_replacement :factory_girl, dir: 'spec/factories'
+
+  # Disable generators we don't need.
+  g.stylesheets false
+  g.javascripts false
+  g.template_engine :slim
+  g.helper false
+end
diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb
new file mode 100644
index 0000000..f5a8f38
--- /dev/null
+++ b/spec/spec_helper.rb
@@ -0,0 +1,36 @@
+require 'rubygems'
+
+ENV['RAILS_ENV'] ||= 'test'
+require File.expand_path('../../config/environment', __FILE__)
+require 'rspec/rails'
+require 'capybara/rails'
+require 'capybara/rspec'
+require 'capybara-screenshot/rspec'
+require 'capybara/webkit/matchers'
+
+Capybara.javascript_driver = :webkit
+
+Capybara.save_and_open_page_path = '/tmp/capybara-screenshot'
+Capybara::Screenshot.register_filename_prefix_formatter(:rspec) do |example|
+  "screen_#{example.full_description.gsub(' ', '-').gsub(/^.*\/spec\//, '')}"
+end
+
+ActiveRecord::Migration.maintain_test_schema!
+
+RSpec.configure do |config|
+  config.include Rails.application.routes.url_helpers
+  config.fail_fast = false
+  config.include FactoryGirl::Syntax::Methods
+  config.include Capybara::DSL
+  config.use_transactional_fixtures = false
+  config.infer_base_class_for_anonymous_controllers = false
+  config.order = 'random'
+  config.include AbstractController::Translation
+  config.before :suite do
+    DatabaseRewinder.clean_all
+  end
+
+  config.after :each do
+    DatabaseRewinder.clean
+  end
+end