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

gem 'bootsnap'
gem 'rack-cors'
gem 'rails'
gem 'sprockets-rails'

# A Ruby Web Server Built For Concurrency
gem 'puma'

# Pg is the Ruby interface to the PostgreSQL RDBMS
gem 'pg'

# A sophisticated and secure hash algorithm for
# hashing passwords.
gem 'bcrypt'

# Doorkeeper is an OAuth 2 provider for Rails and Grape.
gem 'doorkeeper'

# Simple, Fast, and Declarative Serialization Library for Ruby
gem 'blueprinter'

# Optimized JSON.
gem 'oj'

# Simple Rails app configuration
gem 'figaro'

# Responder?
gem 'responders'

# Parse emoji to strings
gem 'gemoji-parser'

# Mini replacement for RMagick
gem 'mini_magick'

# An awesome replacement for acts_as_nested_set and better_nested_set.
gem 'awesome_nested_set'

# Official AWS Ruby gem for Amazon Simple Storage Service (Amazon S3)
gem 'aws-sdk-s3'

# An email validator for Rails
gem 'email_validator'

# pg_search builds ActiveRecord named scopes that take advantage of PostgreSQL’s full text search
gem 'pg_search'

# A Ruby client library for Redis
gem 'redis'

# Simple, efficient background processing for Ruby
gem 'sidekiq'

# scheduler for Ruby (at, in, cron and every jobs)
gem 'rufus-scheduler'

# Pagination library
gem 'will_paginate', '~> 3.3'

# Migrate and update data alongside your database structure.
gem 'data_migrate'

# A ruby gem to allow the copying of ActiveRecord objects and their associated children, configurable with a DSL on the model
gem 'amoeba'

# Makes http fun again!
gem 'httparty'

# StringScanner provides for lexical scanning operations on a String.
gem 'strscan'

# New Relic Ruby Agent
gem 'newrelic_rpm'

# Parallel processing made simple and fast
gem 'parallel'

# The Sentry SDK for Rails
gem 'sentry-rails'
gem 'sentry-ruby'
gem 'stackprof'

group :doc do
  gem 'apipie-rails'
  gem 'sdoc'
end

group :development, :test do
  gem 'amazing_print'
  gem 'dotenv-rails'
  gem 'prosopite'
  gem 'pry'
  gem 'rspec_junit_formatter'
  gem 'rspec-rails'
end

group :development do
  gem 'listen'
  gem 'pg_query'
  gem 'solargraph'
  gem 'spring'
  gem 'spring-commands-rspec'
end

group :tools do
  gem 'rubocop'
  gem 'squasher', '>= 0.6.0'
end

group :test do
  gem 'api_matchers'
  gem 'byebug'
  gem 'database_cleaner'
  gem 'factory_bot_rails'
  gem 'faker'
  gem 'rspec'
  gem 'shoulda-matchers'
  gem 'simplecov', require: false
end
