You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							100 lines
						
					
					
						
							3.4 KiB
						
					
					
				
			
		
		
	
	
							100 lines
						
					
					
						
							3.4 KiB
						
					
					
				| # frozen_string_literal: true | |
|  | |
| source "https://rubygems.org" | |
| git_source(:github) { |repo| "https://github.com/#{repo}.git" } | |
|  | |
| ruby "3.1.2" | |
|  | |
| # Bundle edge Rails instead: gem 'rails', github: 'rails/rails', branch: 'main' | |
| gem "rails", "~> 7.0.2" | |
| # Use postgresql as the database for Active Record | |
| gem "pg", "~> 1.1" | |
| # Use Puma as the app server | |
| gem "puma", "~> 5.0" | |
| # The modern asset pipeline for Rails [https://github.com/rails/propshaft] | |
| gem "propshaft" | |
| # Bundle and transpile JavaScript [https://github.com/rails/jsbundling-rails] | |
| gem "jsbundling-rails" | |
| # Reduces boot times through caching; required in config/boot.rb | |
| gem "bootsnap", ">= 1.4.4", require: false | |
| # GOV UK frontend components | |
| gem "govuk-components" | |
| # GOV UK component form builder DSL | |
| gem "govuk_design_system_formbuilder" | |
| # Convert Markdown into GOV.UK frontend-styled HTML | |
| gem "govuk_markdown" | |
| # GOV UK Notify | |
| gem "notifications-ruby-client" | |
| # A modest javascript framework for the html you already have | |
| gem "stimulus-rails" | |
| # Spreadsheet parsing | |
| gem "roo" | |
| # Json Schema | |
| gem "json-schema" | |
| # Authentication | |
| # Point at branch until devise is compatible with Turbo, see https://github.com/heartcombo/devise/pull/5340 | |
| gem "devise", github: "baarkerlounger/devise", branch: "dluhc-fixes" | |
| # Two-factor Authentication for devise models. | |
| gem "devise_two_factor_authentication" | |
| # UK postcode parsing and validation | |
| gem "uk_postcode" | |
| # Get rich data from postcode lookups. Wraps postcodes.io | |
| gem "postcodes_io" | |
| # Use Ruby objects to build reusable markup. A React inspired evolution of the presenter pattern | |
| gem "view_component" | |
| # Use the AWS S3 SDK as storage mechanism | |
| gem "aws-sdk-s3" | |
| # Track changes to models for auditing or versioning. | |
| gem "paper_trail" | |
| # Store active record objects in version whodunnits | |
| gem "paper_trail-globalid" | |
| # Request rate limiting | |
| gem "rack-attack" | |
| gem "redis" | |
| # Receive exceptions and configure alerts | |
| gem "sentry-rails" | |
| gem "sentry-ruby" | |
| # Possessives in strings | |
| gem "possessive" | |
| # Strip whitespace from active record attributes | |
| gem "auto_strip_attributes" | |
| # Use sidekiq for background processing | |
| gem "sidekiq" | |
|  | |
| group :development, :test do | |
|   # Check gems for known vulnerabilities | |
|   gem "bundler-audit" | |
|   # Call 'byebug' anywhere in the code to stop execution and get a debugger console | |
|   gem "byebug", platforms: %i[mri mingw x64_mingw] | |
|   gem "dotenv-rails" | |
|   gem "pry-byebug" | |
| end | |
|  | |
| group :development do | |
|   gem "listen", "~> 3.3" | |
|   gem "overcommit", ">= 0.37.0" | |
|   # Access an interactive console on exception pages or by calling 'console' anywhere in the code. | |
|   gem "web-console", ">= 4.1.0" | |
|   # Display performance information such as SQL time and flame graphs for each request in your browser. | |
|   # Can be configured to work on production as well see: https://github.com/MiniProfiler/rack-mini-profiler/blob/master/README.md | |
|   gem "erb_lint", require: false | |
|   gem "rack-mini-profiler", "~> 2.0" | |
|   gem "rubocop-govuk", "4.3.0", require: false | |
|   gem "rubocop-performance", require: false | |
|   gem "rubocop-rails", require: false | |
| end | |
|  | |
| group :test do | |
|   gem "capybara", require: false | |
|   gem "capybara-lockstep" | |
|   gem "factory_bot_rails" | |
|   gem "faker" | |
|   gem "rspec-rails", require: false | |
|   gem "selenium-webdriver", require: false | |
|   gem "simplecov", require: false | |
|   gem "timecop", "~> 0.9.4" | |
|   gem "webmock", require: false | |
| end | |
|  | |
| # Windows does not include zoneinfo files, so bundle the tzinfo-data gem | |
| gem "tzinfo-data", platforms: %i[mingw mswin x64_mingw jruby]
 | |
| 
 |