1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
|
source 'https://rubygems.org'
require File.expand_path('../lib/gemfile_tools.rb', __FILE__)
## CORE
# rake 11.x throws lots of warnings about rails 3.2 code
gem "rake"
gem "rails", "~> 4.2.6"
gem "couchrest", "~> 2.0.0.rc3"
gem "couchrest_model", "~> 2.1.0.beta2"
if ARGV.grep(/assets:precompile/).empty?
gem "couchrest_session_store", "~> 0.4.1"
end
## AUTHENTICATION
gem "ruby-srp", "~> 0.2.1"
gem "rails_warden"
## CRYPTO
# we need certificate_authority v2.0, but was never released to rubygems,
# and travis does not work well with github sources, so vendored here:
gem 'certificate_authority', :path => 'vendor/gems/certificate_authority'
## LOCALIZATION
gem 'http_accept_language'
gem 'rails-i18n' # locale files for built-in validation messages and times
# https://github.com/svenfuchs/rails-i18n
# for a list of keys:
# https://github.com/svenfuchs/rails-i18n/blob/master/rails/locale/en.yml
gem 'common_languages', :path => 'vendor/gems/common_languages'
## VIEWS
gem 'kaminari'
gem 'rdiscount' # for rendering .md templates
## ASSETS
gem "jquery-rails"
gem "simple_form"
gem 'client_side_validations'
gem 'client_side_validations-simple_form'
gem "haml-rails"
gem "bootstrap-sass"
gem "sass-rails"
gem 'quiet_assets' # stops logging all the asset requests
group :production do
gem "uglifier"
gem 'therubyracer', :platforms => :ruby
# ^^ See https://github.com/sstephenson/execjs#readme
# for list of supported runtimes.
end
##
## ENVIRONMENT SPECIFIC GEMS
##
group :test do
# integration testing
gem 'capybara', require: false
gem 'poltergeist' # headless js
gem 'launchy' # save_and_open_page
gem 'phantomjs-binaries' # binaries specific to the os
# moching and stubbing
gem 'mocha', :require => false
gem 'minitest-stub-const' # why?
# generating test data
gem 'factory_girl_rails' # test data factories
gem 'faker' # names and numbers for test data
# billing tests
gem 'fake_braintree', require: false
# we use cucumber to document and test the api
gem 'cucumber-rails', require: false
end
group :test, :development do
gem 'thin'
gem 'i18n-missing_translations'
gem 'pry'
end
group :production do
gem 'SyslogLogger', '~> 2.0'
end
group :development do
gem "better_errors"
gem "binding_of_caller"
end
group :test, :debug do
# bundler on jessie doesn't support `:platforms => :ruby_21`
gem 'byebug'
end
##
## OPTIONAL GEMS AND ENGINES
##
enabled_engines.each do |name, gem_info|
gem gem_info[:name], :path => gem_info[:path], :groups => gem_info[:env]
end
custom_gems.each do |name, gem_info|
gem gem_info[:name], :path => gem_info[:path]
end
##
## DEPENDENCIES FOR OPTIONAL ENGINES
##
gem 'valid_email' # used by leap_web_help
|