75 lines
2.1 KiB
Ruby
75 lines
2.1 KiB
Ruby
source "https://rubygems.org"
|
|
git_source(:github) { |repo| "https://github.com/#{repo}.git" }
|
|
|
|
ruby "3.2.2"
|
|
|
|
# Core Rails
|
|
gem "rails", "~> 7.1.0"
|
|
gem "pg", "~> 1.1"
|
|
gem "puma", "~> 6.0"
|
|
|
|
# Frontend
|
|
gem "propshaft" # asset pipeline leve
|
|
gem "importmap-rails"
|
|
gem "turbo-rails"
|
|
gem "stimulus-rails"
|
|
gem "tailwindcss-rails"
|
|
gem "jbuilder"
|
|
|
|
# Auth
|
|
gem "devise"
|
|
gem "pundit"
|
|
|
|
# Config / ENV
|
|
gem "dotenv-rails"
|
|
|
|
# PDF
|
|
gem "prawn"
|
|
gem "prawn-table"
|
|
|
|
# Planilhas (XLSX) — geração da carga de importação do SimpliRoute
|
|
gem "caxlsx"
|
|
# Leitura do .xlsx do PLANO do SimpliRoute (reserva do romaneio, quando a API não
|
|
# responde ou o plano do dia ainda não foi publicado). A roo pina rubyzip < 3.0;
|
|
# o único outro consumidor é o selenium-webdriver (grupo de teste, aceita >= 1.2.2,
|
|
# < 4.0), então o bundler rebaixa o rubyzip sem quebrar nada.
|
|
gem "roo", "~> 2.10"
|
|
gem "rqrcode" # QR code no holerite (login rápido motorista)
|
|
gem "chunky_png" # renderiza QR como PNG para embed no Prawn
|
|
|
|
# Jobs / Cron
|
|
gem "whenever", require: false
|
|
|
|
# Notificações (Fase 8)
|
|
gem "twilio-ruby" # WhatsApp — só envia se TWILIO_ACCOUNT_SID estiver no .env
|
|
|
|
# Utilitários
|
|
gem "pagy", "~> 9.0" # paginação (fixado: API :limit e sem extra overflow)
|
|
gem "image_processing", ">= 1.2"
|
|
|
|
group :development, :test do
|
|
gem "debug", platforms: %i[mri mingw x64_mingw]
|
|
gem "rspec-rails"
|
|
gem "factory_bot_rails"
|
|
gem "faker"
|
|
# Lê o PDF gerado (páginas e texto) nos specs. Sem ele, o único jeito de testar
|
|
# um PDF do Prawn seria olhar o arquivo: as fontes TTF são subsetadas, então o
|
|
# texto não é "grepável" no binário.
|
|
gem "pdf-inspector", require: false
|
|
end
|
|
|
|
group :development do
|
|
gem "web-console"
|
|
# require: false → não monta o middleware automaticamente (evita vazar o
|
|
# cookie __profilin e a rota /mini-profiler-resources em produção). Para usar
|
|
# numa investigação de performance, rode com RACK_MINI_PROFILER=1 ou
|
|
# adicione `require "rack-mini-profiler"` temporariamente.
|
|
gem "rack-mini-profiler", require: false
|
|
gem "annotate"
|
|
end
|
|
|
|
group :test do
|
|
gem "capybara"
|
|
gem "selenium-webdriver"
|
|
end
|