source "https://rubygems.org" <% gemfile_entries.each do |gemfile_entry| -%> <%= gemfile_entry %> <% end -%> <% unless options.minimal? -%> # Use Active Model has_secure_password [https://guides.rubyonrails.org/active_model_basics.html#securepassword] # gem "bcrypt", "~> 3.1.7" <% end -%> # Windows does not include zoneinfo files, so bundle the tzinfo-data gem gem "tzinfo-data", platforms: %i[ windows jruby ] <% unless options.skip_solid? -%> <% if options.skip_action_cable? -%> # Use the database-backed adapters for Rails.cache and Active Job <% else -%> # Use the database-backed adapters for Rails.cache, Active Job, and Action Cable <% end -%> gem "solid_cache" gem "solid_queue" <% unless options.skip_action_cable? -%> gem "solid_cable" <% end -%> <% end -%> <% if depend_on_bootsnap? -%> # Reduces boot times through caching; required in config/boot.rb gem "bootsnap", require: false <% end -%> <% unless options.skip_kamal? -%> # Deploy this application anywhere as a Docker container [https://kamal-deploy.org] gem "kamal", require: false <% end -%> <% unless options.skip_thruster? -%> # Add HTTP asset caching/compression and X-Sendfile acceleration to Puma [https://github.com/basecamp/thruster/] gem "thruster", require: false <% end -%> <% unless skip_active_storage? -%> # Use Active Storage variants [https://guides.rubyonrails.org/active_storage_overview.html#transforming-images] # gem "image_processing", "~> 1.2" <% end -%> <%- if options.api? -%> # Use Rack CORS for handling Cross-Origin Resource Sharing (CORS), making cross-origin Ajax possible # gem "rack-cors" <%- end -%> <% if RUBY_ENGINE == "ruby" -%> group :development, :test do # See https://guides.rubyonrails.org/debugging_rails_applications.html#debugging-with-the-debug-gem gem "debug", platforms: %i[ mri windows ], require: "debug/prelude" <%- unless options.skip_brakeman? -%> # Static analysis for security vulnerabilities [https://brakemanscanner.org/] gem "brakeman", require: false <%- end -%> <%- unless options.skip_rubocop? -%> # Omakase Ruby styling [https://github.com/rails/rubocop-rails-omakase/] gem "rubocop-rails-omakase", require: false <%- end -%> end <% end -%> <%- unless options.api? || options.skip_dev_gems? -%> group :development do # Use console on exceptions pages [https://github.com/rails/web-console] gem "web-console" end <%- end -%> <%- if depends_on_system_test? -%> group :test do # Use system testing [https://guides.rubyonrails.org/testing.html#system-testing] gem "capybara" gem "selenium-webdriver" end <%- end -%>