Repository navigation
Expand file tree
/
Copy pathGemfile
More file actions
158 lines (137 loc) · 3.66 KB
/
Copy pathGemfile
File metadata and controls
158 lines (137 loc) · 3.66 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
# Gemfile
#
# For production mode:
# bundle install --without development test
#
# Make sure to declare at least one 'source'
source 'https://rubygems.org'
# Bundler requires these gems in all environments
gem 'propshaft'
gem 'puma'
gem 'rails', '~> 8.1.4'
# Models and database interactions
gem 'pluck_to_hash'
# CSS and JavaScript
gem 'jsbundling-rails'
gem 'js-routes'
# Background tasks
gem 'activejob-status'
gem 'resque'
gem 'resque-scheduler'
# Authorization
gem 'action_policy'
gem 'rack-cors'
# Statistics
gem 'descriptive_statistics', require: 'descriptive_statistics/safe'
gem 'histogram'
# Internationalization
gem 'i18n'
gem 'i18n-js'
gem 'rails-i18n', '~> 8.1.0'
# Redis
gem 'redis', '~> 6.0.0'
# Exam template requirements
gem 'combine_pdf'
gem 'prawn'
gem 'prawn-qrcode'
gem 'rmagick', '~> 7.0.5'
gem 'rtesseract'
# Ruby miscellany
gem 'csv'
gem 'json'
gem 'mini_mime'
gem 'redcarpet'
gem 'rubyzip', '~> 3.4.1'
gem 'rugged'
# Rails miscellany
gem 'activemodel-serializers-xml'
gem 'config'
gem 'cookies_eu'
gem 'dry-validation' # For settings schema validation
gem 'exception_notification'
gem 'marcel'
gem 'pghero'
gem 'rails-html-sanitizer'
gem 'rails_performance'
gem 'rails_semantic_logger'
gem 'responders'
# LTI and OAuth
gem 'jwt'
# Postgres
gem 'pg'
# Tracing with OpenTelemetry (loaded by config/initializers/opentelemetry.rb when telemetry is enabled)
group :telemetry do
gem 'opentelemetry-exporter-otlp'
gem 'opentelemetry-instrumentation-net_http'
gem 'opentelemetry-instrumentation-pg'
gem 'opentelemetry-instrumentation-rack'
gem 'opentelemetry-instrumentation-rails'
gem 'opentelemetry-instrumentation-redis'
gem 'opentelemetry-sdk'
end
# Gems only used for development should be listed here so that they
# are not loaded in other environments.
group :development do
gem 'annotaterb', require: false
gem 'awesome_print'
gem 'better_errors'
gem 'binding_of_caller' # supplement for better_errors
gem 'bootsnap', require: false
gem 'brakeman', require: false
gem 'erb_lint', require: false
gem 'listen' # to listen for changes in i18n-js files
gem 'rubocop', require: false
gem 'rubocop-capybara', require: false
gem 'rubocop-factory_bot', require: false
gem 'rubocop-performance', require: false
gem 'rubocop-rails', require: false
gem 'rubocop-rspec', require: false
gem 'rubocop-rspec_rails', require: false
end
group :development_extra, optional: true do
gem 'ruby-lsp', require: false
end
group :test do
gem 'factory_bot_rails'
gem 'fuubar'
gem 'machinist', '< 3'
gem 'rails-controller-testing'
gem 'shoulda-callback-matchers', '~> 1.1.1'
gem 'shoulda-context', '~> 3.0.0.rc1'
gem 'shoulda-matchers', '~> 7.0'
gem 'simplecov', require: false
gem 'simplecov-lcov', require: false
gem 'timecop'
gem 'webmock'
end
# Gems needed (wanted) for both development and test can be
# listed here
group :development, :test do
gem 'active_record_doctor'
gem 'bullet'
gem 'capybara'
gem 'debug', '>= 1.0.0'
gem 'i18n-tasks', require: false
gem 'parallel_tests'
gem 'rspec-rails', '~> 8.0.4'
gem 'selenium-webdriver'
end
# Gems needed (wanted) for development, test and production_test
# can be listed here
# production_test is for testing a production-like deployment,
# but using a seeded database
group :development, :test, :production_test do
gem 'faker' # required for database seeding
end
# If you plan to use unicorn servers for production
# make sure that this group is included. You don't need this
# group if you are using Phusion Passenger or Puma.
group :unicorn do
gem 'unicorn'
end
group :docs do
gem 'jekyll', '~> 4.4'
gem 'jekyll-relative-links'
gem 'jekyll-seo-tag'
gem 'just-the-docs'
end