smart_domain 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (174) hide show
  1. checksums.yaml +7 -0
  2. data/.rspec +3 -0
  3. data/CHANGELOG.md +25 -0
  4. data/LICENSE +21 -0
  5. data/README.md +1219 -0
  6. data/Rakefile +12 -0
  7. data/examples/blog_app/.dockerignore +51 -0
  8. data/examples/blog_app/.github/dependabot.yml +12 -0
  9. data/examples/blog_app/.github/workflows/ci.yml +67 -0
  10. data/examples/blog_app/.gitignore +30 -0
  11. data/examples/blog_app/.kamal/hooks/docker-setup.sample +3 -0
  12. data/examples/blog_app/.kamal/hooks/post-app-boot.sample +3 -0
  13. data/examples/blog_app/.kamal/hooks/post-deploy.sample +14 -0
  14. data/examples/blog_app/.kamal/hooks/post-proxy-reboot.sample +3 -0
  15. data/examples/blog_app/.kamal/hooks/pre-app-boot.sample +3 -0
  16. data/examples/blog_app/.kamal/hooks/pre-build.sample +51 -0
  17. data/examples/blog_app/.kamal/hooks/pre-connect.sample +47 -0
  18. data/examples/blog_app/.kamal/hooks/pre-deploy.sample +122 -0
  19. data/examples/blog_app/.kamal/hooks/pre-proxy-reboot.sample +3 -0
  20. data/examples/blog_app/.kamal/secrets +20 -0
  21. data/examples/blog_app/.rubocop.yml +8 -0
  22. data/examples/blog_app/.ruby-version +1 -0
  23. data/examples/blog_app/Dockerfile +76 -0
  24. data/examples/blog_app/Gemfile +63 -0
  25. data/examples/blog_app/Gemfile.lock +408 -0
  26. data/examples/blog_app/README.md +24 -0
  27. data/examples/blog_app/README_EXAMPLE.md +328 -0
  28. data/examples/blog_app/Rakefile +6 -0
  29. data/examples/blog_app/app/assets/images/.keep +0 -0
  30. data/examples/blog_app/app/assets/stylesheets/application.css +10 -0
  31. data/examples/blog_app/app/controllers/api/base_controller.rb +61 -0
  32. data/examples/blog_app/app/controllers/api/v1/posts_controller.rb +158 -0
  33. data/examples/blog_app/app/controllers/api/v1/users_controller.rb +98 -0
  34. data/examples/blog_app/app/controllers/application_controller.rb +7 -0
  35. data/examples/blog_app/app/controllers/concerns/.keep +0 -0
  36. data/examples/blog_app/app/domains/.keep +0 -0
  37. data/examples/blog_app/app/domains/exceptions.rb +19 -0
  38. data/examples/blog_app/app/domains/post_management/events/post_created_event.rb +15 -0
  39. data/examples/blog_app/app/domains/post_management/events/post_deleted_event.rb +13 -0
  40. data/examples/blog_app/app/domains/post_management/events/post_updated_event.rb +13 -0
  41. data/examples/blog_app/app/domains/post_management/handlers/post_notification_handler.rb +33 -0
  42. data/examples/blog_app/app/domains/post_management/models/post.rb +21 -0
  43. data/examples/blog_app/app/domains/post_management/policies/post_policy.rb +49 -0
  44. data/examples/blog_app/app/domains/post_management/post_service.rb +93 -0
  45. data/examples/blog_app/app/domains/post_management/setup.rb +25 -0
  46. data/examples/blog_app/app/domains/user_management/events/user_created_event.rb +15 -0
  47. data/examples/blog_app/app/domains/user_management/events/user_deleted_event.rb +13 -0
  48. data/examples/blog_app/app/domains/user_management/events/user_updated_event.rb +13 -0
  49. data/examples/blog_app/app/domains/user_management/handlers/user_welcome_handler.rb +21 -0
  50. data/examples/blog_app/app/domains/user_management/models/user.rb +11 -0
  51. data/examples/blog_app/app/domains/user_management/policies/user_policy.rb +49 -0
  52. data/examples/blog_app/app/domains/user_management/setup.rb +25 -0
  53. data/examples/blog_app/app/domains/user_management/user_service.rb +93 -0
  54. data/examples/blog_app/app/events/.keep +0 -0
  55. data/examples/blog_app/app/events/application_event.rb +18 -0
  56. data/examples/blog_app/app/handlers/.keep +0 -0
  57. data/examples/blog_app/app/helpers/application_helper.rb +2 -0
  58. data/examples/blog_app/app/javascript/application.js +3 -0
  59. data/examples/blog_app/app/javascript/controllers/application.js +9 -0
  60. data/examples/blog_app/app/javascript/controllers/hello_controller.js +7 -0
  61. data/examples/blog_app/app/javascript/controllers/index.js +4 -0
  62. data/examples/blog_app/app/jobs/application_job.rb +7 -0
  63. data/examples/blog_app/app/mailers/application_mailer.rb +4 -0
  64. data/examples/blog_app/app/models/application_record.rb +3 -0
  65. data/examples/blog_app/app/models/concerns/.keep +0 -0
  66. data/examples/blog_app/app/models/organization.rb +6 -0
  67. data/examples/blog_app/app/policies/.keep +0 -0
  68. data/examples/blog_app/app/policies/application_policy.rb +23 -0
  69. data/examples/blog_app/app/services/.keep +0 -0
  70. data/examples/blog_app/app/services/application_service.rb +24 -0
  71. data/examples/blog_app/app/views/layouts/application.html.erb +29 -0
  72. data/examples/blog_app/app/views/layouts/mailer.html.erb +13 -0
  73. data/examples/blog_app/app/views/layouts/mailer.text.erb +1 -0
  74. data/examples/blog_app/app/views/pwa/manifest.json.erb +22 -0
  75. data/examples/blog_app/app/views/pwa/service-worker.js +26 -0
  76. data/examples/blog_app/bin/brakeman +7 -0
  77. data/examples/blog_app/bin/bundler-audit +6 -0
  78. data/examples/blog_app/bin/ci +6 -0
  79. data/examples/blog_app/bin/dev +2 -0
  80. data/examples/blog_app/bin/docker-entrypoint +8 -0
  81. data/examples/blog_app/bin/importmap +4 -0
  82. data/examples/blog_app/bin/jobs +6 -0
  83. data/examples/blog_app/bin/kamal +27 -0
  84. data/examples/blog_app/bin/rails +4 -0
  85. data/examples/blog_app/bin/rake +4 -0
  86. data/examples/blog_app/bin/rubocop +8 -0
  87. data/examples/blog_app/bin/setup +35 -0
  88. data/examples/blog_app/bin/thrust +5 -0
  89. data/examples/blog_app/config/application.rb +52 -0
  90. data/examples/blog_app/config/boot.rb +4 -0
  91. data/examples/blog_app/config/bundler-audit.yml +5 -0
  92. data/examples/blog_app/config/cable.yml +17 -0
  93. data/examples/blog_app/config/cache.yml +16 -0
  94. data/examples/blog_app/config/ci.rb +19 -0
  95. data/examples/blog_app/config/credentials.yml.enc +1 -0
  96. data/examples/blog_app/config/database.yml +41 -0
  97. data/examples/blog_app/config/deploy.yml +120 -0
  98. data/examples/blog_app/config/environment.rb +5 -0
  99. data/examples/blog_app/config/environments/development.rb +78 -0
  100. data/examples/blog_app/config/environments/production.rb +90 -0
  101. data/examples/blog_app/config/environments/test.rb +53 -0
  102. data/examples/blog_app/config/importmap.rb +7 -0
  103. data/examples/blog_app/config/initializers/active_domain.rb +37 -0
  104. data/examples/blog_app/config/initializers/assets.rb +7 -0
  105. data/examples/blog_app/config/initializers/content_security_policy.rb +29 -0
  106. data/examples/blog_app/config/initializers/filter_parameter_logging.rb +8 -0
  107. data/examples/blog_app/config/initializers/inflections.rb +16 -0
  108. data/examples/blog_app/config/locales/en.yml +31 -0
  109. data/examples/blog_app/config/master.key +1 -0
  110. data/examples/blog_app/config/puma.rb +42 -0
  111. data/examples/blog_app/config/queue.yml +18 -0
  112. data/examples/blog_app/config/recurring.yml +15 -0
  113. data/examples/blog_app/config/routes.rb +27 -0
  114. data/examples/blog_app/config/storage.yml +27 -0
  115. data/examples/blog_app/config.ru +6 -0
  116. data/examples/blog_app/db/cable_schema.rb +11 -0
  117. data/examples/blog_app/db/cache_schema.rb +12 -0
  118. data/examples/blog_app/db/migrate/20251230112502_create_organizations.rb +9 -0
  119. data/examples/blog_app/db/migrate/20251230112503_create_users.rb +12 -0
  120. data/examples/blog_app/db/migrate/20251230112504_create_posts.rb +14 -0
  121. data/examples/blog_app/db/queue_schema.rb +129 -0
  122. data/examples/blog_app/db/schema.rb +46 -0
  123. data/examples/blog_app/db/seeds.rb +9 -0
  124. data/examples/blog_app/lib/api_demo.rb +175 -0
  125. data/examples/blog_app/lib/demo.rb +150 -0
  126. data/examples/blog_app/lib/tasks/.keep +0 -0
  127. data/examples/blog_app/log/.keep +0 -0
  128. data/examples/blog_app/public/400.html +135 -0
  129. data/examples/blog_app/public/404.html +135 -0
  130. data/examples/blog_app/public/406-unsupported-browser.html +135 -0
  131. data/examples/blog_app/public/422.html +135 -0
  132. data/examples/blog_app/public/500.html +135 -0
  133. data/examples/blog_app/public/icon.png +0 -0
  134. data/examples/blog_app/public/icon.svg +3 -0
  135. data/examples/blog_app/public/robots.txt +1 -0
  136. data/examples/blog_app/script/.keep +0 -0
  137. data/examples/blog_app/storage/.keep +0 -0
  138. data/examples/blog_app/tmp/.keep +0 -0
  139. data/examples/blog_app/vendor/.keep +0 -0
  140. data/examples/blog_app/vendor/javascript/.keep +0 -0
  141. data/lib/generators/active_domain/domain/domain_generator.rb +116 -0
  142. data/lib/generators/active_domain/domain/templates/events/created_event.rb.tt +15 -0
  143. data/lib/generators/active_domain/domain/templates/events/deleted_event.rb.tt +13 -0
  144. data/lib/generators/active_domain/domain/templates/events/updated_event.rb.tt +13 -0
  145. data/lib/generators/active_domain/domain/templates/policy.rb.tt +49 -0
  146. data/lib/generators/active_domain/domain/templates/service.rb.tt +93 -0
  147. data/lib/generators/active_domain/domain/templates/setup.rb.tt +27 -0
  148. data/lib/generators/active_domain/install/install_generator.rb +58 -0
  149. data/lib/generators/active_domain/install/templates/README +28 -0
  150. data/lib/generators/active_domain/install/templates/application_event.rb +18 -0
  151. data/lib/generators/active_domain/install/templates/application_policy.rb +23 -0
  152. data/lib/generators/active_domain/install/templates/application_service.rb +24 -0
  153. data/lib/generators/active_domain/install/templates/initializer.rb +37 -0
  154. data/lib/smart_domain/configuration.rb +97 -0
  155. data/lib/smart_domain/domain/exceptions.rb +164 -0
  156. data/lib/smart_domain/domain/policy.rb +215 -0
  157. data/lib/smart_domain/domain/service.rb +230 -0
  158. data/lib/smart_domain/event/adapters/memory.rb +110 -0
  159. data/lib/smart_domain/event/base.rb +176 -0
  160. data/lib/smart_domain/event/handler.rb +98 -0
  161. data/lib/smart_domain/event/mixins.rb +156 -0
  162. data/lib/smart_domain/event/registration.rb +136 -0
  163. data/lib/smart_domain/generators/domain_generator.rb +4 -0
  164. data/lib/smart_domain/generators/install_generator.rb +4 -0
  165. data/lib/smart_domain/handlers/audit_handler.rb +216 -0
  166. data/lib/smart_domain/handlers/metrics_handler.rb +104 -0
  167. data/lib/smart_domain/integration/active_record.rb +169 -0
  168. data/lib/smart_domain/integration/multi_tenancy.rb +115 -0
  169. data/lib/smart_domain/railtie.rb +62 -0
  170. data/lib/smart_domain/tasks/domains.rake +43 -0
  171. data/lib/smart_domain/version.rb +5 -0
  172. data/lib/smart_domain.rb +77 -0
  173. data/smart_domain.gemspec +53 -0
  174. metadata +391 -0
