Gemfile
source 'https://rubygems.org'
ruby '2.3.1'
# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '5.0.0.rc1'
# Use Puma as the app server
gem 'puma'
# Use SCSS for stylesheets
gem 'sass-rails', '~> 5.0.6'
##################
### JAVASCRIPT ###
##################
# Use Uglifier as compressor for JavaScript assets
gem 'uglifier', '>= 1.3.0'
# Use CoffeeScript for .coffee assets and views
gem 'coffee-rails', '~> 4.1.0'
# See https://github.com/rails/execjs#readme for more supported runtimes
gem 'therubyracer', platforms: :ruby
# Use jquery as the JavaScript library
gem 'jquery-rails'
# Turbolinks makes navigating your web application faster. Read more: https://github.com/turbolinks/turbolinks
gem 'turbolinks', '~> 5.x'
gem 'i18n-js'
# React
gem 'react_on_rails', '6.1.2'
########################
### Rails extensions ###
########################
# Auth
gem 'devise'
gem 'devise-i18n'
gem 'pundit'
gem 'rails-i18n'
gem 'slim-rails'
gem 'dry-validation' # more explicit validations
gem 'reform' # Form objects
gem 'cells'
gem 'cells-rails'
gem 'cells-slim'
gem 'aasm'
# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
gem 'jbuilder', '~> 2.0'
gem 'active_model_serializers', github: 'rails-api/active_model_serializers',
branch: 'master' # to get 0.10.0
# Use Redis adapter to run Action Cable in production
gem 'redis', '>= 3.0'
# Use ActiveModel has_secure_password
# gem 'bcrypt', '~> 3.1.7'
# image uploads
gem 'carrierwave'
gem 'carrierwave-base64'
gem 'mini_magick'
# HTML to image
gem 'imgkit', '~> 1.6.1'
gem 'image_optim', '~> 0.24'
gem 'image_optim_pack'
# Admin Backend
gem 'activeadmin', github: 'activeadmin'
# solves a pagination issue with active admin
gem 'kaminari', github: 'amatsuda/kaminari', branch: '0-17-stable'
# Worker
gem 'sidekiq'
gem 'sidekiq-cron'
gem 'sinatra', '>= 2.0.0.beta2', require: false # for sidekiq web ui
# Error monitoring
gem 'exception_notification'
# group :production, :staging do
# gem 'rails_12factor'
# end
################
### Database ###
################
gem 'pg'
gem 'pg_search' # Postgres search index
#########################
### External Services ###
#########################
gem 'localeapp'
#####################
# Dev/Test Specific #
#####################
group :development do
# startup
gem 'spring' # faster rails start
gem 'listen', '~> 3.0.5'
gem 'spring-watcher-listen', '~> 2.0.0'
# errors
gem 'better_errors'
gem 'binding_of_caller'
# debugging in chrome with RailsPanel
gem 'meta_request'
# Quiet Assets to disable asset pipeline in log
gem 'quiet_assets'
# requires graphviz to generate
# entity relationship diagrams
gem 'rails-erd', require: false
# Deploy utilities
gem 'capistrano', '~> 3.1'
gem 'capistrano-rails', '~> 1.1'
gem 'capistrano-rails-console'
gem 'capistrano-rails-tail-log'
gem 'capistrano-bundler'
gem 'capistrano-rbenv'
gem 'capistrano-passenger'
gem 'capistrano-npm'
gem 'capistrano-sidekiq'
end
group :test do
# gem 'memory_test_fix' # Sqlite inmemory fix
gem 'rake'
gem 'database_cleaner'
gem 'minitest-around'
gem 'rails-controller-testing'
# gem 'colorize' # use this when RBP quits using `colored`
gem 'fakeredis'
gem 'fakeweb', '~> 1.3'
gem 'webmock'
gem 'pry-rescue'
gem 'minitest-metadata', :require => false
# testing emails
gem 'email_spec'
end
group :development, :test do
# Use sqlite3 for testing
gem 'sqlite3'
# debugging
gem 'pry-rails' # pry is awsome
gem 'hirb' # hirb makes pry output even more awesome
gem 'pry-byebug' # kickass debugging
gem 'pry-stack_explorer' # step through stack
gem 'pry-doc' # read ruby docs in console
# test suite
gem 'minitest' # Testing using Minitest
# gem 'minitest-rails', github: 'blowmage/minitest-rails', branch: 'rails5'
gem 'minitest-spec-rails'
gem 'minitest-matchers'
gem 'minitest-line'
gem 'minitest-capybara'
# gem 'minitest-rails-capybara'
gem 'launchy' # save_and_open_page
gem 'shoulda'
gem 'mocha'
gem 'selenium-webdriver'
# test suite additions
gem 'rails_best_practices'
gem 'brakeman' # security test: execute with 'brakeman'
gem 'rubocop' # style enforcement
gem 'colorize' # Output coloring
# Code Coverage
gem 'simplecov', require: false
gem 'coveralls', require: false
# dev help
gem 'thin' # Replace Webrick
gem 'bullet' # Notify about n+1 queries
gem 'timecop' # time travel!
gem 'letter_opener' # emails in browser
gem 'dotenv-rails' # handle environment variables
end
group :development, :test, :staging do
gem 'factory_girl_rails'
gem 'ffaker'
end
# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]