mkbrut 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 (128) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +51 -0
  3. data/exe/mkbrut +5 -0
  4. data/lib/mkbrut/app.rb +67 -0
  5. data/lib/mkbrut/app_id.rb +8 -0
  6. data/lib/mkbrut/app_name.rb +29 -0
  7. data/lib/mkbrut/app_options.rb +29 -0
  8. data/lib/mkbrut/base.rb +57 -0
  9. data/lib/mkbrut/cli.rb +91 -0
  10. data/lib/mkbrut/erb_binding_delegate.rb +20 -0
  11. data/lib/mkbrut/internet_identifier.rb +32 -0
  12. data/lib/mkbrut/invalid_identifier.rb +4 -0
  13. data/lib/mkbrut/ops/add_css_import.rb +42 -0
  14. data/lib/mkbrut/ops/add_i18n_message.rb +74 -0
  15. data/lib/mkbrut/ops/add_method.rb +48 -0
  16. data/lib/mkbrut/ops/append_to_file.rb +17 -0
  17. data/lib/mkbrut/ops/base_op.rb +21 -0
  18. data/lib/mkbrut/ops/copy_file.rb +12 -0
  19. data/lib/mkbrut/ops/insert_code_in_method.rb +58 -0
  20. data/lib/mkbrut/ops/insert_route.rb +52 -0
  21. data/lib/mkbrut/ops/mkdir.rb +13 -0
  22. data/lib/mkbrut/ops/prism_parsing_op.rb +70 -0
  23. data/lib/mkbrut/ops/render_template.rb +26 -0
  24. data/lib/mkbrut/ops/skip_file.rb +10 -0
  25. data/lib/mkbrut/ops.rb +16 -0
  26. data/lib/mkbrut/organization.rb +5 -0
  27. data/lib/mkbrut/prefix.rb +26 -0
  28. data/lib/mkbrut/prefixed_io.rb +16 -0
  29. data/lib/mkbrut/segments/bare_bones.rb +184 -0
  30. data/lib/mkbrut/segments/demo.rb +117 -0
  31. data/lib/mkbrut/segments/sidekiq.rb +3 -0
  32. data/lib/mkbrut/segments.rb +7 -0
  33. data/lib/mkbrut/version.rb +3 -0
  34. data/lib/mkbrut/versions.rb +16 -0
  35. data/lib/mkbrut.rb +17 -0
  36. data/templates/Base/Dockerfile.dx +205 -0
  37. data/templates/Base/Gemfile.erb +53 -0
  38. data/templates/Base/Procfile.development +4 -0
  39. data/templates/Base/Procfile.test +1 -0
  40. data/templates/Base/README.md +4 -0
  41. data/templates/Base/README.md.erb +40 -0
  42. data/templates/Base/app/bootstrap.rb +61 -0
  43. data/templates/Base/app/config/i18n/en/1_defaults.rb +128 -0
  44. data/templates/Base/app/config/i18n/en/2_app.rb +24 -0
  45. data/templates/Base/app/public/static/manifest.json.erb +33 -0
  46. data/templates/Base/app/src/app.rb.erb +37 -0
  47. data/templates/Base/app/src/back_end/data_models/app_data_model.rb +5 -0
  48. data/templates/Base/app/src/back_end/data_models/db.rb +19 -0
  49. data/templates/Base/app/src/back_end/data_models/seed/seed_data.rb +9 -0
  50. data/templates/Base/app/src/front_end/components/app_component.rb +8 -0
  51. data/templates/Base/app/src/front_end/components/custom_element_registration.rb.erb +7 -0
  52. data/templates/Base/app/src/front_end/css/fonts.css +19 -0
  53. data/templates/Base/app/src/front_end/css/index.css +3 -0
  54. data/templates/Base/app/src/front_end/css/svgs.css +12 -0
  55. data/templates/Base/app/src/front_end/fonts/monaspace-xenon.ttf +0 -0
  56. data/templates/Base/app/src/front_end/forms/app_form.rb +4 -0
  57. data/templates/Base/app/src/front_end/handlers/app_handler.rb +4 -0
  58. data/templates/Base/app/src/front_end/images/apple-touch-icon-120x120.png +0 -0
  59. data/templates/Base/app/src/front_end/images/apple-touch-icon-152x152.png +0 -0
  60. data/templates/Base/app/src/front_end/images/apple-touch-icon-167x167.png +0 -0
  61. data/templates/Base/app/src/front_end/images/apple-touch-icon-180x180.png +0 -0
  62. data/templates/Base/app/src/front_end/images/favicon.ico +0 -0
  63. data/templates/Base/app/src/front_end/images/icon.png +0 -0
  64. data/templates/Base/app/src/front_end/images/mkicons.sh +6 -0
  65. data/templates/Base/app/src/front_end/js/index.js +6 -0
  66. data/templates/Base/app/src/front_end/layouts/default_layout.rb.erb +76 -0
  67. data/templates/Base/app/src/front_end/pages/app_page.rb +11 -0
  68. data/templates/Base/app/src/front_end/pages/home_page.rb.erb +54 -0
  69. data/templates/Base/app/src/front_end/support/app_session.rb +6 -0
  70. data/templates/Base/app/src/front_end/svgs/README.md +5 -0
  71. data/templates/Base/app/src/front_end/svgs/comment-button.svg +59 -0
  72. data/templates/Base/bin/README.md.erb +5 -0
  73. data/templates/Base/bin/build-assets +7 -0
  74. data/templates/Base/bin/ci +39 -0
  75. data/templates/Base/bin/console +31 -0
  76. data/templates/Base/bin/db +9 -0
  77. data/templates/Base/bin/dbconsole +51 -0
  78. data/templates/Base/bin/dev +25 -0
  79. data/templates/Base/bin/release +26 -0
  80. data/templates/Base/bin/run +86 -0
  81. data/templates/Base/bin/scaffold +9 -0
  82. data/templates/Base/bin/setup +256 -0
  83. data/templates/Base/bin/test +9 -0
  84. data/templates/Base/bin/test-server +29 -0
  85. data/templates/Base/bin/watch-and-build-assets +37 -0
  86. data/templates/Base/config.ru +16 -0
  87. data/templates/Base/docker-compose.dx.yml +85 -0
  88. data/templates/Base/dx/README.md +28 -0
  89. data/templates/Base/dx/bash_customizations +12 -0
  90. data/templates/Base/dx/bash_customizations.local +4 -0
  91. data/templates/Base/dx/build +101 -0
  92. data/templates/Base/dx/docker-compose.env.erb +25 -0
  93. data/templates/Base/dx/dx.sh.lib +137 -0
  94. data/templates/Base/dx/exec +56 -0
  95. data/templates/Base/dx/prune +19 -0
  96. data/templates/Base/dx/show-help-in-app-container-then-wait.sh +38 -0
  97. data/templates/Base/dx/start +30 -0
  98. data/templates/Base/dx/stop +23 -0
  99. data/templates/Base/package.json.erb +37 -0
  100. data/templates/Base/puma.config.rb +53 -0
  101. data/templates/Base/specs/e2e/home_page.spec.rb.erb +23 -0
  102. data/templates/Base/specs/front_end/js/SpecHelper.js +24 -0
  103. data/templates/Base/specs/front_end/pages/home_page.spec.rb +22 -0
  104. data/templates/Base/specs/lint_factories.spec.rb +7 -0
  105. data/templates/Base/specs/spec_helper.rb +78 -0
  106. data/templates/Base/specs/support.rb +2 -0
  107. data/templates/segments/BareBones/app/src/front_end/handlers/trigger_exception_handler.rb +24 -0
  108. data/templates/segments/BareBones/app/src/front_end/js/Example.js.erb +49 -0
  109. data/templates/segments/BareBones/specs/front_end/handlers/trigger_exception_handler.spec.rb +41 -0
  110. data/templates/segments/BareBones/specs/front_end/js/Example.spec.js.erb +38 -0
  111. data/templates/segments/Demo/app/src/back_end/data_models/db/guestbook_message.rb +3 -0
  112. data/templates/segments/Demo/app/src/back_end/data_models/migrations/20250628194124_guestbook.rb +15 -0
  113. data/templates/segments/Demo/app/src/front_end/components/flash_component.rb +36 -0
  114. data/templates/segments/Demo/app/src/front_end/css/constraint-violations.css +18 -0
  115. data/templates/segments/Demo/app/src/front_end/forms/guestbook_message_form.rb +4 -0
  116. data/templates/segments/Demo/app/src/front_end/handlers/guestbook_message_handler.rb +64 -0
  117. data/templates/segments/Demo/app/src/front_end/pages/guestbook_page/message_component.rb +41 -0
  118. data/templates/segments/Demo/app/src/front_end/pages/guestbook_page.rb +43 -0
  119. data/templates/segments/Demo/app/src/front_end/pages/new_guestbook_message_page.rb +64 -0
  120. data/templates/segments/Demo/specs/back_end/data_models/db/guestbook_message.spec.rb +5 -0
  121. data/templates/segments/Demo/specs/e2e/guest_message.spec.rb +54 -0
  122. data/templates/segments/Demo/specs/factories/db/guestbook_message.rb +7 -0
  123. data/templates/segments/Demo/specs/front_end/components/flash_component.spec.rb +5 -0
  124. data/templates/segments/Demo/specs/front_end/handlers/guestbook_message_handler.spec.rb +122 -0
  125. data/templates/segments/Demo/specs/front_end/pages/guestbook_page/message_component.spec.rb +5 -0
  126. data/templates/segments/Demo/specs/front_end/pages/guestbook_page.spec.rb +52 -0
  127. data/templates/segments/Demo/specs/front_end/pages/new_guestbook_message_page.spec.rb +5 -0
  128. metadata +195 -0
