Repository navigation
Expand file tree
/
Copy pathGemfile
More file actions
90 lines (73 loc) · 2.4 KB
/
Copy pathGemfile
File metadata and controls
90 lines (73 loc) · 2.4 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
source "https://rubygems.org"
gem "rails", "~> 8.1.4"
gem "propshaft"
gem "pg", "~> 1.7"
gem "puma", ">= 6.0"
# Bundled everywhere: Debian trixie moved legacy names like Asia/Katmandu (which Slack still sends) to tzdata-legacy.
gem "tzinfo-data"
# Database-backed adapters for Rails.cache, Active Job, and Action Cable
gem "solid_cache"
gem "solid_queue"
gem "solid_cable"
# Boot & serving
gem "bootsnap", require: false
gem "thruster", require: false
# Frontend: Vite + Inertia (Svelte lives in app/frontend)
gem "vite_rails", "~> 3.0"
gem "inertia_rails", "~> 3.10"
# Props are Alba serializers; typelizer turns them (and the routes) into TypeScript: bin/rails typelizer:generate
gem "alba", "~> 4.0"
gem "typelizer", "~> 0.14"
# Auth (Hack Club Auth OAuth) & authorization
gem "faraday", "~> 2.13"
gem "pundit", "~> 2.4"
# Privacy hub tokens (ES256 JWTs). See app/services/privacy_token.rb
gem "jwt", "~> 3.1"
# Slack (bot + profile sync)
gem "slack-ruby-client", "~> 3.0"
# Models
gem "hashid-rails", "~> 1.4"
gem "paper_trail", "~> 17.0"
gem "pg_search", "~> 2.3"
gem "pagy", "~> 43.2"
# Storage
gem "image_processing", "~> 1.2"
gem "aws-sdk-s3", require: false
# Ops
gem "rack-attack", "~> 6.7"
gem "sentry-ruby", "~> 7.0"
gem "sentry-rails", "~> 7.0"
# Sentry profiles: Ruby stacks for sampled traces
gem "vernier", "~> 1.11"
# Per-action request and job timings: its tables and models, read by /admin/insights (the engine is not mounted)
gem "activeinsights", "~> 1.3"
# Feature flags, managed at /admin/flags
gem "flipper", "~> 1.3"
gem "flipper-active_record", "~> 1.3"
# The admin MCP server at POST /mcp (McpController, docs/mcp.md)
gem "mcp", "~> 1.8"
# Refuses migrations that lock a table or run unindexed (docs/performance.md)
gem "strong_migrations", "~> 2.8"
group :development, :test do
gem "debug", platforms: %i[ mri windows ], require: "debug/prelude"
gem "bundler-audit", require: false
gem "brakeman", require: false
gem "rubocop-rails-omakase", require: false
gem "dotenv-rails"
# N+1 and unused-preload detection. Logs in development, raises in tests (docs/performance.md).
gem "bullet"
end
group :development do
gem "web-console"
gem "annotaterb"
gem "letter_opener"
# Per-request SQL and timing badge in the browser; `?pp=help` for more
gem "rack-mini-profiler"
gem "pry-rails"
gem "awesome_print"
end
group :test do
gem "capybara"
gem "selenium-webdriver"
end
gem "csv", "~> 3.3"