source 'https://rubygems.org'
ruby '2.7.1'

# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '~> 6.0'

gem 'bootsnap'
#gem 'webpacker'

# File handling
gem "shrine", "~> 3.0"

# To create variants (different sizes) of screenshot images
gem 'image_processing'
gem 'mini_magick'
gem 'fastimage'

# Use Puma as the app server
gem 'puma', '~> 3.0'
# Use SCSS for stylesheets
gem 'sass-rails', '~> 5.0'
# Use Uglifier as compressor for JavaScript assets
gem 'uglifier', '>= 1.3.0'
# Use CoffeeScript for .coffee assets and views
#gem 'coffee-rails', '~> 4.2'
# 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'
# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
gem 'jbuilder', '~> 2.5'
# Use Redis adapter to run Action Cable in production
# gem 'redis', '~> 3.0'
# Use ActiveModel has_secure_password
# gem 'bcrypt', '~> 3.1.7'

# Use Capistrano for deployment
# gem 'capistrano-rails', group: :development

gem 'rails-healthcheck'

group :development do
  # Access an IRB console on exception pages or by using <%= console %> anywhere in the code.
  #gem 'web-console'
  gem 'listen', '~> 3.0.5'
  # Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring
  gem 'spring'
  gem 'spring-watcher-listen', '~> 2.0.0'
  gem "better_errors"
  gem "binding_of_caller"

  gem "rails-erd"

  # Chrome Rails debugging app – broken with Rails 6.1 – leads to "stack level too deep"
  #gem 'meta_request'

  # VS Code code-intelligence
  gem 'solargraph'
end

# See https://github.com/sstephenson/execjs#readme for more supported runtimes
gem 'therubyracer', platforms: :ruby

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

# PostgreSQL support
gem 'pg'


group :development, :test do
  # Helps run tests automatically after changes
  # TODO: not sure all these packages are required (http://buildingrails.com/a/rails_automated_testing_setup_for_beginners)
  gem 'guard-rails'
  gem 'minitest-rails'
  gem 'guard-minitest'
  gem 'minitest-reporters'

  # Call 'byebug' anywhere in the code to stop execution and get a debugger console
  gem 'byebug', platform: :mri
end

group :test do
  gem 'capybara'
  gem 'selenium-webdriver'
end

# TODO… https://github.com/galetahub/simple-captcha
# Captcha for anonymous reports
# gem "galetahub-simple_captcha", :require => "simple_captcha"

# Zurb Foundation
# https://github.com/zurb/foundation-rails
gem 'foundation-rails', '~> 6.6'

# Pagination
gem 'will_paginate'

# Style the paginator properly to use Zurb Foundation's style
gem 'will_paginate-foundation'

# Full-text search in PostgreSQL
gem 'pg_search'

# Use SLIM as our templating language
gem 'slim-rails'

# Requires: apt-get install libbz2-dev
gem 'bzip2-ruby', :git => 'https://github.com/chewi/bzip2-ruby.git'

# Authentication
gem 'devise'

# Font Awesome icons
gem "font-awesome-rails"

# gem "recaptcha", require: "recaptcha/rails"

gem "sprockets"

#gem "activemodel-serializers-xml"

# Authentication against Google, Facebook and others
gem 'omniauth'
#gem 'omniauth-amazon'
#gem 'omniauth-google-oauth2'
#gem 'omniauth-github'
#gem 'omniauth-openid'

# Single-sign-on with salsa.debian.net
gem 'omniauth_openid_connect'
# Mitigate CVE-2015-9284
# https://github.com/cookpad/omniauth-rails_csrf_protection
gem 'omniauth-rails_csrf_protection'

# Role-based access
gem 'cancancan'

# Gravatars
gem 'gravtastic'
