# frozen_string_literal: true source 'https://rubygems.org' # Match ruby version in .ruby-version ruby File.read('.ruby-version') gem 'rails', '~> 7.2.0' # Keeping old sprockets # https://github.com/rails/sprockets-rails/issues/444#issuecomment-637817050 gem "sprockets", "<4" gem 'bundler', '>= 2.4.22' gem 'coffee-rails' gem 'haml' gem 'sassc-rails' # API data gem 'jsonapi-resources' gem 'jsonapi-swagger' gem 'rswag-api' gem 'rswag-ui' # CSS framework gem "bootstrap", ">= 5.0.0" gem 'material-sass', '4.1.1' # Icons used by bootstrap/material-sass gem 'material_icons' # icons gem 'font-awesome-sass' gem 'terser' gem 'oj' # Speeds up json # planting and harvest predictions # based on median values for the crop gem 'active_median' gem 'active_record_union' gem 'flickraw' gem 'jquery-rails' gem 'jquery-ui-rails', github: 'jquery-ui-rails/jquery-ui-rails', tag: 'v7.0.0' # See https://github.com/jquery-ui-rails/jquery-ui-rails/issues/146 gem 'cancancan' # for checking member privileges gem 'csv_shaper' # CSV export gem 'gibbon', '~>1.2.0' # for Mailchimp newsletter subscriptions # Maps gem 'leaflet-rails', '>= 1.9.2' gem 'rails-assets-leaflet.markercluster', source: 'https://rails-assets.org' gem 'pg' gem 'ruby-units' # for unit conversion gem 'unicorn' # http server gem "comfortable_mexican_sofa", git: "https://github.com/restarone/comfortable-mexican-sofa.git" gem 'active_utils' gem 'sidekiq' # Markdown formatting for updates etc gem 'bluecloth' # Pagination gem 'will_paginate' gem 'will_paginate-bootstrap-style' # user signup/login/etc gem 'devise' # nicely formatted URLs gem 'friendly_id' # validates URLs gem "validate_url" # gravatars gem 'gravatar-ultimate' # For geolocation gem 'geocoder' # For easy calendar selection gem 'bootstrap-datepicker-rails' # DRY-er easier bootstrap 4 forms gem "bootstrap_form", ">= 4.5.0" # For connecting to other services (eg Flickr) gem 'omniauth', '~> 1.3' gem 'omniauth-flickr', '>= 0.0.15' # Pretty charts gem "chartkick" # clever elastic search gem 'elasticsearch', '~> 7.0.0' gem 'searchkick' gem "hashie", ">= 3.5.3" gem 'rake', '>= 10.0.0' # locale based flash notices for controllers gem "responders" # allows soft delete. Used for members. gem 'discard', '>= 1.2' gem 'xmlrpc' # fixes rake error - can be removed if not needed later gem 'puma' gem 'loofah', '>= 2.19.1' gem 'rack-protection', '>= 2.0.1' # Member to member messaging system gem 'mailboxer', '>= 0.15.1' gem 'faraday' gem 'rack-cors' gem 'icalendar' # for signups as requested by email service gem 'recaptcha' # External APIs for data gem "gbifrb" gem "msgpack" # Pinned due to RAILS_ENV=production bundle exec rake assets:precompile failing with ArgumentError: wrong number of arguments (given 1, expected 0) (ArgumentError) # /tmp/build_8301a541/vendor/bundle/ruby/3.3.0/gems/connection_pool-3.0.2/lib/connection_pool.rb:48:in `initialize' # /tmp/build_8301a541/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.3/lib/active_support/cache/mem_cache_store.rb:63:in `new' gem "connection_pool", "< 3" group :production do gem 'bonsai-elasticsearch-rails' # Integration with Bonsa-Elasticsearch on heroku gem 'dalli' gem 'memcachier' gem 'rails_12factor' # supresses heroku plugin injection gem 'scout_apm' # monitoring end group :development do gem 'better_errors' gem 'letter_opener' gem 'listen' end group :development, :test do gem 'bullet' # performance tuning by finding unnecesary queries gem 'byebug' # debugging gem 'capybara' # integration tests gem 'capybara-email' # integration tests for email gem 'capybara-screenshot' # for test debugging gem 'database_cleaner' gem 'factory_bot_rails' # for creating test data gem 'faker' gem 'haml-rails' # HTML templating language gem 'pry' gem 'query_diet' gem 'rspec-activemodel-mocks' gem 'rspec-rails' # unit testing framework gem 'rswag-specs' gem 'rubocop-capybara' gem 'rubocop-factory_bot' gem 'rubocop-rails' gem 'rubocop-rake' gem 'rubocop-rspec' gem 'rubocop-rspec_rails' gem 'webrat' # provides HTML matchers for view tests gem 'crowdin-cli' # for translations gem 'dotenv-rails' # cli utils gem 'haml_lint', '>= 0.25.1', require: false # Checks haml files for goodness gem 'i18n-tasks', require: false # adds tests for finding missing and unused translations gem 'rspectre', require: false # finds unused code in specs gem 'rubocop', require: false end group :test do gem 'axe-core-capybara' gem 'axe-core-rspec' gem "percy-capybara", "~> 5.0.0" gem 'rails-controller-testing' gem "rspec-rebound" gem 'selenium-webdriver' gem 'timecop' gem 'vcr' end group :travis do gem 'platform-api' end gem "i18n_data", "~> 1.1" gem "paper_trail", "~> 17.0" gem 'sitemap_generator' gem 'aws-sdk-s3', '~> 1', '>= 1.114.0'