-
Notifications
You must be signed in to change notification settings - Fork 0
/
Gemfile
235 lines (171 loc) · 6.23 KB
/
Gemfile
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
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
source "https://rubygems.org"
git_source(:github) { |repo| "https://github.com/#{repo}.git" }
ruby "3.2.2"
# Bundle edge Rails instead: gem "rails", github: "rails/rails", branch: "main"
gem "rails", "~> 7.0.8"
# JSON-backed, nestable models
gem "store_model", "~> 1.6"
# Use postgresql as the database for Active Record
gem "pg", "~> 1.5"
# Perform full text search with Postgres
gem "pg_search", "~> 2.3"
# Use RGeo geometry types
gem "rgeo", "~> 3.0"
gem "rgeo-geojson", "~> 2.1"
gem "rgeo-activerecord", "~> 7.0"
# Use PostGIS extensions for PostgreSQL
gem "activerecord-postgis-adapter", "~> 8.0"
# Use the Puma web server [https://github.com/puma/puma]
gem "puma", "~> 6.3.1"
# The original asset pipeline for Rails [https://github.com/rails/sprockets-rails]
gem "sprockets-rails", "~> 3.4"
# Use Redis adapter to run Action Cable in production
# gem "redis", "~> 4.0"
# Use Kredis to get higher-level data types in Redis [https://github.com/rails/kredis]
# gem "kredis"
# Use Active Model has_secure_password [https://guides.rubyonrails.org/active_model_basics.html#securepassword]
# gem "bcrypt", "~> 3.1.7"
# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
gem "tzinfo-data", platforms: %i[mingw mswin x64_mingw jruby]
# Reduces boot times through caching; required in config/boot.rb
gem "bootsnap", require: false
# Use Active Storage variants [https://guides.rubyonrails.org/active_storage_overview.html#transforming-images]
gem "image_processing", "~> 1.12"
gem "ruby-vips", "~> 2.1", require: false
# Use S3 as the backend for Active Storage
gem "aws-sdk-s3", "~> 1.126", require: false
# Use Good Job as the backend for Active Job
gem "good_job", "~> 3.19"
# Send emails with Mailjet.
gem "mailjet", "~> 1.7"
# Send emails with Sendgrid.
gem "sendgrid-ruby", "~> 6.6"
# Use FriendlyId to create human-friendly identifiers for models
gem "friendly_id", "~> 5.5"
# Use Nanoid to generate tiny collision-resistant IDs
gem "nanoid", "~> 2.0"
# Modern concurrency tools
gem "concurrent-ruby", "~> 1.1"
# Use Faraday to make HTTP requests
gem "faraday", "~> 2.7"
# Show a healthcheck route
gem "rails-healthcheck"
# Silence logs from certain actions
gem "silencer", "~> 2.0", require: false
# Validate emails, phone numbers, dates, arrays, and more
gem "can_has_validations", "~> 1.8"
gem "email_validator", "~> 2.2"
gem "phonelib", "~> 0.6.55"
gem "validate_url", "~> 1.0"
gem "date_validator", "~> 0.12.0"
gem "active_storage_validations", "~> 0.9.6"
# Introspect program at runtime with Pry
gem "pry"
gem "pry-rails"
gem "pry-rescue"
gem "pry-doc", require: false
gem "pry-sorbet", require: false
gem "pry-stack_explorer", require: false
gem "break", require: false
# Load environment variables from .env
gem "dotenv", "~> 2.7", require: false
# Parse and manipulate URIs
gem "addressable", "~> 2.8"
# Handle soft deletions with Discard
gem "discard", "~> 1.2"
# Typecheck code at runtime
gem "sorbet-runtime"
# Use Enumerize to enumerate attributes
gem "enumerize", "~> 2.6"
# Use Action Policy to authorize actions
gem "action_policy", "~> 0.6.5"
gem "action_policy-graphql", "~> 0.5.3"
# Expose a GraphQL API
gem "graphql", "~> 2.1"
gem "graphql-connections", "~> 1.3"
gem "graphql-persisted_queries", "~> 1.7"
gem "graphql-rails_logger"
gem "graphiql-rails"
# Serve and bundle frontend with Vite
gem "vite_rails", "~> 3.0"
# Use Inertia framework for server-driven SPAs
gem "inertia_rails", "~> 3.1"
# Use Premailer to inline CSS into email templates
gem "premailer-rails", "~> 1.12"
# Authenticate users with Devise
gem "devise", "~> 4.9"
# Check password strength with StrongPassword
gem "strong_password", "~> 0.0.10"
# Use OmniAuth to authenticate with external providers (i.e. Spotify)
gem "omniauth", "~> 2.1"
gem "omniauth-rails_csrf_protection", "~> 1.0"
gem "omniauth-google-oauth2", "~> 1.1"
# Print objects with text wrappers for debugging
gem "wrapped_print"
# Enable additional operators and utilities for Active Record with PostgreSQL
gem "active_record_extended", "~> 3.2"
# Use Sentry for error reporting
gem "sentry-rails", "~> 5.9"
# Forward and reverse geocode with Geocoder
gem "geocoder", "~> 1.8"
# Load events from Google Calendar
gem "google_calendar", "~> 0.6.4"
# Parse HTML with Nokogiri
gem "nokogiri", "~> 1.15"
# Automatically create anchors for links in text
gem "rails_autolink", "~> 1.1"
# Save screenshots of our webpages with Selenium
gem "selenium-webdriver", "~> 4.12"
# Detect what OS we are running on
gem "os", "~> 1.1"
# Show static pages with High Voltage
gem "high_voltage", "~> 3.1"
# Send texts with Twilio
gem "twilio-ruby", "~> 6.5"
# Create subscribable iCalendars
gem "icalendar", "~> 2.9"
group :development, :test do
# Auto-detect and warn about N+1 queries
gem "bullet"
end
group :development do
# Detect file changes for live reload
gem "listen", "~> 3.8"
# Rerun programs when files change
gem "rerun", "~> 0.14.0"
# Debug code with debug
# See https://guides.rubyonrails.org/debugging_rails_applications.html#debugging-with-the-debug-gem
gem "debug", platforms: %i[mri mingw x64_mingw]
# Typecheck code
gem "sorbet", require: false
gem "spoom"
gem "tapioca", "~> 0.11.9", require: false
# Use Rubocop to lint code
#
# NOTE: Rubocop >= 1.42.0 causes bin/lint to produce unwanted
# Lint/RedundantCopDisableDirective warnings (since Layout cops are disabled).
gem "rubocop", "~> 1.41.0", require: false
gem "rubocop-graphql", require: false
gem "rubocop-performance", require: false
gem "rubocop-rails", require: false
gem "rubocop-shopify", require: false
gem "rubocop-sorbet", require: false
gem "ruby-lsp", require: false
gem "parser", "~> 3.2.2.3", require: false
# Use console on exceptions pages [https://github.com/rails/web-console]
gem "web-console"
# Add speed badges [https://github.com/MiniProfiler/rack-mini-profiler]
# gem "rack-mini-profiler"
# gem "memory_profiler"
# gem "stackprof"
# Display better error pages during development
gem "better_errors"
# Speed up commands on slow machines / big apps [https://github.com/rails/spring]
gem "spring"
# Annotate models and routes
gem "annotate", require: false
end
group :test do
# Use system testing [https://guides.rubyonrails.org/testing.html#system-testing]
gem "capybara"
end