source 'https://rubygems.org'

# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '4.2.6'
# Use postgresql as the database for Active Record
gem 'pg'

# bundle exec rake doc:rails generates the API under doc/api.
gem 'sdoc', '~> 0.4.0', group: :doc

# Use ActiveModel has_secure_password
gem 'bcrypt', '~> 3.1.7'

# memcached
gem 'dalli'

# web server
gem 'puma'

# scheduler
gem 'whenever', require: false

# authentication
gem 'devise'

# files
gem 'paperclip'

# enable login via rest
gem 'devise_token_auth'
gem 'rack-cors', require: 'rack/cors'

gem 'rmagick'

# Dspace REST API Integration
gem 'dspace_rest_client'

# pretty logs
gem 'rainbow'

# depoyment
gem 'mina'

# docs
gem 'rdoc'
gem 'stackprof'

group :development do
  gem 'annotate'

  gem 'immigrant'

  # Generate ER Diagram from database (use: rake erd)
  # Github Page: https://github.com/voormedia/rails-erd
  gem 'rails-erd'

  # Manage the database application (use: localhost:3000/rails/db)
  # Github Page: https://github.com/igorkasyanchuk/rails_db
  #gem 'rails_db'

  # static analysis tool for security vulnerabilities
  gem 'brakeman', require: false
  gem 'dawnscanner', require: false

  # evaluate source code
  gem 'rubycritic', require: false

  # ruby lint
  gem 'rubocop', require: false

  # profiler
  gem 'rack-mini-profiler'
  gem 'flamegraph'
  # reduce queries - https://github.com/flyerhzm/bullet
  gem 'bullet'

  gem 'better_errors'

  # Call 'byebug' anywhere in the code to stop execution and get a debugger console
  gem 'byebug'

  # Access an IRB console on exception pages or by using <%= console %> in views
  gem 'web-console', '~> 2.0'

  # Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring
  gem 'spring'

  # JavaScript runtime
  gem 'execjs'
end

group :test do
  gem 'shoulda'
  gem 'minitest-reporters'
end

gem 'streamio-ffmpeg', '~> 1.0.0'

# sidekiq
gem 'sidekiq'
gem 'sinatra', require: false
gem 'slim'

# CUrl
gem 'curb', '~> 0.8.8'

# libArchive (Zip, Rar, ...)
# C extension is required
# For Mac OSX: brew install libarchive && bundle config build.libarchive "--with-opt-dir=/usr/local/opt/libarchive"
# gem 'libarchive', '~> 0.1.2', :require => 'libarchive_ruby'
gem 'libarchive-static'

gem 'gitlab'

# authorization
gem 'pundit'

# elasticsearch integration
gem 'searchkick'

# enable/disable features by enviroments
gem 'feature'

# mass insert in ActiveRecord
gem 'activerecord-import'

# social connect
gem 'omniauth-facebook'
gem 'omniauth-twitter'
gem 'omniauth-google-oauth2'

# get mime type
gem 'mimemagic'

# html screenshot
gem 'screencap'

# using while rails 5 isn't released
gem 'rails-api'
gem 'active_model_serializers'

# limit the number of requests by user to api
gem 'redis-throttle', git: 'git://github.com/lelylan/redis-throttle.git'

# zip files
gem 'rubyzip'

# user activity
gem 'public_activity'