1source "https://rubygems.org"
2
3# Bundle edge Rails instead: gem "rails", github: "rails/rails", branch: "main"
4gem "rails", "~> 8.1.1"
5# The modern asset pipeline for Rails [https://github.com/rails/propshaft]
6gem "propshaft"
7# Use sqlite3 as the database for Active Record
8gem "sqlite3", ">= 2.1"
9# Use the Puma web server [https://github.com/puma/puma]
10gem "puma", ">= 5.0"
11# Use JavaScript with ESM import maps [https://github.com/rails/importmap-rails]
12gem "importmap-rails"
13# Hotwire's SPA-like page accelerator [https://turbo.hotwired.dev]
14gem "turbo-rails"
15# Hotwire's modest JavaScript framework [https://stimulus.hotwired.dev]
16gem "stimulus-rails"
17# Build JSON APIs with ease [https://github.com/rails/jbuilder]
18gem "jbuilder"
19
20# Use Active Model has_secure_password [https://guides.rubyonrails.org/active_model_basics.html#securepassword]
21# gem "bcrypt", "~> 3.1.7"
22
23# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
24gem "tzinfo-data", platforms: %i[ windows jruby ]
25
26# Use the database-backed adapters for Rails.cache, Active Job, and Action Cable
27gem "solid_cache"
28gem "solid_queue"
29gem "solid_cable"
30
31# Reduces boot times through caching; required in config/boot.rb
32gem "bootsnap", require: false
33
34# Deploy this application anywhere as a Docker container [https://kamal-deploy.org]
35gem "kamal", require: false
36
37# Add HTTP asset caching/compression and X-Sendfile acceleration to Puma [https://github.com/basecamp/thruster/]
38gem "thruster", require: false
39
40# Use Active Storage variants [https://guides.rubyonrails.org/active_storage_overview.html#transforming-images]
41gem "image_processing", "~> 1.2"
42
43group :development, :test do
44 # See https://guides.rubyonrails.org/debugging_rails_applications.html#debugging-with-the-debug-gem
45 gem "debug", platforms: %i[ mri windows ], require: "debug/prelude"
46
47 # Audits gems for known security defects (use config/bundler-audit.yml to ignore issues)
48 gem "bundler-audit", require: false
49
50 # Static analysis for security vulnerabilities [https://brakemanscanner.org/]
51 gem "brakeman", require: false
52
53 # Omakase Ruby styling [https://github.com/rails/rubocop-rails-omakase/]
54 gem "rubocop-rails-omakase", require: false
55end
56
57group :development do
58 # Use console on exceptions pages [https://github.com/rails/web-console]
59 gem "web-console"
60end
61
62group :test do
63 # Use system testing [https://guides.rubyonrails.org/testing.html#system-testing]
64 gem "capybara"
65 gem "selenium-webdriver"
66end