rapitapir 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 (157) hide show
  1. checksums.yaml +7 -0
  2. data/.rspec +3 -0
  3. data/.rubocop.yml +57 -0
  4. data/CHANGELOG.md +94 -0
  5. data/CLEANUP_SUMMARY.md +155 -0
  6. data/CONTRIBUTING.md +280 -0
  7. data/LICENSE +21 -0
  8. data/README.md +485 -0
  9. data/debug_hash.rb +20 -0
  10. data/docs/EXTENSION_COMPARISON.md +388 -0
  11. data/docs/SINATRA_EXTENSION.md +467 -0
  12. data/docs/archive/PHASE_1_2_COMPLETE.md +77 -0
  13. data/docs/archive/PHASE_1_3_COMPLETE.md +152 -0
  14. data/docs/archive/PHASE_2_1_OBSERVABILITY_COMPLETED.md +203 -0
  15. data/docs/archive/PHASE_2_SUMMARY.md +209 -0
  16. data/docs/archive/REFACTORING_SUMMARY.md +184 -0
  17. data/docs/archive/phase_1_3_plan.md +136 -0
  18. data/docs/archive/sinatra_extension_summary.md +188 -0
  19. data/docs/archive/sinatra_working_solution.md +113 -0
  20. data/docs/archive/typescript-client-generator-summary.md +259 -0
  21. data/docs/auto-derivation.md +146 -0
  22. data/docs/blueprint.md +1091 -0
  23. data/docs/endpoint-definition.md +211 -0
  24. data/docs/github_pages_fix.md +52 -0
  25. data/docs/github_pages_setup.md +49 -0
  26. data/docs/implementation-status.md +357 -0
  27. data/docs/observability.md +647 -0
  28. data/docs/phase3-plan.md +108 -0
  29. data/docs/sinatra_rapitapir.md +87 -0
  30. data/docs/type_shortcuts.md +146 -0
  31. data/examples/README_ENTERPRISE.md +202 -0
  32. data/examples/authentication_example.rb +192 -0
  33. data/examples/auto_derivation_ruby_friendly.rb +163 -0
  34. data/examples/cli/user_api_endpoints.rb +56 -0
  35. data/examples/client/typescript_client_example.rb +102 -0
  36. data/examples/client/user-api-client.ts +193 -0
  37. data/examples/demo_api.rb +41 -0
  38. data/examples/docs/documentation_example.rb +112 -0
  39. data/examples/docs/user-api-docs.html +789 -0
  40. data/examples/docs/user-api-docs.md +403 -0
  41. data/examples/enhanced_auto_derivation_test.rb +83 -0
  42. data/examples/enterprise_extension_demo.rb +417 -0
  43. data/examples/enterprise_rapitapir_api.rb +662 -0
  44. data/examples/getting_started_extension.rb +218 -0
  45. data/examples/hello_world.rb +74 -0
  46. data/examples/oauth2/.env.example +19 -0
  47. data/examples/oauth2/README.md +205 -0
  48. data/examples/oauth2/generic_oauth2_api.rb +226 -0
  49. data/examples/oauth2/get_token.rb +72 -0
  50. data/examples/oauth2/songs_api_with_auth0.rb +320 -0
  51. data/examples/oauth2/test_api.sh +16 -0
  52. data/examples/oauth2/test_songs_api.sh +110 -0
  53. data/examples/observability/.env.example +35 -0
  54. data/examples/observability/README.md +230 -0
  55. data/examples/observability/README_HONEYCOMB.md +332 -0
  56. data/examples/observability/advanced_setup.rb +384 -0
  57. data/examples/observability/basic_setup.rb +192 -0
  58. data/examples/observability/complete_test.rb +121 -0
  59. data/examples/observability/honeycomb_example.rb +523 -0
  60. data/examples/observability/honeycomb_rapitapir_clean.rb +488 -0
  61. data/examples/observability/honeycomb_rapitapir_example.rb +523 -0
  62. data/examples/observability/honeycomb_working_example.rb +489 -0
  63. data/examples/observability/quick_test.rb +78 -0
  64. data/examples/observability/simple_test.rb +14 -0
  65. data/examples/observability/test_honeycomb_demo.rb +354 -0
  66. data/examples/observability/test_live_honeycomb.rb +111 -0
  67. data/examples/observability/test_validation.rb +78 -0
  68. data/examples/observability/test_working_validation.rb +66 -0
  69. data/examples/openapi/user_api_schema.rb +132 -0
  70. data/examples/production_ready_example.rb +105 -0
  71. data/examples/rails/users_controller.rb +146 -0
  72. data/examples/readme/basic_sinatra_example.rb +128 -0
  73. data/examples/server/user_api.rb +179 -0
  74. data/examples/simple_auto_derivation_demo.rb +44 -0
  75. data/examples/simple_demo_api.rb +18 -0
  76. data/examples/sinatra/user_app.rb +127 -0
  77. data/examples/t_shortcut_demo.rb +59 -0
  78. data/examples/user_api.rb +190 -0
  79. data/examples/working_getting_started.rb +184 -0
  80. data/examples/working_simple_example.rb +195 -0
  81. data/lib/rapitapir/auth/configuration.rb +129 -0
  82. data/lib/rapitapir/auth/context.rb +122 -0
  83. data/lib/rapitapir/auth/errors.rb +104 -0
  84. data/lib/rapitapir/auth/middleware.rb +324 -0
  85. data/lib/rapitapir/auth/oauth2.rb +350 -0
  86. data/lib/rapitapir/auth/schemes.rb +420 -0
  87. data/lib/rapitapir/auth.rb +113 -0
  88. data/lib/rapitapir/cli/command.rb +535 -0
  89. data/lib/rapitapir/cli/server.rb +243 -0
  90. data/lib/rapitapir/cli/validator.rb +373 -0
  91. data/lib/rapitapir/client/generator_base.rb +272 -0
  92. data/lib/rapitapir/client/typescript_generator.rb +350 -0
  93. data/lib/rapitapir/core/endpoint.rb +158 -0
  94. data/lib/rapitapir/core/enhanced_endpoint.rb +235 -0
  95. data/lib/rapitapir/core/input.rb +182 -0
  96. data/lib/rapitapir/core/output.rb +164 -0
  97. data/lib/rapitapir/core/request.rb +19 -0
  98. data/lib/rapitapir/core/response.rb +17 -0
  99. data/lib/rapitapir/docs/html_generator.rb +780 -0
  100. data/lib/rapitapir/docs/markdown_generator.rb +464 -0
  101. data/lib/rapitapir/dsl/endpoint_dsl.rb +116 -0
  102. data/lib/rapitapir/dsl/enhanced_endpoint_dsl.rb +62 -0
  103. data/lib/rapitapir/dsl/enhanced_input.rb +73 -0
  104. data/lib/rapitapir/dsl/enhanced_output.rb +63 -0
  105. data/lib/rapitapir/dsl/enhanced_structures.rb +393 -0
  106. data/lib/rapitapir/dsl/fluent_dsl.rb +72 -0
  107. data/lib/rapitapir/dsl/fluent_endpoint_builder.rb +316 -0
  108. data/lib/rapitapir/dsl/http_verbs.rb +77 -0
  109. data/lib/rapitapir/dsl/input_methods.rb +47 -0
  110. data/lib/rapitapir/dsl/observability_methods.rb +81 -0
  111. data/lib/rapitapir/dsl/output_methods.rb +43 -0
  112. data/lib/rapitapir/dsl/type_resolution.rb +43 -0
  113. data/lib/rapitapir/observability/configuration.rb +108 -0
  114. data/lib/rapitapir/observability/health_check.rb +236 -0
  115. data/lib/rapitapir/observability/logging.rb +270 -0
  116. data/lib/rapitapir/observability/metrics.rb +203 -0
  117. data/lib/rapitapir/observability/middleware.rb +243 -0
  118. data/lib/rapitapir/observability/tracing.rb +143 -0
  119. data/lib/rapitapir/observability.rb +28 -0
  120. data/lib/rapitapir/openapi/schema_generator.rb +403 -0
  121. data/lib/rapitapir/schema.rb +136 -0
  122. data/lib/rapitapir/server/enhanced_rack_adapter.rb +379 -0
  123. data/lib/rapitapir/server/middleware.rb +120 -0
  124. data/lib/rapitapir/server/path_matcher.rb +45 -0
  125. data/lib/rapitapir/server/rack_adapter.rb +215 -0
  126. data/lib/rapitapir/server/rails_adapter.rb +17 -0
  127. data/lib/rapitapir/server/rails_adapter_class.rb +53 -0
  128. data/lib/rapitapir/server/rails_controller.rb +72 -0
  129. data/lib/rapitapir/server/rails_input_processor.rb +73 -0
  130. data/lib/rapitapir/server/rails_response_handler.rb +29 -0
  131. data/lib/rapitapir/server/sinatra_adapter.rb +200 -0
  132. data/lib/rapitapir/server/sinatra_integration.rb +93 -0
  133. data/lib/rapitapir/sinatra/configuration.rb +91 -0
  134. data/lib/rapitapir/sinatra/extension.rb +214 -0
  135. data/lib/rapitapir/sinatra/oauth2_helpers.rb +236 -0
  136. data/lib/rapitapir/sinatra/resource_builder.rb +152 -0
  137. data/lib/rapitapir/sinatra/swagger_ui_generator.rb +166 -0
  138. data/lib/rapitapir/sinatra_rapitapir.rb +40 -0
  139. data/lib/rapitapir/types/array.rb +163 -0
  140. data/lib/rapitapir/types/auto_derivation.rb +265 -0
  141. data/lib/rapitapir/types/base.rb +146 -0
  142. data/lib/rapitapir/types/boolean.rb +46 -0
  143. data/lib/rapitapir/types/date.rb +92 -0
  144. data/lib/rapitapir/types/datetime.rb +98 -0
  145. data/lib/rapitapir/types/email.rb +32 -0
  146. data/lib/rapitapir/types/float.rb +134 -0
  147. data/lib/rapitapir/types/hash.rb +161 -0
  148. data/lib/rapitapir/types/integer.rb +143 -0
  149. data/lib/rapitapir/types/object.rb +156 -0
  150. data/lib/rapitapir/types/optional.rb +65 -0
  151. data/lib/rapitapir/types/string.rb +185 -0
  152. data/lib/rapitapir/types/uuid.rb +32 -0
  153. data/lib/rapitapir/types.rb +155 -0
  154. data/lib/rapitapir/version.rb +5 -0
  155. data/lib/rapitapir.rb +173 -0
  156. data/rapitapir.gemspec +66 -0
  157. metadata +387 -0