@@ -0,0 +1,408 @@
1
+ PATH
2
+ remote: ../..
3
+ specs:
4
+ active_domain (0.1.0)
5
+ activemodel (>= 7.0)
6
+ activerecord (>= 7.0)
7
+ activesupport (>= 7.0)
8
+ rails (>= 7.0)
9
+
10
+ GEM
11
+ remote: https://rubygems.org/
12
+ specs:
13
+ action_text-trix (2.1.15)
14
+ railties
15
+ actioncable (8.1.1)
16
+ actionpack (= 8.1.1)
17
+ activesupport (= 8.1.1)
18
+ nio4r (~> 2.0)
19
+ websocket-driver (>= 0.6.1)
20
+ zeitwerk (~> 2.6)
21
+ actionmailbox (8.1.1)
22
+ actionpack (= 8.1.1)
23
+ activejob (= 8.1.1)
24
+ activerecord (= 8.1.1)
25
+ activestorage (= 8.1.1)
26
+ activesupport (= 8.1.1)
27
+ mail (>= 2.8.0)
28
+ actionmailer (8.1.1)
29
+ actionpack (= 8.1.1)
30
+ actionview (= 8.1.1)
31
+ activejob (= 8.1.1)
32
+ activesupport (= 8.1.1)
33
+ mail (>= 2.8.0)
34
+ rails-dom-testing (~> 2.2)
35
+ actionpack (8.1.1)
36
+ actionview (= 8.1.1)
37
+ activesupport (= 8.1.1)
38
+ nokogiri (>= 1.8.5)
39
+ rack (>= 2.2.4)
40
+ rack-session (>= 1.0.1)
41
+ rack-test (>= 0.6.3)
42
+ rails-dom-testing (~> 2.2)
43
+ rails-html-sanitizer (~> 1.6)
44
+ useragent (~> 0.16)
45
+ actiontext (8.1.1)
46
+ action_text-trix (~> 2.1.15)
47
+ actionpack (= 8.1.1)
48
+ activerecord (= 8.1.1)
49
+ activestorage (= 8.1.1)
50
+ activesupport (= 8.1.1)
51
+ globalid (>= 0.6.0)
52
+ nokogiri (>= 1.8.5)
53
+ actionview (8.1.1)
54
+ activesupport (= 8.1.1)
55
+ builder (~> 3.1)
56
+ erubi (~> 1.11)
57
+ rails-dom-testing (~> 2.2)
58
+ rails-html-sanitizer (~> 1.6)
59
+ activejob (8.1.1)
60
+ activesupport (= 8.1.1)
61
+ globalid (>= 0.3.6)
62
+ activemodel (8.1.1)
63
+ activesupport (= 8.1.1)
64
+ activerecord (8.1.1)
65
+ activemodel (= 8.1.1)
66
+ activesupport (= 8.1.1)
67
+ timeout (>= 0.4.0)
68
+ activestorage (8.1.1)
69
+ actionpack (= 8.1.1)
70
+ activejob (= 8.1.1)
71
+ activerecord (= 8.1.1)
72
+ activesupport (= 8.1.1)
73
+ marcel (~> 1.0)
74
+ activesupport (8.1.1)
75
+ base64
76
+ bigdecimal
77
+ concurrent-ruby (~> 1.0, >= 1.3.1)
78
+ connection_pool (>= 2.2.5)
79
+ drb
80
+ i18n (>= 1.6, < 2)
81
+ json
82
+ logger (>= 1.4.2)
83
+ minitest (>= 5.1)
84
+ securerandom (>= 0.3)
85
+ tzinfo (~> 2.0, >= 2.0.5)
86
+ uri (>= 0.13.1)
87
+ ast (2.4.3)
88
+ base64 (0.3.0)
89
+ bcrypt_pbkdf (1.1.2)
90
+ bcrypt_pbkdf (1.1.2-arm64-darwin)
91
+ bcrypt_pbkdf (1.1.2-x86_64-darwin)
92
+ bigdecimal (4.0.1)
93
+ bindex (0.8.1)
94
+ bootsnap (1.20.1)
95
+ msgpack (~> 1.2)
96
+ brakeman (7.1.2)
97
+ racc
98
+ builder (3.3.0)
99
+ bundler-audit (0.9.3)
100
+ bundler (>= 1.2.0)
101
+ thor (~> 1.0)
102
+ concurrent-ruby (1.3.6)
103
+ connection_pool (3.0.2)
104
+ crass (1.0.6)
105
+ date (3.5.1)
106
+ debug (1.11.1)
107
+ irb (~> 1.10)
108
+ reline (>= 0.3.8)
109
+ dotenv (3.2.0)
110
+ drb (2.2.3)
111
+ ed25519 (1.4.0)
112
+ erb (6.0.1)
113
+ erubi (1.13.1)
114
+ et-orbi (1.4.0)
115
+ tzinfo
116
+ ffi (1.17.3-aarch64-linux-gnu)
117
+ ffi (1.17.3-aarch64-linux-musl)
118
+ ffi (1.17.3-arm-linux-gnu)
119
+ ffi (1.17.3-arm-linux-musl)
120
+ ffi (1.17.3-arm64-darwin)
121
+ ffi (1.17.3-x86_64-darwin)
122
+ ffi (1.17.3-x86_64-linux-gnu)
123
+ ffi (1.17.3-x86_64-linux-musl)
124
+ fugit (1.12.1)
125
+ et-orbi (~> 1.4)
126
+ raabro (~> 1.4)
127
+ globalid (1.3.0)
128
+ activesupport (>= 6.1)
129
+ i18n (1.14.8)
130
+ concurrent-ruby (~> 1.0)
131
+ image_processing (1.14.0)
132
+ mini_magick (>= 4.9.5, < 6)
133
+ ruby-vips (>= 2.0.17, < 3)
134
+ importmap-rails (2.2.2)
135
+ actionpack (>= 6.0.0)
136
+ activesupport (>= 6.0.0)
137
+ railties (>= 6.0.0)
138
+ io-console (0.8.2)
139
+ irb (1.16.0)
140
+ pp (>= 0.6.0)
141
+ rdoc (>= 4.0.0)
142
+ reline (>= 0.4.2)
143
+ jbuilder (2.14.1)
144
+ actionview (>= 7.0.0)
145
+ activesupport (>= 7.0.0)
146
+ json (2.18.0)
147
+ kamal (2.10.1)
148
+ activesupport (>= 7.0)
149
+ base64 (~> 0.2)
150
+ bcrypt_pbkdf (~> 1.0)
151
+ concurrent-ruby (~> 1.2)
152
+ dotenv (~> 3.1)
153
+ ed25519 (~> 1.4)
154
+ net-ssh (~> 7.3)
155
+ sshkit (>= 1.23.0, < 2.0)
156
+ thor (~> 1.3)
157
+ zeitwerk (>= 2.6.18, < 3.0)
158
+ language_server-protocol (3.17.0.5)
159
+ lint_roller (1.1.0)
160
+ logger (1.7.0)
161
+ loofah (2.25.0)
162
+ crass (~> 1.0.2)
163
+ nokogiri (>= 1.12.0)
164
+ mail (2.9.0)
165
+ logger
166
+ mini_mime (>= 0.1.1)
167
+ net-imap
168
+ net-pop
169
+ net-smtp
170
+ marcel (1.1.0)
171
+ mini_magick (5.3.1)
172
+ logger
173
+ mini_mime (1.1.5)
174
+ minitest (6.0.1)
175
+ prism (~> 1.5)
176
+ msgpack (1.8.0)
177
+ net-imap (0.6.2)
178
+ date
179
+ net-protocol
180
+ net-pop (0.1.2)
181
+ net-protocol
182
+ net-protocol (0.2.2)
183
+ timeout
184
+ net-scp (4.1.0)
185
+ net-ssh (>= 2.6.5, < 8.0.0)
186
+ net-sftp (4.0.0)
187
+ net-ssh (>= 5.0.0, < 8.0.0)
188
+ net-smtp (0.5.1)
189
+ net-protocol
190
+ net-ssh (7.3.0)
191
+ nio4r (2.7.5)
192
+ nokogiri (1.19.0-aarch64-linux-gnu)
193
+ racc (~> 1.4)
194
+ nokogiri (1.19.0-aarch64-linux-musl)
195
+ racc (~> 1.4)
196
+ nokogiri (1.19.0-arm-linux-gnu)
197
+ racc (~> 1.4)
198
+ nokogiri (1.19.0-arm-linux-musl)
199
+ racc (~> 1.4)
200
+ nokogiri (1.19.0-arm64-darwin)
201
+ racc (~> 1.4)
202
+ nokogiri (1.19.0-x86_64-darwin)
203
+ racc (~> 1.4)
204
+ nokogiri (1.19.0-x86_64-linux-gnu)
205
+ racc (~> 1.4)
206
+ nokogiri (1.19.0-x86_64-linux-musl)
207
+ racc (~> 1.4)
208
+ ostruct (0.6.3)
209
+ parallel (1.27.0)
210
+ parser (3.3.10.0)
211
+ ast (~> 2.4.1)
212
+ racc
213
+ pp (0.6.3)
214
+ prettyprint
215
+ prettyprint (0.2.0)
216
+ prism (1.7.0)
217
+ propshaft (1.3.1)
218
+ actionpack (>= 7.0.0)
219
+ activesupport (>= 7.0.0)
220
+ rack
221
+ psych (5.3.1)
222
+ date
223
+ stringio
224
+ puma (7.1.0)
225
+ nio4r (~> 2.0)
226
+ raabro (1.4.0)
227
+ racc (1.8.1)
228
+ rack (3.2.4)
229
+ rack-session (2.1.1)
230
+ base64 (>= 0.1.0)
231
+ rack (>= 3.0.0)
232
+ rack-test (2.2.0)
233
+ rack (>= 1.3)
234
+ rackup (2.3.1)
235
+ rack (>= 3)
236
+ rails (8.1.1)
237
+ actioncable (= 8.1.1)
238
+ actionmailbox (= 8.1.1)
239
+ actionmailer (= 8.1.1)
240
+ actionpack (= 8.1.1)
241
+ actiontext (= 8.1.1)
242
+ actionview (= 8.1.1)
243
+ activejob (= 8.1.1)
244
+ activemodel (= 8.1.1)
245
+ activerecord (= 8.1.1)
246
+ activestorage (= 8.1.1)
247
+ activesupport (= 8.1.1)
248
+ bundler (>= 1.15.0)
249
+ railties (= 8.1.1)
250
+ rails-dom-testing (2.3.0)
251
+ activesupport (>= 5.0.0)
252
+ minitest
253
+ nokogiri (>= 1.6)
254
+ rails-html-sanitizer (1.6.2)
255
+ loofah (~> 2.21)
256
+ nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0)
257
+ railties (8.1.1)
258
+ actionpack (= 8.1.1)
259
+ activesupport (= 8.1.1)
260
+ irb (~> 1.13)
261
+ rackup (>= 1.0.0)
262
+ rake (>= 12.2)
263
+ thor (~> 1.0, >= 1.2.2)
264
+ tsort (>= 0.2)
265
+ zeitwerk (~> 2.6)
266
+ rainbow (3.1.1)
267
+ rake (13.3.1)
268
+ rdoc (7.0.3)
269
+ erb
270
+ psych (>= 4.0.0)
271
+ tsort
272
+ regexp_parser (2.11.3)
273
+ reline (0.6.3)
274
+ io-console (~> 0.5)
275
+ rubocop (1.82.1)
276
+ json (~> 2.3)
277
+ language_server-protocol (~> 3.17.0.2)
278
+ lint_roller (~> 1.1.0)
279
+ parallel (~> 1.10)
280
+ parser (>= 3.3.0.2)
281
+ rainbow (>= 2.2.2, < 4.0)
282
+ regexp_parser (>= 2.9.3, < 3.0)
283
+ rubocop-ast (>= 1.48.0, < 2.0)
284
+ ruby-progressbar (~> 1.7)
285
+ unicode-display_width (>= 2.4.0, < 4.0)
286
+ rubocop-ast (1.49.0)
287
+ parser (>= 3.3.7.2)
288
+ prism (~> 1.7)
289
+ rubocop-performance (1.26.1)
290
+ lint_roller (~> 1.1)
291
+ rubocop (>= 1.75.0, < 2.0)
292
+ rubocop-ast (>= 1.47.1, < 2.0)
293
+ rubocop-rails (2.34.2)
294
+ activesupport (>= 4.2.0)
295
+ lint_roller (~> 1.1)
296
+ rack (>= 1.1)
297
+ rubocop (>= 1.75.0, < 2.0)
298
+ rubocop-ast (>= 1.44.0, < 2.0)
299
+ rubocop-rails-omakase (1.1.0)
300
+ rubocop (>= 1.72)
301
+ rubocop-performance (>= 1.24)
302
+ rubocop-rails (>= 2.30)
303
+ ruby-progressbar (1.13.0)
304
+ ruby-vips (2.3.0)
305
+ ffi (~> 1.12)
306
+ logger
307
+ securerandom (0.4.1)
308
+ solid_cable (3.0.12)
309
+ actioncable (>= 7.2)
310
+ activejob (>= 7.2)
311
+ activerecord (>= 7.2)
312
+ railties (>= 7.2)
313
+ solid_cache (1.0.10)
314
+ activejob (>= 7.2)
315
+ activerecord (>= 7.2)
316
+ railties (>= 7.2)
317
+ solid_queue (1.2.4)
318
+ activejob (>= 7.1)
319
+ activerecord (>= 7.1)
320
+ concurrent-ruby (>= 1.3.1)
321
+ fugit (~> 1.11)
322
+ railties (>= 7.1)
323
+ thor (>= 1.3.1)
324
+ sqlite3 (2.9.0-aarch64-linux-gnu)
325
+ sqlite3 (2.9.0-aarch64-linux-musl)
326
+ sqlite3 (2.9.0-arm-linux-gnu)
327
+ sqlite3 (2.9.0-arm-linux-musl)
328
+ sqlite3 (2.9.0-arm64-darwin)
329
+ sqlite3 (2.9.0-x86_64-darwin)
330
+ sqlite3 (2.9.0-x86_64-linux-gnu)
331
+ sqlite3 (2.9.0-x86_64-linux-musl)
332
+ sshkit (1.25.0)
333
+ base64
334
+ logger
335
+ net-scp (>= 1.1.2)
336
+ net-sftp (>= 2.1.2)
337
+ net-ssh (>= 2.8.0)
338
+ ostruct
339
+ stimulus-rails (1.3.4)
340
+ railties (>= 6.0.0)
341
+ stringio (3.2.0)
342
+ thor (1.4.0)
343
+ thruster (0.1.17)
344
+ thruster (0.1.17-aarch64-linux)
345
+ thruster (0.1.17-arm64-darwin)
346
+ thruster (0.1.17-x86_64-darwin)
347
+ thruster (0.1.17-x86_64-linux)
348
+ timeout (0.6.0)
349
+ tsort (0.2.0)
350
+ turbo-rails (2.0.20)
351
+ actionpack (>= 7.1.0)
352
+ railties (>= 7.1.0)
353
+ tzinfo (2.0.6)
354
+ concurrent-ruby (~> 1.0)
355
+ unicode-display_width (3.2.0)
356
+ unicode-emoji (~> 4.1)
357
+ unicode-emoji (4.2.0)
358
+ uri (1.1.1)
359
+ useragent (0.16.11)
360
+ web-console (4.2.1)
361
+ actionview (>= 6.0.0)
362
+ activemodel (>= 6.0.0)
363
+ bindex (>= 0.4.0)
364
+ railties (>= 6.0.0)
365
+ websocket-driver (0.8.0)
366
+ base64
367
+ websocket-extensions (>= 0.1.0)
368
+ websocket-extensions (0.1.5)
369
+ zeitwerk (2.7.4)
370
+
371
+ PLATFORMS
372
+ aarch64-linux
373
+ aarch64-linux-gnu
374
+ aarch64-linux-musl
375
+ arm-linux-gnu
376
+ arm-linux-musl
377
+ arm64-darwin
378
+ x86_64-darwin
379
+ x86_64-linux
380
+ x86_64-linux-gnu
381
+ x86_64-linux-musl
382
+
383
+ DEPENDENCIES
384
+ active_domain!
385
+ bootsnap
386
+ brakeman
387
+ bundler-audit
388
+ debug
389
+ image_processing (~> 1.2)
390
+ importmap-rails
391
+ jbuilder
392
+ kamal
393
+ propshaft
394
+ puma (>= 5.0)
395
+ rails (~> 8.1.1)
396
+ rubocop-rails-omakase
397
+ solid_cable
398
+ solid_cache
399
+ solid_queue
400
+ sqlite3 (>= 2.1)
401
+ stimulus-rails
402
+ thruster
403
+ turbo-rails
404
+ tzinfo-data
405
+ web-console
406
+
407
+ BUNDLED WITH
408
+ 2.6.8
@@ -0,0 +1,24 @@
1
+ # README
2
+
3
+ This README would normally document whatever steps are necessary to get the
4
+ application up and running.
5
+
6
+ Things you may want to cover:
7
+
8
+ * Ruby version
9
+
10
+ * System dependencies
11
+
12
+ * Configuration
13
+
14
+ * Database creation
15
+
16
+ * Database initialization
17
+
18
+ * How to run the test suite
19
+
20
+ * Services (job queues, cache servers, search engines, etc.)
21
+
22
+ * Deployment instructions
23
+
24
+ * ...