metadata ADDED
@@ -0,0 +1,195 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: mkbrut
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Dave Copeland
8
+ bindir: exe
9
+ cert_chain: []
10
+ date: 1980-01-02 00:00:00.000000000 Z
11
+ dependencies:
12
+ - !ruby/object:Gem::Dependency
13
+ name: brut
14
+ requirement: !ruby/object:Gem::Requirement
15
+ requirements:
16
+ - - ">="
17
+ - !ruby/object:Gem::Version
18
+ version: '0'
19
+ type: :runtime
20
+ prerelease: false
21
+ version_requirements: !ruby/object:Gem::Requirement
22
+ requirements:
23
+ - - ">="
24
+ - !ruby/object:Gem::Version
25
+ version: '0'
26
+ - !ruby/object:Gem::Dependency
27
+ name: rake
28
+ requirement: !ruby/object:Gem::Requirement
29
+ requirements:
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ type: :development
34
+ prerelease: false
35
+ version_requirements: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - ">="
38
+ - !ruby/object:Gem::Version
39
+ version: '0'
40
+ description: mkbrut is how you go from zero to having a Brut app where you can start
41
+ working.
42
+ email:
43
+ - davec@naildrivin5.com
44
+ executables:
45
+ - mkbrut
46
+ extensions: []
47
+ extra_rdoc_files: []
48
+ files:
49
+ - README.md
50
+ - exe/mkbrut
51
+ - lib/mkbrut.rb
52
+ - lib/mkbrut/app.rb
53
+ - lib/mkbrut/app_id.rb
54
+ - lib/mkbrut/app_name.rb
55
+ - lib/mkbrut/app_options.rb
56
+ - lib/mkbrut/base.rb
57
+ - lib/mkbrut/cli.rb
58
+ - lib/mkbrut/erb_binding_delegate.rb
59
+ - lib/mkbrut/internet_identifier.rb
60
+ - lib/mkbrut/invalid_identifier.rb
61
+ - lib/mkbrut/ops.rb
62
+ - lib/mkbrut/ops/add_css_import.rb
63
+ - lib/mkbrut/ops/add_i18n_message.rb
64
+ - lib/mkbrut/ops/add_method.rb
65
+ - lib/mkbrut/ops/append_to_file.rb
66
+ - lib/mkbrut/ops/base_op.rb
67
+ - lib/mkbrut/ops/copy_file.rb
68
+ - lib/mkbrut/ops/insert_code_in_method.rb
69
+ - lib/mkbrut/ops/insert_route.rb
70
+ - lib/mkbrut/ops/mkdir.rb
71
+ - lib/mkbrut/ops/prism_parsing_op.rb
72
+ - lib/mkbrut/ops/render_template.rb
73
+ - lib/mkbrut/ops/skip_file.rb
74
+ - lib/mkbrut/organization.rb
75
+ - lib/mkbrut/prefix.rb
76
+ - lib/mkbrut/prefixed_io.rb
77
+ - lib/mkbrut/segments.rb
78
+ - lib/mkbrut/segments/bare_bones.rb
79
+ - lib/mkbrut/segments/demo.rb
80
+ - lib/mkbrut/segments/sidekiq.rb
81
+ - lib/mkbrut/version.rb
82
+ - lib/mkbrut/versions.rb
83
+ - templates/Base/Dockerfile.dx
84
+ - templates/Base/Gemfile.erb
85
+ - templates/Base/Procfile.development
86
+ - templates/Base/Procfile.test
87
+ - templates/Base/README.md
88
+ - templates/Base/README.md.erb
89
+ - templates/Base/app/bootstrap.rb
90
+ - templates/Base/app/config/i18n/en/1_defaults.rb
91
+ - templates/Base/app/config/i18n/en/2_app.rb
92
+ - templates/Base/app/public/static/manifest.json.erb
93
+ - templates/Base/app/src/app.rb.erb
94
+ - templates/Base/app/src/back_end/data_models/app_data_model.rb
95
+ - templates/Base/app/src/back_end/data_models/db.rb
96
+ - templates/Base/app/src/back_end/data_models/seed/seed_data.rb
97
+ - templates/Base/app/src/front_end/components/app_component.rb
98
+ - templates/Base/app/src/front_end/components/custom_element_registration.rb.erb
99
+ - templates/Base/app/src/front_end/css/fonts.css
100
+ - templates/Base/app/src/front_end/css/index.css
101
+ - templates/Base/app/src/front_end/css/svgs.css
102
+ - templates/Base/app/src/front_end/fonts/monaspace-xenon.ttf
103
+ - templates/Base/app/src/front_end/forms/app_form.rb
104
+ - templates/Base/app/src/front_end/handlers/app_handler.rb
105
+ - templates/Base/app/src/front_end/images/apple-touch-icon-120x120.png
106
+ - templates/Base/app/src/front_end/images/apple-touch-icon-152x152.png
107
+ - templates/Base/app/src/front_end/images/apple-touch-icon-167x167.png
108
+ - templates/Base/app/src/front_end/images/apple-touch-icon-180x180.png
109
+ - templates/Base/app/src/front_end/images/favicon.ico
110
+ - templates/Base/app/src/front_end/images/icon.png
111
+ - templates/Base/app/src/front_end/images/mkicons.sh
112
+ - templates/Base/app/src/front_end/js/index.js
113
+ - templates/Base/app/src/front_end/layouts/default_layout.rb.erb
114
+ - templates/Base/app/src/front_end/pages/app_page.rb
115
+ - templates/Base/app/src/front_end/pages/home_page.rb.erb
116
+ - templates/Base/app/src/front_end/support/app_session.rb
117
+ - templates/Base/app/src/front_end/svgs/README.md
118
+ - templates/Base/app/src/front_end/svgs/comment-button.svg
119
+ - templates/Base/bin/README.md.erb
120
+ - templates/Base/bin/build-assets
121
+ - templates/Base/bin/ci
122
+ - templates/Base/bin/console
123
+ - templates/Base/bin/db
124
+ - templates/Base/bin/dbconsole
125
+ - templates/Base/bin/dev
126
+ - templates/Base/bin/release
127
+ - templates/Base/bin/run
128
+ - templates/Base/bin/scaffold
129
+ - templates/Base/bin/setup
130
+ - templates/Base/bin/test
131
+ - templates/Base/bin/test-server
132
+ - templates/Base/bin/watch-and-build-assets
133
+ - templates/Base/config.ru
134
+ - templates/Base/docker-compose.dx.yml
135
+ - templates/Base/dx/README.md
136
+ - templates/Base/dx/bash_customizations
137
+ - templates/Base/dx/bash_customizations.local
138
+ - templates/Base/dx/build
139
+ - templates/Base/dx/docker-compose.env.erb
140
+ - templates/Base/dx/dx.sh.lib
141
+ - templates/Base/dx/exec
142
+ - templates/Base/dx/prune
143
+ - templates/Base/dx/show-help-in-app-container-then-wait.sh
144
+ - templates/Base/dx/start
145
+ - templates/Base/dx/stop
146
+ - templates/Base/package.json.erb
147
+ - templates/Base/puma.config.rb
148
+ - templates/Base/specs/e2e/home_page.spec.rb.erb
149
+ - templates/Base/specs/front_end/js/SpecHelper.js
150
+ - templates/Base/specs/front_end/pages/home_page.spec.rb
151
+ - templates/Base/specs/lint_factories.spec.rb
152
+ - templates/Base/specs/spec_helper.rb
153
+ - templates/Base/specs/support.rb
154
+ - templates/segments/BareBones/app/src/front_end/handlers/trigger_exception_handler.rb
155
+ - templates/segments/BareBones/app/src/front_end/js/Example.js.erb
156
+ - templates/segments/BareBones/specs/front_end/handlers/trigger_exception_handler.spec.rb
157
+ - templates/segments/BareBones/specs/front_end/js/Example.spec.js.erb
158
+ - templates/segments/Demo/app/src/back_end/data_models/db/guestbook_message.rb
159
+ - templates/segments/Demo/app/src/back_end/data_models/migrations/20250628194124_guestbook.rb
160
+ - templates/segments/Demo/app/src/front_end/components/flash_component.rb
161
+ - templates/segments/Demo/app/src/front_end/css/constraint-violations.css
162
+ - templates/segments/Demo/app/src/front_end/forms/guestbook_message_form.rb
163
+ - templates/segments/Demo/app/src/front_end/handlers/guestbook_message_handler.rb
164
+ - templates/segments/Demo/app/src/front_end/pages/guestbook_page.rb
165
+ - templates/segments/Demo/app/src/front_end/pages/guestbook_page/message_component.rb
166
+ - templates/segments/Demo/app/src/front_end/pages/new_guestbook_message_page.rb
167
+ - templates/segments/Demo/specs/back_end/data_models/db/guestbook_message.spec.rb
168
+ - templates/segments/Demo/specs/e2e/guest_message.spec.rb
169
+ - templates/segments/Demo/specs/factories/db/guestbook_message.rb
170
+ - templates/segments/Demo/specs/front_end/components/flash_component.spec.rb
171
+ - templates/segments/Demo/specs/front_end/handlers/guestbook_message_handler.spec.rb
172
+ - templates/segments/Demo/specs/front_end/pages/guestbook_page.spec.rb
173
+ - templates/segments/Demo/specs/front_end/pages/guestbook_page/message_component.spec.rb
174
+ - templates/segments/Demo/specs/front_end/pages/new_guestbook_message_page.spec.rb
175
+ homepage: https://brutrb.com
176
+ licenses: []
177
+ metadata: {}
178
+ rdoc_options: []
179
+ require_paths:
180
+ - lib
181
+ required_ruby_version: !ruby/object:Gem::Requirement
182
+ requirements:
183
+ - - ">="
184
+ - !ruby/object:Gem::Version
185
+ version: '0'
186
+ required_rubygems_version: !ruby/object:Gem::Requirement
187
+ requirements:
188
+ - - ">="
189
+ - !ruby/object:Gem::Version
190
+ version: '0'
191
+ requirements: []
192
+ rubygems_version: 3.6.9
193
+ specification_version: 4
194
+ summary: Create a new Brut App
195
+ test_files: []