237 lines
7.4 KiB
Ruby
237 lines
7.4 KiB
Ruby
# frozen_string_literal: true
|
|
|
|
ruby '2.6.2'
|
|
|
|
source 'https://rubygems.org'
|
|
|
|
git_source(:github) { |s| "https://github.com/#{s}.git" }
|
|
|
|
# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'.
|
|
gem 'rails', '~> 6.0.0'
|
|
|
|
# A set of common locale data and translations
|
|
# to internationalize and/or localize your Rails applications.
|
|
gem 'rails-i18n', '~> 6.0.0'
|
|
|
|
# Use postgresql as the database for Active Record.
|
|
gem 'pg', '~> 1.1'
|
|
|
|
# Use Puma as the app server.
|
|
gem 'puma', '~> 4.2'
|
|
|
|
# Use Uglifier as compressor for JavaScript assets.
|
|
gem 'uglifier', '>= 4.0'
|
|
|
|
# Turbolinks makes navigating your web application faster.
|
|
# Read more: https://github.com/turbolinks/turbolinks.
|
|
gem 'turbolinks', '~> 5.2'
|
|
|
|
# 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', '~> 4.1'
|
|
|
|
# Use ActiveModel has_secure_password.
|
|
gem 'bcrypt', '~> 3.1'
|
|
|
|
# Use ActiveStorage variant.
|
|
# gem 'mini_magick', '~> 4.8'
|
|
|
|
# Reduces boot times through caching; required in config/boot.rb.
|
|
gem 'bootsnap', '>= 1.4.0', require: false
|
|
|
|
# Provides extended documentation support for the REPL
|
|
# by means of improving the `show-doc` and `show-source` commands.
|
|
# With help of the plugin the commands are be able to display the source code
|
|
# and the docs of Ruby methods and classes implemented in C.
|
|
gem 'pry-doc', '~> 1.0'
|
|
|
|
# Use Pry as your Rails console.
|
|
gem 'pry-rails', '~> 0.3'
|
|
|
|
# This gem provides jQuery and the jQuery-ujs driver
|
|
# for your Rails 4+ application.
|
|
gem 'jquery-rails', '~> 4.3'
|
|
|
|
# The most popular HTML, CSS, and JavaScript framework for developing
|
|
# responsive, mobile first projects on the web.
|
|
gem 'bootstrap', '~> 4.3.1'
|
|
|
|
# Font-Awesome SASS gem for use in Ruby projects.
|
|
gem 'font-awesome-sass', '~> 5.5.0'
|
|
|
|
# Forms made easy for Rails!
|
|
# It's tied to a simple DSL, with no opinion on markup.
|
|
gem 'simple_form', '~> 5.0'
|
|
|
|
# A simple HTTP and REST client for Ruby,
|
|
# inspired by the Sinatra microframework style of specifying actions:
|
|
# get, put, post, delete.
|
|
gem 'rest-client', '~> 2.1'
|
|
|
|
# A gem that provides a client interface for the Sentry error logger.
|
|
gem 'sentry-raven'
|
|
|
|
# Flexible authentication solution for Rails with Warden.
|
|
gem 'devise', '~> 4.7'
|
|
|
|
# Translations for the devise gem.
|
|
gem 'devise-i18n', '~> 1.8'
|
|
|
|
# Object oriented authorization for Rails applications.
|
|
gem 'pundit', '~> 2.1'
|
|
|
|
# Interactor provides a common interface
|
|
# for performing complex user interactions.
|
|
gem 'interactor', '~> 3.1'
|
|
|
|
# A generalized Rack framework for multiple-provider authentication.
|
|
gem 'omniauth', '~> 1.9'
|
|
|
|
# This gem provides a mitigation against CVE-2015-9284 (Cross-Site Request
|
|
# Forgery on the request phrase when using OmniAuth gem with a Ruby on Rails
|
|
# application) by implementing a CSRF token verifier that directly utilize
|
|
# `ActionController::RequestForgeryProtection` code from Rails.
|
|
gem 'omniauth-rails_csrf_protection', '~> 0.1'
|
|
|
|
# Official OmniAuth strategy for GitHub.
|
|
gem 'omniauth-github', '~> 1.3'
|
|
|
|
# A rack middleware for throttling and blocking abusive requests.
|
|
gem 'rack-attack', '~> 6.1'
|
|
|
|
# Simple, efficient background processing for Ruby.
|
|
gem 'sidekiq', '~> 6.0'
|
|
|
|
# Helpers for the reCAPTCHA API.
|
|
gem 'recaptcha', '~> 5.1'
|
|
|
|
# Kaminari is a Scope & Engine based, clean, powerful, agnostic, customizable
|
|
# and sophisticated paginator for Rails 4+.
|
|
gem 'kaminari', '~> 1.1'
|
|
|
|
# Official AWS Ruby gem for Amazon Simple Storage Service (Amazon S3).
|
|
# This gem is part of the AWS SDK for Ruby.
|
|
gem 'aws-sdk-s3', require: false
|
|
|
|
# ActiveModel/Record integrations for Elasticsearch.
|
|
gem 'elasticsearch-model', '~> 7.0'
|
|
|
|
# Ruby on Rails integrations for Elasticsearch.
|
|
gem 'elasticsearch-rails', '~> 7.0'
|
|
|
|
group :development, :test do
|
|
# factory_bot provides a framework and DSL for defining and using factories.
|
|
gem 'factory_bot_rails', '~> 4.10'
|
|
|
|
# Faker is used to easily generate fake data:
|
|
# names, addresses, phone numbers, etc.
|
|
gem 'faker', '~> 1.8'
|
|
|
|
# Automatic Ruby code style checking tool.
|
|
# Aims to enforce the community-driven Ruby Style Guide.
|
|
gem 'rubocop', '~> 0.72.0'
|
|
|
|
# A collection of RuboCop cops
|
|
# to check for performance optimizations in Ruby code.
|
|
gem 'rubocop-performance', '~> 1.4'
|
|
|
|
# Automatic Rails code style checking tool. A RuboCop extension
|
|
# focused on enforcing Rails best practices and coding conventions.
|
|
gem 'rubocop-rails', '~> 2.2'
|
|
|
|
# Code style checking for RSpec files.
|
|
# A plugin for the RuboCop code style enforcing & linting tool.
|
|
gem 'rubocop-rspec', '~> 1.36'
|
|
|
|
# rspec-rails is a testing framework for Rails 3+
|
|
gem 'rspec-rails', '~> 3.8'
|
|
|
|
# bundler-audit provides patch-level verification for Bundled apps.
|
|
gem 'bundler-audit', '~> 0.6'
|
|
|
|
# Brakeman detects security vulnerabilities
|
|
# in Ruby on Rails applications via static analysis.
|
|
gem 'brakeman', '~> 4.3'
|
|
end
|
|
|
|
group :development do
|
|
# Capistrano is a utility and framework for executing commands in parallel
|
|
# on multiple remote machines, via SSH.
|
|
gem 'capistrano', '~> 3.11', require: false
|
|
|
|
# RVM integration for Capistrano.
|
|
gem 'capistrano-rvm', '~> 0.1', require: false
|
|
|
|
# Rails specific Capistrano tasks.
|
|
gem 'capistrano-rails', '~> 1.4', require: false
|
|
|
|
# Remote Rails console for Capistrano.
|
|
gem 'capistrano-rails-console', '~> 2.3', require: false
|
|
|
|
# Call 'byebug' anywhere in the code to stop execution
|
|
# and get a debugger console.
|
|
gem 'byebug', platforms: %i[mri mingw x64_mingw]
|
|
|
|
# The Listen gem listens to file modifications
|
|
# and notifies you about the changes. Works everywhere!
|
|
gem 'listen', '>= 3.0.5', '< 3.2'
|
|
|
|
# Access an interactive console on exception pages or by calling 'console'
|
|
# anywhere in the code.
|
|
gem 'web-console', '>= 3.3.0'
|
|
|
|
# Spring speeds up development by keeping your application running
|
|
# in the background. Read more: https://github.com/rails/spring.
|
|
gem 'spring'
|
|
|
|
# Makes spring watch files using the listen gem.
|
|
gem 'spring-watcher-listen', '~> 2.0.0'
|
|
|
|
# Automatically generate an entity-relationship diagram (ERD)
|
|
# for your Rails models.
|
|
gem 'rails-erd', '~> 1.5'
|
|
|
|
# YARD is a documentation generation tool for the Ruby programming language.
|
|
gem 'yard', '~> 0.9', '>= 0.9.20'
|
|
|
|
# When mail is sent from your application,
|
|
# Letter Opener will open a preview in the browser instead of sending.
|
|
gem 'letter_opener', '~> 1.6'
|
|
end
|
|
|
|
group :test do
|
|
# A Ruby implementation of the Coveralls API.
|
|
gem 'coveralls', require: false
|
|
|
|
# Strategies for cleaning databases.
|
|
# Can be used to ensure a clean state for testing.
|
|
gem 'database_cleaner', '~> 1.7'
|
|
|
|
# Code coverage for Ruby 1.9+ with a powerful configuration library
|
|
# and automatic merging of coverage across test suites.
|
|
gem 'simplecov', '~> 0.16', require: false
|
|
|
|
# Simple one-liner tests for common Rails functionality.
|
|
gem 'shoulda-matchers', '4.0.0.rc1'
|
|
|
|
# Cucumber Generator and Runtime for Rails.
|
|
gem 'cucumber-rails', '~> 1.7', require: false
|
|
|
|
# When a Cucumber step fails, it is useful to create a screenshot image
|
|
# and HTML file of the current page.
|
|
gem 'capybara-screenshot', '~> 1.0'
|
|
|
|
# WebDriver is a tool for writing automated tests of websites.
|
|
# It aims to mimic the behaviour of a real user,
|
|
# and as such interacts with the HTML of the application.
|
|
gem 'selenium-webdriver', '~> 3.14'
|
|
|
|
# A set of RSpec matchers for testing Pundit authorization policies.
|
|
gem 'pundit-matchers', '~> 1.6'
|
|
|
|
# WebMock allows stubbing HTTP requests
|
|
# and setting expectations on HTTP requests.
|
|
gem 'webmock', '~> 3.8'
|
|
end
|