Comsos

Submitted by @mhenrixon

I have several websites running out of the same repository, which is just deployed to different servers. This makes it a bit more convoluted but allows me maximum development speed. This is also my experiments website, which I use for testing things, adding a lot of extra dependencies. It is more than a simple blog :)

# frozen_string_literal: true

source "https://rubygems.org"
git_source(:github) { |repo| "https://github.com/#{repo}.git" }

ruby file: ".ruby-version"

gem "bcrypt"
gem "bootsnap", require: false
gem "image_processing"
gem "pg"
gem "phlex", github: "phlex-ruby/phlex"
gem "phlex-heroicons"
gem "phlex-rails", github: "phlex-ruby/phlex-rails"
gem "rails"
gem "redis", ">= 4.0.1"
gem "ruby-vips"

gem "cssbundling-rails"
gem "importmap-rails"
gem "propshaft"
gem "stimulus-rails"
gem "turbo-rails"

group :staging, :production do
  gem "logcraft"
end

group :development, :test do
  gem "amazing_print"
  gem "deepl-rb"
  gem "dotenv-rails"
  gem "easy_translate"
  gem "factory_bot_rails"
  gem "faker"
  gem "fuubar"
  gem "i18n-tasks"
  gem "letter_opener_web"
  gem "listen"
  gem "parallel_tests"
  gem "pg_query"
  gem "prosopite"
  gem "pry-rails"
  gem "rspec-rails"
  gem "ruby-prof", ">= 0.17.0", require: false
  gem "shoulda-matchers"
  gem "stackprof", ">= 0.2.9", require: false
end

group :test do
  gem "ammeter"
  gem "capybara", require: false
  gem "capybara-playwright-driver", require: false
  gem "climate_control"
  gem "rspec-its"
  gem "test-prof"
  gem "webmock", require: false
end

group :development do # rubocop:disable Metrics/BlockLength
  gem "active_record_doctor"
  gem "annotate"
  gem "brakeman"
  gem "bundler-audit"
  gem "erb_lint", require: false
  gem "hotwire-livereload"
  gem "lookbook"
  gem "memory_profiler"
  gem "phlex-testing-capybara"
  gem "rack-mini-profiler", require: false
  gem "rails-erd"
  gem "rubocop"
  gem "rubocop-capybara"
  gem "rubocop-mhenrixon"
  gem "rubocop-performance"
  gem "rubocop-rails"
  gem "rubocop-rake"
  gem "ruby-lsp"
  gem "ruby-lsp-rails", require: false
  gem "ruby-lsp-rspec", require: false
  gem "yamllint"
end

gem "debug", ">= 1.0.0", require: false
gem "tzinfo-data"

gem "aasm"
gem "active_storage_validations"
gem "acts-as-taggable-array-on"
gem "after_commit_everywhere"
gem "appsignal"
gem "aws-sdk-s3", require: false
gem "better_html"
gem "cancancan"
gem "countries", require: "countries/global"
gem "country_select"
gem "csv"
gem "currency_select"
gem "data_migrate", "~> 9.2"
gem "friendly_id"
gem "goldiloader"
gem "good_job"
gem "high_voltage"
gem "hotwire_combobox"
gem "icalendar"
gem "kredis"
gem "marginalia"
gem "meta-tags"
gem "money-rails"
gem "oj"
gem "pagy"
gem "pg_search"
gem "postmark-rails"
gem "prawn"
gem "prawn-table"
gem "rack-attack"
gem "rack-ratelimit", group: :production
gem "recaptcha"
gem "receipts"
gem "rotp"
gem "rqrcode"
gem "scenic"
gem "slack-notifier"
gem "strong_migrations"
gem "turbo_boost-commands"
gem "turbo_boost-elements"
gem "turbo_boost-streams"

gem "puma"