metadata ADDED
@@ -0,0 +1,387 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: rapitapir
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Riccardo Merolla
8
+ autorequire:
9
+ bindir: exe
10
+ cert_chain: []
11
+ date: 2025-08-04 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: json
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '2.0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '2.0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rack
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '2.0'
34
+ - - ">="
35
+ - !ruby/object:Gem::Version
36
+ version: '2.0'
37
+ type: :runtime
38
+ prerelease: false
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - "~>"
42
+ - !ruby/object:Gem::Version
43
+ version: '2.0'
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: '2.0'
47
+ - !ruby/object:Gem::Dependency
48
+ name: sinatra
49
+ requirement: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: '2.0'
54
+ - - "<"
55
+ - !ruby/object:Gem::Version
56
+ version: '4.0'
57
+ type: :runtime
58
+ prerelease: false
59
+ version_requirements: !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - ">="
62
+ - !ruby/object:Gem::Version
63
+ version: '2.0'
64
+ - - "<"
65
+ - !ruby/object:Gem::Version
66
+ version: '4.0'
67
+ - !ruby/object:Gem::Dependency
68
+ name: rack-test
69
+ requirement: !ruby/object:Gem::Requirement
70
+ requirements:
71
+ - - "~>"
72
+ - !ruby/object:Gem::Version
73
+ version: '2.0'
74
+ type: :development
75
+ prerelease: false
76
+ version_requirements: !ruby/object:Gem::Requirement
77
+ requirements:
78
+ - - "~>"
79
+ - !ruby/object:Gem::Version
80
+ version: '2.0'
81
+ - !ruby/object:Gem::Dependency
82
+ name: rspec
83
+ requirement: !ruby/object:Gem::Requirement
84
+ requirements:
85
+ - - "~>"
86
+ - !ruby/object:Gem::Version
87
+ version: '3.12'
88
+ type: :development
89
+ prerelease: false
90
+ version_requirements: !ruby/object:Gem::Requirement
91
+ requirements:
92
+ - - "~>"
93
+ - !ruby/object:Gem::Version
94
+ version: '3.12'
95
+ - !ruby/object:Gem::Dependency
96
+ name: simplecov
97
+ requirement: !ruby/object:Gem::Requirement
98
+ requirements:
99
+ - - "~>"
100
+ - !ruby/object:Gem::Version
101
+ version: '0.22'
102
+ type: :development
103
+ prerelease: false
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ requirements:
106
+ - - "~>"
107
+ - !ruby/object:Gem::Version
108
+ version: '0.22'
109
+ - !ruby/object:Gem::Dependency
110
+ name: webrick
111
+ requirement: !ruby/object:Gem::Requirement
112
+ requirements:
113
+ - - "~>"
114
+ - !ruby/object:Gem::Version
115
+ version: '1.8'
116
+ type: :development
117
+ prerelease: false
118
+ version_requirements: !ruby/object:Gem::Requirement
119
+ requirements:
120
+ - - "~>"
121
+ - !ruby/object:Gem::Version
122
+ version: '1.8'
123
+ - !ruby/object:Gem::Dependency
124
+ name: redcarpet
125
+ requirement: !ruby/object:Gem::Requirement
126
+ requirements:
127
+ - - "~>"
128
+ - !ruby/object:Gem::Version
129
+ version: '3.6'
130
+ type: :development
131
+ prerelease: false
132
+ version_requirements: !ruby/object:Gem::Requirement
133
+ requirements:
134
+ - - "~>"
135
+ - !ruby/object:Gem::Version
136
+ version: '3.6'
137
+ - !ruby/object:Gem::Dependency
138
+ name: yard
139
+ requirement: !ruby/object:Gem::Requirement
140
+ requirements:
141
+ - - "~>"
142
+ - !ruby/object:Gem::Version
143
+ version: '0.9'
144
+ type: :development
145
+ prerelease: false
146
+ version_requirements: !ruby/object:Gem::Requirement
147
+ requirements:
148
+ - - "~>"
149
+ - !ruby/object:Gem::Version
150
+ version: '0.9'
151
+ - !ruby/object:Gem::Dependency
152
+ name: rubocop
153
+ requirement: !ruby/object:Gem::Requirement
154
+ requirements:
155
+ - - "~>"
156
+ - !ruby/object:Gem::Version
157
+ version: '1.50'
158
+ type: :development
159
+ prerelease: false
160
+ version_requirements: !ruby/object:Gem::Requirement
161
+ requirements:
162
+ - - "~>"
163
+ - !ruby/object:Gem::Version
164
+ version: '1.50'
165
+ - !ruby/object:Gem::Dependency
166
+ name: rubocop-performance
167
+ requirement: !ruby/object:Gem::Requirement
168
+ requirements:
169
+ - - "~>"
170
+ - !ruby/object:Gem::Version
171
+ version: '1.18'
172
+ type: :development
173
+ prerelease: false
174
+ version_requirements: !ruby/object:Gem::Requirement
175
+ requirements:
176
+ - - "~>"
177
+ - !ruby/object:Gem::Version
178
+ version: '1.18'
179
+ - !ruby/object:Gem::Dependency
180
+ name: rubocop-rspec
181
+ requirement: !ruby/object:Gem::Requirement
182
+ requirements:
183
+ - - "~>"
184
+ - !ruby/object:Gem::Version
185
+ version: '2.20'
186
+ type: :development
187
+ prerelease: false
188
+ version_requirements: !ruby/object:Gem::Requirement
189
+ requirements:
190
+ - - "~>"
191
+ - !ruby/object:Gem::Version
192
+ version: '2.20'
193
+ description: "RapiTapir is a Ruby library inspired by Scala's Tapir for building type-safe
194
+ HTTP APIs. \nIt provides declarative endpoint definitions, automatic OpenAPI documentation
195
+ generation, \nclient code generation, and seamless integration with Sinatra, Rails,
196
+ and Rack applications.\n"
197
+ email:
198
+ - riccardo.merolla@gmail.com
199
+ executables: []
200
+ extensions: []
201
+ extra_rdoc_files: []
202
+ files:
203
+ - ".rspec"
204
+ - ".rubocop.yml"
205
+ - CHANGELOG.md
206
+ - CLEANUP_SUMMARY.md
207
+ - CONTRIBUTING.md
208
+ - LICENSE
209
+ - README.md
210
+ - debug_hash.rb
211
+ - docs/EXTENSION_COMPARISON.md
212
+ - docs/SINATRA_EXTENSION.md
213
+ - docs/archive/PHASE_1_2_COMPLETE.md
214
+ - docs/archive/PHASE_1_3_COMPLETE.md
215
+ - docs/archive/PHASE_2_1_OBSERVABILITY_COMPLETED.md
216
+ - docs/archive/PHASE_2_SUMMARY.md
217
+ - docs/archive/REFACTORING_SUMMARY.md
218
+ - docs/archive/phase_1_3_plan.md
219
+ - docs/archive/sinatra_extension_summary.md
220
+ - docs/archive/sinatra_working_solution.md
221
+ - docs/archive/typescript-client-generator-summary.md
222
+ - docs/auto-derivation.md
223
+ - docs/blueprint.md
224
+ - docs/endpoint-definition.md
225
+ - docs/github_pages_fix.md
226
+ - docs/github_pages_setup.md
227
+ - docs/implementation-status.md
228
+ - docs/observability.md
229
+ - docs/phase3-plan.md
230
+ - docs/sinatra_rapitapir.md
231
+ - docs/type_shortcuts.md
232
+ - examples/README_ENTERPRISE.md
233
+ - examples/authentication_example.rb
234
+ - examples/auto_derivation_ruby_friendly.rb
235
+ - examples/cli/user_api_endpoints.rb
236
+ - examples/client/typescript_client_example.rb
237
+ - examples/client/user-api-client.ts
238
+ - examples/demo_api.rb
239
+ - examples/docs/documentation_example.rb
240
+ - examples/docs/user-api-docs.html
241
+ - examples/docs/user-api-docs.md
242
+ - examples/enhanced_auto_derivation_test.rb
243
+ - examples/enterprise_extension_demo.rb
244
+ - examples/enterprise_rapitapir_api.rb
245
+ - examples/getting_started_extension.rb
246
+ - examples/hello_world.rb
247
+ - examples/oauth2/.env.example
248
+ - examples/oauth2/README.md
249
+ - examples/oauth2/generic_oauth2_api.rb
250
+ - examples/oauth2/get_token.rb
251
+ - examples/oauth2/songs_api_with_auth0.rb
252
+ - examples/oauth2/test_api.sh
253
+ - examples/oauth2/test_songs_api.sh
254
+ - examples/observability/.env.example
255
+ - examples/observability/README.md
256
+ - examples/observability/README_HONEYCOMB.md
257
+ - examples/observability/advanced_setup.rb
258
+ - examples/observability/basic_setup.rb
259
+ - examples/observability/complete_test.rb
260
+ - examples/observability/honeycomb_example.rb
261
+ - examples/observability/honeycomb_rapitapir_clean.rb
262
+ - examples/observability/honeycomb_rapitapir_example.rb
263
+ - examples/observability/honeycomb_working_example.rb
264
+ - examples/observability/quick_test.rb
265
+ - examples/observability/simple_test.rb
266
+ - examples/observability/test_honeycomb_demo.rb
267
+ - examples/observability/test_live_honeycomb.rb
268
+ - examples/observability/test_validation.rb
269
+ - examples/observability/test_working_validation.rb
270
+ - examples/openapi/user_api_schema.rb
271
+ - examples/production_ready_example.rb
272
+ - examples/rails/users_controller.rb
273
+ - examples/readme/basic_sinatra_example.rb
274
+ - examples/server/user_api.rb
275
+ - examples/simple_auto_derivation_demo.rb
276
+ - examples/simple_demo_api.rb
277
+ - examples/sinatra/user_app.rb
278
+ - examples/t_shortcut_demo.rb
279
+ - examples/user_api.rb
280
+ - examples/working_getting_started.rb
281
+ - examples/working_simple_example.rb
282
+ - lib/rapitapir.rb
283
+ - lib/rapitapir/auth.rb
284
+ - lib/rapitapir/auth/configuration.rb
285
+ - lib/rapitapir/auth/context.rb
286
+ - lib/rapitapir/auth/errors.rb
287
+ - lib/rapitapir/auth/middleware.rb
288
+ - lib/rapitapir/auth/oauth2.rb
289
+ - lib/rapitapir/auth/schemes.rb
290
+ - lib/rapitapir/cli/command.rb
291
+ - lib/rapitapir/cli/server.rb
292
+ - lib/rapitapir/cli/validator.rb
293
+ - lib/rapitapir/client/generator_base.rb
294
+ - lib/rapitapir/client/typescript_generator.rb
295
+ - lib/rapitapir/core/endpoint.rb
296
+ - lib/rapitapir/core/enhanced_endpoint.rb
297
+ - lib/rapitapir/core/input.rb
298
+ - lib/rapitapir/core/output.rb
299
+ - lib/rapitapir/core/request.rb
300
+ - lib/rapitapir/core/response.rb
301
+ - lib/rapitapir/docs/html_generator.rb
302
+ - lib/rapitapir/docs/markdown_generator.rb
303
+ - lib/rapitapir/dsl/endpoint_dsl.rb
304
+ - lib/rapitapir/dsl/enhanced_endpoint_dsl.rb
305
+ - lib/rapitapir/dsl/enhanced_input.rb
306
+ - lib/rapitapir/dsl/enhanced_output.rb
307
+ - lib/rapitapir/dsl/enhanced_structures.rb
308
+ - lib/rapitapir/dsl/fluent_dsl.rb
309
+ - lib/rapitapir/dsl/fluent_endpoint_builder.rb
310
+ - lib/rapitapir/dsl/http_verbs.rb
311
+ - lib/rapitapir/dsl/input_methods.rb
312
+ - lib/rapitapir/dsl/observability_methods.rb
313
+ - lib/rapitapir/dsl/output_methods.rb
314
+ - lib/rapitapir/dsl/type_resolution.rb
315
+ - lib/rapitapir/observability.rb
316
+ - lib/rapitapir/observability/configuration.rb
317
+ - lib/rapitapir/observability/health_check.rb
318
+ - lib/rapitapir/observability/logging.rb
319
+ - lib/rapitapir/observability/metrics.rb
320
+ - lib/rapitapir/observability/middleware.rb
321
+ - lib/rapitapir/observability/tracing.rb
322
+ - lib/rapitapir/openapi/schema_generator.rb
323
+ - lib/rapitapir/schema.rb
324
+ - lib/rapitapir/server/enhanced_rack_adapter.rb
325
+ - lib/rapitapir/server/middleware.rb
326
+ - lib/rapitapir/server/path_matcher.rb
327
+ - lib/rapitapir/server/rack_adapter.rb
328
+ - lib/rapitapir/server/rails_adapter.rb
329
+ - lib/rapitapir/server/rails_adapter_class.rb
330
+ - lib/rapitapir/server/rails_controller.rb
331
+ - lib/rapitapir/server/rails_input_processor.rb
332
+ - lib/rapitapir/server/rails_response_handler.rb
333
+ - lib/rapitapir/server/sinatra_adapter.rb
334
+ - lib/rapitapir/server/sinatra_integration.rb
335
+ - lib/rapitapir/sinatra/configuration.rb
336
+ - lib/rapitapir/sinatra/extension.rb
337
+ - lib/rapitapir/sinatra/oauth2_helpers.rb
338
+ - lib/rapitapir/sinatra/resource_builder.rb
339
+ - lib/rapitapir/sinatra/swagger_ui_generator.rb
340
+ - lib/rapitapir/sinatra_rapitapir.rb
341
+ - lib/rapitapir/types.rb
342
+ - lib/rapitapir/types/array.rb
343
+ - lib/rapitapir/types/auto_derivation.rb
344
+ - lib/rapitapir/types/base.rb
345
+ - lib/rapitapir/types/boolean.rb
346
+ - lib/rapitapir/types/date.rb
347
+ - lib/rapitapir/types/datetime.rb
348
+ - lib/rapitapir/types/email.rb
349
+ - lib/rapitapir/types/float.rb
350
+ - lib/rapitapir/types/hash.rb
351
+ - lib/rapitapir/types/integer.rb
352
+ - lib/rapitapir/types/object.rb
353
+ - lib/rapitapir/types/optional.rb
354
+ - lib/rapitapir/types/string.rb
355
+ - lib/rapitapir/types/uuid.rb
356
+ - lib/rapitapir/version.rb
357
+ - rapitapir.gemspec
358
+ homepage: https://riccardomerolla.github.io/rapitapir/
359
+ licenses:
360
+ - MIT
361
+ metadata:
362
+ allowed_push_host: https://rubygems.org
363
+ homepage_uri: https://riccardomerolla.github.io/rapitapir/
364
+ source_code_uri: https://github.com/riccardomerolla/rapitapir
365
+ changelog_uri: https://github.com/riccardomerolla/rapitapir/blob/main/CHANGELOG.md
366
+ documentation_uri: https://riccardomerolla.github.io/rapitapir/docs
367
+ bug_tracker_uri: https://github.com/riccardomerolla/rapitapir/issues
368
+ post_install_message:
369
+ rdoc_options: []
370
+ require_paths:
371
+ - lib
372
+ required_ruby_version: !ruby/object:Gem::Requirement
373
+ requirements:
374
+ - - ">="
375
+ - !ruby/object:Gem::Version
376
+ version: 3.1.0
377
+ required_rubygems_version: !ruby/object:Gem::Requirement
378
+ requirements:
379
+ - - ">="
380
+ - !ruby/object:Gem::Version
381
+ version: '0'
382
+ requirements: []
383
+ rubygems_version: 3.4.19
384
+ signing_key:
385
+ specification_version: 4
386
+ summary: Type-safe HTTP API development for Ruby
387
+ test_files: []