2018-05-07 16:47:29 -07:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
|
2013-01-07 09:04:09 +01:00
|
|
|
source 'https://rubygems.org'
|
|
|
|
|
|
2016-03-08 19:20:35 +05:30
|
|
|
# rails-assets requires >= 1.8.4
|
2016-03-08 21:14:44 +05:30
|
|
|
if Gem::Version.new(Bundler::VERSION) < Gem::Version.new('1.8.4')
|
|
|
|
|
abort "Bundler version >= 1.8.4 is required"
|
|
|
|
|
end
|
2016-03-08 19:20:35 +05:30
|
|
|
|
2014-11-12 10:45:44 +01:00
|
|
|
# as web framework
|
2017-09-05 22:23:34 +03:00
|
|
|
gem 'rails', '~> 5.0.5'
|
|
|
|
|
|
|
|
|
|
# Use Puma as the app server
|
|
|
|
|
gem 'puma', '~> 3.0'
|
2016-01-25 19:00:56 +01:00
|
|
|
|
2016-03-22 18:16:51 +01:00
|
|
|
# enables serving assets in production and setting your logger to standard out
|
|
|
|
|
# both of which are required to run an application on a twelve-factor provider
|
|
|
|
|
# like heroku.com
|
|
|
|
|
gem 'rails_12factor', group: :production
|
|
|
|
|
|
2016-01-25 19:00:56 +01:00
|
|
|
# respond_to methods have been extracted to the responders gem
|
|
|
|
|
# http://edgeguides.rubyonrails.org/upgrading_ruby_on_rails.html#responders
|
|
|
|
|
gem 'responders', '~> 2.0'
|
2014-04-23 15:45:55 +02:00
|
|
|
|
2014-11-12 10:45:44 +01:00
|
|
|
# as the database for Active Record
|
2017-06-15 18:11:43 +03:00
|
|
|
# choose only one
|
2014-04-23 15:45:55 +02:00
|
|
|
gem 'mysql2'
|
2017-06-03 16:05:59 +05:30
|
|
|
# gem 'pg'
|
2014-04-23 15:45:55 +02:00
|
|
|
|
2014-11-12 10:45:44 +01:00
|
|
|
# for tracking data changes
|
2014-04-23 15:45:55 +02:00
|
|
|
gem 'paper_trail'
|
|
|
|
|
|
2016-04-27 11:48:12 +02:00
|
|
|
# for upload management
|
2016-04-27 12:38:37 +02:00
|
|
|
gem 'carrierwave'
|
2016-04-27 16:03:29 +02:00
|
|
|
gem 'carrierwave-bombshelter'
|
2017-12-03 18:19:21 -06:00
|
|
|
gem 'mini_magick'
|
2016-04-27 11:48:12 +02:00
|
|
|
|
|
|
|
|
# for internationalizing
|
2017-09-05 22:23:34 +03:00
|
|
|
gem 'rails-i18n', '~> 5.0.0'
|
2016-03-27 20:03:26 +05:30
|
|
|
|
2014-11-12 10:45:44 +01:00
|
|
|
# as authentification framework
|
2014-03-24 12:45:04 +01:00
|
|
|
gem 'devise'
|
2014-11-04 17:42:47 +01:00
|
|
|
gem 'devise_ichain_authenticatable'
|
|
|
|
|
|
2016-04-27 11:48:12 +02:00
|
|
|
# for openID authentication
|
2014-06-18 16:58:30 +03:00
|
|
|
gem 'omniauth'
|
|
|
|
|
gem 'omniauth-facebook'
|
2014-07-24 23:18:57 +03:00
|
|
|
gem 'omniauth-github'
|
2017-12-03 18:19:21 -06:00
|
|
|
gem 'omniauth-google-oauth2'
|
|
|
|
|
gem 'omniauth-openid'
|
2014-04-23 15:45:55 +02:00
|
|
|
|
2017-11-03 17:41:26 -07:00
|
|
|
# Bot-filtering
|
|
|
|
|
gem 'recaptcha', require: 'recaptcha/rails'
|
|
|
|
|
|
2014-11-12 10:45:44 +01:00
|
|
|
# as authorization framework
|
2017-09-05 22:23:34 +03:00
|
|
|
gem 'cancancan', '~> 2.0'
|
2016-04-27 11:48:12 +02:00
|
|
|
|
|
|
|
|
# for roles
|
2014-08-12 11:51:59 +03:00
|
|
|
gem 'rolify'
|
2014-04-23 15:45:55 +02:00
|
|
|
|
2015-01-12 23:13:10 +02:00
|
|
|
# to show flash messages from ajax requests
|
|
|
|
|
gem 'unobtrusive_flash', '>=3'
|
|
|
|
|
|
2014-11-12 10:45:44 +01:00
|
|
|
# as state machine
|
2014-04-30 15:26:38 +02:00
|
|
|
gem 'transitions', :require => %w( transitions active_record/transitions )
|
2014-04-23 15:45:55 +02:00
|
|
|
|
2014-11-12 10:45:44 +01:00
|
|
|
# for comments
|
2013-01-07 09:04:09 +01:00
|
|
|
gem 'acts_as_commentable_with_threading'
|
2017-12-03 18:19:21 -06:00
|
|
|
gem 'awesome_nested_set', '~> 3.1.3'
|
2014-04-23 15:45:55 +02:00
|
|
|
|
2014-11-12 10:45:44 +01:00
|
|
|
# as templating language
|
2014-04-30 15:26:38 +02:00
|
|
|
gem 'haml-rails'
|
2014-04-23 15:45:55 +02:00
|
|
|
|
2014-11-12 10:45:44 +01:00
|
|
|
# for stylesheets
|
2014-04-30 15:26:38 +02:00
|
|
|
gem 'sass-rails', '>= 4.0.2'
|
2014-04-23 15:45:55 +02:00
|
|
|
|
2014-11-12 10:45:44 +01:00
|
|
|
# as compressor for JavaScript assets
|
2014-04-23 15:45:55 +02:00
|
|
|
gem 'uglifier', '>= 1.3.0'
|
|
|
|
|
|
2014-11-12 10:45:44 +01:00
|
|
|
# as the front-end framework
|
2014-11-27 14:47:00 +01:00
|
|
|
gem 'autoprefixer-rails'
|
2017-12-03 18:19:21 -06:00
|
|
|
gem 'bootstrap-sass', '~> 3.3.4.1'
|
2016-02-06 19:19:53 +01:00
|
|
|
gem 'cocoon'
|
2017-09-05 22:23:34 +03:00
|
|
|
gem 'formtastic', '~> 3.1.5'
|
2017-12-03 18:19:21 -06:00
|
|
|
gem 'formtastic-bootstrap'
|
2016-02-06 19:19:53 +01:00
|
|
|
|
2014-11-12 10:45:44 +01:00
|
|
|
# as the JavaScript library
|
2014-04-23 15:45:55 +02:00
|
|
|
gem 'jquery-rails'
|
2016-08-11 15:05:53 +02:00
|
|
|
gem 'jquery-ui-rails', '~> 4.2.1'
|
2016-02-06 19:19:53 +01:00
|
|
|
|
2016-03-21 00:18:20 +01:00
|
|
|
# for languages validation
|
|
|
|
|
gem 'iso-639'
|
|
|
|
|
|
2018-03-01 19:00:41 -08:00
|
|
|
gem 'thor', '~> 0.19'
|
2017-09-05 17:40:46 +05:30
|
|
|
|
2016-04-27 11:48:12 +02:00
|
|
|
# frontend javascripts
|
2016-02-06 19:19:53 +01:00
|
|
|
source 'https://rails-assets.org' do
|
|
|
|
|
# for placeholder images
|
|
|
|
|
gem 'rails-assets-holderjs'
|
|
|
|
|
# for formating dates
|
|
|
|
|
gem 'rails-assets-date.format'
|
2016-04-27 11:48:12 +02:00
|
|
|
# for or parsing, validating, manipulating, and formatting dates
|
2016-02-06 19:19:53 +01:00
|
|
|
gem 'rails-assets-momentjs'
|
|
|
|
|
# for smooth scrolling
|
|
|
|
|
gem 'rails-assets-jquery-smooth-scroll'
|
|
|
|
|
# as color picker
|
|
|
|
|
gem 'rails-assets-spectrum'
|
|
|
|
|
# for color manipulation
|
|
|
|
|
gem 'rails-assets-tinycolor'
|
|
|
|
|
# for drawing triangle backgrounds
|
|
|
|
|
gem 'rails-assets-trianglify'
|
|
|
|
|
# for scroll way points
|
|
|
|
|
gem 'rails-assets-waypoints'
|
2016-03-08 16:50:30 +05:30
|
|
|
# for markdown editors
|
|
|
|
|
gem 'rails-assets-bootstrap-markdown'
|
|
|
|
|
gem 'rails-assets-markdown'
|
2017-12-03 18:19:21 -06:00
|
|
|
gem 'rails-assets-to-markdown'
|
2016-02-06 19:19:53 +01:00
|
|
|
end
|
|
|
|
|
|
|
|
|
|
# as date picker
|
|
|
|
|
gem 'bootstrap3-datetimepicker-rails', '~> 3.0.2'
|
2014-08-22 15:08:54 +02:00
|
|
|
gem 'jquery-datatables-rails', '~> 2.2.1'
|
2016-04-27 11:48:12 +02:00
|
|
|
|
2016-02-06 19:19:53 +01:00
|
|
|
# for charts
|
|
|
|
|
gem 'chart-js-rails'
|
2016-04-27 11:48:12 +02:00
|
|
|
|
2016-04-01 16:15:52 +02:00
|
|
|
# for displaying maps
|
|
|
|
|
gem 'leaflet-rails'
|
2014-04-23 15:45:55 +02:00
|
|
|
|
2014-11-12 10:45:44 +01:00
|
|
|
# for user avatars
|
2014-04-23 15:45:55 +02:00
|
|
|
gem 'gravtastic'
|
|
|
|
|
|
2014-11-20 14:57:03 +01:00
|
|
|
# for country selects
|
2016-03-07 18:28:14 +01:00
|
|
|
gem 'country_select'
|
2014-11-20 14:57:03 +01:00
|
|
|
|
2014-11-12 10:45:44 +01:00
|
|
|
# as PDF generator
|
2017-12-03 18:19:21 -06:00
|
|
|
gem 'prawn-qrcode', '~> 0.2.2.1'
|
2013-01-07 09:04:09 +01:00
|
|
|
gem 'prawn_rails'
|
2017-06-13 07:20:43 +05:30
|
|
|
gem 'rqrcode'
|
2014-04-23 15:45:55 +02:00
|
|
|
|
2014-11-12 10:45:44 +01:00
|
|
|
# to render XLS spreadsheets
|
2017-06-09 14:41:51 +02:00
|
|
|
gem 'axlsx', git: 'https://github.com/randym/axlsx.git'
|
2013-07-16 09:47:23 +02:00
|
|
|
gem 'axlsx_rails'
|
2014-04-23 15:45:55 +02:00
|
|
|
|
2014-11-12 10:45:44 +01:00
|
|
|
# as error catcher
|
2017-12-14 03:00:59 +05:30
|
|
|
gem 'airbrake', '~> 7.1'
|
2014-04-23 15:45:55 +02:00
|
|
|
|
2016-04-27 11:48:12 +02:00
|
|
|
# to make links faster
|
2014-04-23 15:45:55 +02:00
|
|
|
gem 'turbolinks'
|
|
|
|
|
|
2014-11-12 10:45:44 +01:00
|
|
|
# for JSON serialization of our API
|
2014-04-23 15:45:55 +02:00
|
|
|
gem 'active_model_serializers'
|
|
|
|
|
|
2016-04-27 11:48:12 +02:00
|
|
|
# as icon font
|
2014-06-24 15:17:17 +05:30
|
|
|
gem 'font-awesome-rails'
|
|
|
|
|
|
2016-04-27 11:48:12 +02:00
|
|
|
# for markdown
|
2014-06-29 17:13:53 +05:30
|
|
|
gem 'redcarpet'
|
|
|
|
|
|
2014-11-12 10:45:44 +01:00
|
|
|
# as rdoc generator
|
2014-04-23 15:45:55 +02:00
|
|
|
gem 'rdoc-generator-fivefish'
|
2014-04-11 12:32:15 +02:00
|
|
|
|
2014-11-12 10:45:44 +01:00
|
|
|
# for visitor tracking
|
2017-12-03 18:19:21 -06:00
|
|
|
gem 'ahoy_matey'
|
2014-11-12 10:45:44 +01:00
|
|
|
gem 'piwik_analytics', '~> 1.0.1'
|
2014-06-26 09:08:26 +02:00
|
|
|
|
2014-11-12 10:45:44 +01:00
|
|
|
# for recurring jobs
|
|
|
|
|
gem 'delayed_job_active_record'
|
2017-12-03 18:19:21 -06:00
|
|
|
gem 'whenever', :require => false
|
2014-07-07 14:58:53 +02:00
|
|
|
|
2014-11-12 10:45:44 +01:00
|
|
|
# to run scripts
|
2014-08-28 15:21:05 +02:00
|
|
|
gem 'daemons'
|
|
|
|
|
|
2014-11-12 10:45:44 +01:00
|
|
|
# to encapsulate money in objects
|
2014-08-28 15:21:05 +02:00
|
|
|
gem 'money-rails'
|
2014-08-19 12:31:31 +02:00
|
|
|
|
2014-11-14 11:58:36 +01:00
|
|
|
# for lists
|
|
|
|
|
gem 'acts_as_list'
|
|
|
|
|
|
2014-12-13 21:13:19 +02:00
|
|
|
# for switch checkboxes
|
|
|
|
|
gem 'bootstrap-switch-rails', '~> 3.0.0'
|
|
|
|
|
|
2016-02-06 19:19:53 +01:00
|
|
|
# for parsing OEmbed data
|
2017-12-17 19:25:13 -06:00
|
|
|
gem 'ruby-oembed', '~>0.12.0'
|
2015-04-22 21:30:32 +02:00
|
|
|
|
2016-04-27 11:48:12 +02:00
|
|
|
# for uploading images to the cloud
|
|
|
|
|
gem 'cloudinary'
|
|
|
|
|
|
2016-04-22 16:14:41 +02:00
|
|
|
# for setting app configuration in the environment
|
|
|
|
|
gem 'dotenv-rails'
|
|
|
|
|
|
2017-11-03 20:37:42 -07:00
|
|
|
# configurable toggles for functionality
|
|
|
|
|
# https://github.com/mgsnova/feature
|
|
|
|
|
gem 'feature'
|
|
|
|
|
|
2017-06-09 14:41:51 +02:00
|
|
|
# For countable.js
|
2017-02-05 16:00:45 +05:30
|
|
|
gem "countable-rails", "~> 0.0.1"
|
|
|
|
|
|
2016-05-02 17:07:45 +02:00
|
|
|
# Both are not in a group as we use it also for rake data:demo
|
2016-04-29 17:19:23 +02:00
|
|
|
# for fake data
|
|
|
|
|
gem 'faker'
|
2016-05-02 17:07:45 +02:00
|
|
|
# for seeds
|
|
|
|
|
gem 'factory_girl_rails'
|
2016-04-29 17:19:23 +02:00
|
|
|
|
2016-07-27 13:18:50 +05:30
|
|
|
# for integrating Stripe payment gateway
|
|
|
|
|
gem 'stripe'
|
|
|
|
|
|
2016-08-27 19:34:27 -04:00
|
|
|
# Provides Sprockets implementation for Rails Asset Pipeline
|
|
|
|
|
gem 'sprockets-rails'
|
|
|
|
|
|
2017-02-02 16:34:59 +02:00
|
|
|
# for multiple speakers select on proposal/event forms
|
|
|
|
|
gem 'selectize-rails'
|
|
|
|
|
|
2018-02-08 22:29:58 -08:00
|
|
|
# For collecting performance data
|
|
|
|
|
gem 'skylight'
|
|
|
|
|
|
2017-10-10 10:34:16 -07:00
|
|
|
# Nokogiri < 1.8.1 is subject to:
|
|
|
|
|
# CVE-2017-0663, CVE-2017-7375, CVE-2017-7376, CVE-2017-9047, CVE-2017-9048,
|
|
|
|
|
# CVE-2017-9049, CVE-2017-9050
|
|
|
|
|
gem 'nokogiri', '>= 1.8.1'
|
|
|
|
|
|
2017-11-17 18:32:08 -08:00
|
|
|
# memcached binary connector
|
|
|
|
|
gem 'dalli'
|
|
|
|
|
|
2016-04-22 16:14:41 +02:00
|
|
|
# Use guard and spring for testing in development
|
2014-04-26 16:52:31 +02:00
|
|
|
group :development do
|
2016-04-27 11:48:12 +02:00
|
|
|
# to launch specs when files are modified
|
2017-07-14 01:56:49 +05:30
|
|
|
gem 'guard-rspec'
|
2017-04-25 04:36:10 +05:30
|
|
|
gem 'haml_lint', '~> 0.24.0'
|
2017-12-03 18:19:21 -06:00
|
|
|
gem 'spring-commands-rspec'
|
2016-04-27 11:48:12 +02:00
|
|
|
# for static code analisys
|
2017-11-27 22:37:53 +05:30
|
|
|
gem 'rubocop', '~> 0.51.0', require: false
|
2016-04-27 11:48:12 +02:00
|
|
|
# as database
|
2014-04-30 15:26:38 +02:00
|
|
|
gem 'sqlite3'
|
2016-04-27 11:48:12 +02:00
|
|
|
# to open mails
|
2014-04-30 15:26:38 +02:00
|
|
|
gem 'letter_opener'
|
2016-04-27 11:48:12 +02:00
|
|
|
# to open mails in browser
|
2016-03-05 14:09:22 +01:00
|
|
|
gem 'letter_opener_web'
|
2016-04-27 11:48:12 +02:00
|
|
|
# as deployment system
|
2014-07-07 16:08:53 +02:00
|
|
|
gem 'mina'
|
2016-04-27 11:48:12 +02:00
|
|
|
# as debugger on error pages
|
2016-01-25 19:00:56 +01:00
|
|
|
gem 'web-console', '~> 2.0'
|
2014-04-26 16:52:31 +02:00
|
|
|
end
|
2014-07-04 22:36:28 +02:00
|
|
|
|
|
|
|
|
group :test do
|
2016-04-27 11:48:12 +02:00
|
|
|
# as test framework
|
|
|
|
|
gem 'capybara'
|
2017-12-03 18:19:21 -06:00
|
|
|
gem 'database_cleaner'
|
2014-08-19 08:47:28 -07:00
|
|
|
gem 'phantomjs', :require => 'phantomjs/poltergeist'
|
2017-12-03 18:19:21 -06:00
|
|
|
gem 'poltergeist'
|
|
|
|
|
gem 'rspec-rails', '~> 3.5', '>= 3.5.2'
|
2016-04-27 11:48:12 +02:00
|
|
|
# for measuring test coverage
|
|
|
|
|
gem 'coveralls', require: false
|
|
|
|
|
# for describing models
|
2015-10-11 23:10:01 -07:00
|
|
|
gem 'shoulda-matchers', require: false
|
2016-04-27 11:48:12 +02:00
|
|
|
# for stubing/mocking models
|
2014-07-04 22:55:01 +02:00
|
|
|
gem 'rspec-activemodel-mocks'
|
2016-04-27 11:48:12 +02:00
|
|
|
# to freeze time
|
2014-07-23 09:08:50 +02:00
|
|
|
gem 'timecop'
|
2016-03-09 13:32:43 +01:00
|
|
|
# for mocking external requests
|
|
|
|
|
gem 'webmock'
|
2016-08-09 02:29:44 +05:30
|
|
|
# for mocking Stripe responses in tests
|
|
|
|
|
gem 'stripe-ruby-mock'
|
2016-08-18 16:21:09 +02:00
|
|
|
# For validating JSON schemas
|
|
|
|
|
gem 'json-schema'
|
2017-09-05 22:23:34 +03:00
|
|
|
# For using 'assigns' in tests
|
|
|
|
|
gem 'rails-controller-testing'
|
2018-03-03 21:36:20 -08:00
|
|
|
# For managing the environment
|
|
|
|
|
gem 'climate_control'
|
2018-05-08 08:45:31 -07:00
|
|
|
# parallel tests
|
|
|
|
|
gem 'knapsack'
|
2014-07-04 22:36:28 +02:00
|
|
|
end
|
2014-07-21 14:27:32 +02:00
|
|
|
|
|
|
|
|
group :development, :test do
|
2016-04-27 11:48:12 +02:00
|
|
|
# as debugger
|
2014-07-23 15:34:05 +02:00
|
|
|
gem 'byebug'
|
2014-07-21 14:27:32 +02:00
|
|
|
end
|