rails_app_generator 0.2.0 → 0.2.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (224) hide show
  1. checksums.yaml +4 -4
  2. data/.builders/generators/project-plan.rb +6 -3
  3. data/CHANGELOG.md +28 -0
  4. data/after_templates/addons/dotenv/_.rb +21 -0
  5. data/after_templates/addons/dotenv/app/controllers/home_controller.rb +7 -0
  6. data/after_templates/addons/dotenv/app/views/home/index.html.erb +10 -0
  7. data/after_templates/addons/dotenv/app/views/layouts/application.html.erb +19 -0
  8. data/after_templates/addons/rubocop/_.rb +29 -0
  9. data/after_templates/addons/rubocop/app/assets/images/cop-output.png +0 -0
  10. data/after_templates/addons/rubocop/app/controllers/home_controller.rb +21 -0
  11. data/after_templates/addons/rubocop/app/views/home/index.html.erb +46 -0
  12. data/after_templates/addons/rubocop/app/views/layouts/application.html.erb +19 -0
  13. data/after_templates/application/printspeak/_.rb +55 -0
  14. data/after_templates/{rag_tailwind/component-section-begin.html → application/printspeak/app/assets/images/.keep} +0 -0
  15. data/after_templates/application/printspeak/app/assets/images/about/1.jpg +0 -0
  16. data/after_templates/application/printspeak/app/assets/images/about/2.jpg +0 -0
  17. data/after_templates/application/printspeak/app/assets/images/about/3.jpg +0 -0
  18. data/after_templates/application/printspeak/app/assets/images/about/4.jpg +0 -0
  19. data/after_templates/application/printspeak/app/assets/images/close-icon.svg +1 -0
  20. data/after_templates/application/printspeak/app/assets/images/header-bg.jpg +0 -0
  21. data/after_templates/application/printspeak/app/assets/images/logos/facebook.svg +34 -0
  22. data/after_templates/application/printspeak/app/assets/images/logos/google.svg +35 -0
  23. data/after_templates/application/printspeak/app/assets/images/logos/ibm.svg +24 -0
  24. data/after_templates/application/printspeak/app/assets/images/logos/microsoft.svg +42 -0
  25. data/after_templates/application/printspeak/app/assets/images/map-image.png +0 -0
  26. data/after_templates/application/printspeak/app/assets/images/navbar-logo.svg +1 -0
  27. data/after_templates/application/printspeak/app/assets/images/portfolio/1.jpg +0 -0
  28. data/after_templates/application/printspeak/app/assets/images/portfolio/2.jpg +0 -0
  29. data/after_templates/application/printspeak/app/assets/images/portfolio/3.jpg +0 -0
  30. data/after_templates/application/printspeak/app/assets/images/portfolio/4.jpg +0 -0
  31. data/after_templates/application/printspeak/app/assets/images/portfolio/5.jpg +0 -0
  32. data/after_templates/application/printspeak/app/assets/images/portfolio/6.jpg +0 -0
  33. data/after_templates/application/printspeak/app/assets/images/portfolio/alphagraphics.jpeg +0 -0
  34. data/after_templates/application/printspeak/app/assets/images/portfolio/brochure-transformed.jpeg +0 -0
  35. data/after_templates/application/printspeak/app/assets/images/portfolio/brochure.jpeg +0 -0
  36. data/after_templates/application/printspeak/app/assets/images/portfolio/kwikkopy.png +0 -0
  37. data/after_templates/application/printspeak/app/assets/images/portfolio/kwikkopy2.png +0 -0
  38. data/after_templates/application/printspeak/app/assets/images/printspeak-logo.svg +19 -0
  39. data/after_templates/application/printspeak/app/assets/images/team/1.jpg +0 -0
  40. data/after_templates/application/printspeak/app/assets/images/team/2.jpg +0 -0
  41. data/after_templates/application/printspeak/app/assets/images/team/3.jpg +0 -0
  42. data/after_templates/application/printspeak/app/assets/stylesheets/application.bootstrap.scss +3 -0
  43. data/after_templates/application/printspeak/app/assets/stylesheets/home/_global.scss +52 -0
  44. data/after_templates/application/printspeak/app/assets/stylesheets/home/_variables.scss +8 -0
  45. data/after_templates/application/printspeak/app/assets/stylesheets/home/components/_buttons.scss +24 -0
  46. data/after_templates/application/printspeak/app/assets/stylesheets/home/components/_navbar.scss +92 -0
  47. data/after_templates/application/printspeak/app/assets/stylesheets/home/sections/_contact.scss +71 -0
  48. data/after_templates/application/printspeak/app/assets/stylesheets/home/sections/_footer.scss +9 -0
  49. data/after_templates/application/printspeak/app/assets/stylesheets/home/sections/_masthead.scss +52 -0
  50. data/after_templates/application/printspeak/app/assets/stylesheets/home/sections/_portfolio.scss +108 -0
  51. data/after_templates/application/printspeak/app/assets/stylesheets/home/sections/_team.scss +24 -0
  52. data/after_templates/application/printspeak/app/assets/stylesheets/home/sections/_timeline.scss +214 -0
  53. data/after_templates/application/printspeak/app/assets/stylesheets/home/styles.scss +24 -0
  54. data/after_templates/application/printspeak/app/assets/stylesheets/home/variables/_colors.scss +15 -0
  55. data/after_templates/application/printspeak/app/assets/stylesheets/home/variables/_typography.scss +54 -0
  56. data/after_templates/application/printspeak/app/controllers/home_controller.rb +7 -0
  57. data/after_templates/application/printspeak/app/views/home/_modal.erb +23 -0
  58. data/after_templates/application/printspeak/app/views/home/index.html.erb +321 -0
  59. data/after_templates/application/printspeak/app/views/layouts/_alerts.html.erb +2 -0
  60. data/after_templates/application/printspeak/app/views/layouts/_footer.html.erb +16 -0
  61. data/after_templates/application/printspeak/app/views/layouts/_navbar.html.erb +14 -0
  62. data/after_templates/application/printspeak/app/views/layouts/application.html.erb +29 -0
  63. data/after_templates/{rag_printspeak → application/printspeak/app/views}/page/_footer.html.erb +0 -0
  64. data/after_templates/{rag_printspeak → application/printspeak/app/views}/page/architecture.html.erb +0 -0
  65. data/after_templates/{rag_printspeak → application/printspeak/app/views}/page/blog.html.erb +0 -0
  66. data/after_templates/{rag_printspeak → application/printspeak/app/views}/page/faq.html.erb +0 -0
  67. data/after_templates/application/printspeak/app/views/page/page_controller.rb +27 -0
  68. data/after_templates/{rag_printspeak → application/printspeak/app/views}/page/readme.html.erb +0 -0
  69. data/after_templates/application/printspeak/db/seeds.rb +16 -0
  70. data/after_templates/printspeak_bak/_.rb +36 -0
  71. data/after_templates/{rag_printspeak → printspeak_bak}/application_controller.rb +0 -0
  72. data/after_templates/{rag_printspeak → printspeak_bak}/faq.html.erb +0 -0
  73. data/after_templates/{rag_printspeak → printspeak_bak}/layouts/_footer.html.erb +0 -0
  74. data/after_templates/{rag_printspeak → printspeak_bak}/layouts/_head.html.erb +0 -0
  75. data/after_templates/{rag_printspeak → printspeak_bak}/layouts/_navbar.html.erb +0 -0
  76. data/after_templates/{rag_printspeak → printspeak_bak}/layouts/application.html.erb +0 -0
  77. data/after_templates/printspeak_bak/page/_footer.html.erb +184 -0
  78. data/after_templates/printspeak_bak/page/architecture.html.erb +33 -0
  79. data/after_templates/printspeak_bak/page/blog.html.erb +44 -0
  80. data/after_templates/printspeak_bak/page/faq.html.erb +2 -0
  81. data/after_templates/{rag_printspeak → printspeak_bak}/page/home.html.erb +0 -0
  82. data/after_templates/{rag_printspeak → printspeak_bak}/page/page_controller.rb +0 -0
  83. data/after_templates/printspeak_bak/page/readme.html.erb +49 -0
  84. data/after_templates/{rag_bootstrap.rb → rag/bootstrap/_.rb} +1 -1
  85. data/after_templates/{rag_bootstrap → rag/bootstrap}/application-yield.html.erb +0 -0
  86. data/after_templates/{rag_bootstrap → rag/bootstrap}/application.html.erb +0 -0
  87. data/after_templates/{rag_bootstrap → rag/bootstrap}/component-cards-fancy.css +0 -0
  88. data/after_templates/{rag_bootstrap → rag/bootstrap}/component-cards-fancy.html +0 -0
  89. data/after_templates/{rag_bootstrap → rag/bootstrap}/component-cards-staff.css +0 -0
  90. data/after_templates/{rag_bootstrap → rag/bootstrap}/component-cards-staff.html +0 -0
  91. data/after_templates/{rag_bootstrap → rag/bootstrap}/component-cards-styled.html +0 -0
  92. data/after_templates/{rag_bootstrap → rag/bootstrap}/component-footer.html +0 -0
  93. data/after_templates/{rag_bootstrap → rag/bootstrap}/component-hero.html +0 -0
  94. data/after_templates/{rag_bootstrap → rag/bootstrap}/component-modal.html +0 -0
  95. data/after_templates/{rag_bootstrap → rag/bootstrap}/component-nav.html +0 -0
  96. data/after_templates/{rag_bootstrap → rag/bootstrap}/custom-bootstrap-import.scss +0 -0
  97. data/after_templates/{rag_bootstrap → rag/bootstrap}/custom-using-css.css +0 -0
  98. data/after_templates/{rag_bootstrap → rag/bootstrap}/custom-using-scss.scss +0 -0
  99. data/after_templates/{rag_bootstrap → rag/bootstrap}/manifest.js +0 -0
  100. data/after_templates/{rag_devise.rb → rag/devise/_.rb} +1 -1
  101. data/after_templates/{rag_devise → rag/devise}/application.html.erb +0 -0
  102. data/after_templates/{rag_devise → rag/devise}/application_controller.rb +0 -0
  103. data/after_templates/{rag_devise → rag/devise}/config/initializers/devise_turbo.rb +0 -0
  104. data/after_templates/{rag_devise → rag/devise}/layouts/_alerts.html.erb +0 -0
  105. data/after_templates/{rag_devise → rag/devise}/layouts/_footer.html.erb +0 -0
  106. data/after_templates/{rag_devise → rag/devise}/layouts/_navbar.html.erb +0 -0
  107. data/after_templates/{rag_devise → rag/devise}/layouts/application.html.erb +0 -0
  108. data/after_templates/{rag_devise → rag/devise}/post/_post.html.erb +0 -0
  109. data/after_templates/{rag_devise → rag/devise}/post/post.rb +0 -0
  110. data/after_templates/{rag_devise → rag/devise}/post/posts_controller.rb +0 -0
  111. data/after_templates/{rag_devise → rag/devise}/seed_data.rb +0 -0
  112. data/after_templates/{rag_devise → rag/devise}/turbo_controller.rb +0 -0
  113. data/after_templates/{rag_devise → rag/devise}/user.rb +0 -0
  114. data/after_templates/{rag_import_map.rb → rag/import_map/_.rb} +1 -1
  115. data/after_templates/{rag_import_map → rag/import_map}/component-sortable.html +0 -0
  116. data/after_templates/{rag_import_map → rag/import_map}/home.css +0 -0
  117. data/after_templates/{rag_import_map → rag/import_map}/position_controller.js +0 -0
  118. data/after_templates/{rag_simple.rb → rag/simple/_.rb} +1 -1
  119. data/after_templates/{rag_tailwind.rb → rag/tailwind/_.rb} +1 -1
  120. data/after_templates/{rag_tailwind → rag/tailwind}/component-cta.html +0 -0
  121. data/after_templates/{rag_tailwind → rag/tailwind}/component-faq.html +0 -0
  122. data/after_templates/{rag_tailwind → rag/tailwind}/component-footer.html +0 -0
  123. data/after_templates/{rag_tailwind → rag/tailwind}/component-hero.html +0 -0
  124. data/after_templates/{rag_tailwind → rag/tailwind}/component-nav.html +0 -0
  125. data/after_templates/{rag_tailwind/component-section-end.html → rag/tailwind/component-section-begin.html} +0 -0
  126. data/after_templates/{rag_tailwind_emulating_bootstrap/home/index.html.erb → rag/tailwind/component-section-end.html} +0 -0
  127. data/after_templates/{rag_tailwind_daisyui.rb → rag/tailwind_daisyui/_.rb} +1 -1
  128. data/after_templates/{rag_tailwind_daisyui → rag/tailwind_daisyui}/index.html.erb +0 -0
  129. data/after_templates/{rag_tailwind_emulating_bootstrap → rag/tailwind_emulating_bootstrap}/Procfile.dev +0 -0
  130. data/after_templates/{rag_tailwind_emulating_bootstrap.rb → rag/tailwind_emulating_bootstrap/_.rb} +1 -1
  131. data/after_templates/{rag_tailwind_emulating_bootstrap → rag/tailwind_emulating_bootstrap}/application.html.erb +0 -0
  132. data/after_templates/{rag_tailwind_emulating_bootstrap → rag/tailwind_emulating_bootstrap}/application.tailwind.css +0 -0
  133. data/after_templates/{rag_tailwind_emulating_bootstrap → rag/tailwind_emulating_bootstrap}/application_controller.rb +0 -0
  134. data/after_templates/{rag_tailwind_emulating_bootstrap → rag/tailwind_emulating_bootstrap}/home/_example.html.erb +0 -0
  135. data/after_templates/{rag_tailwind_emulating_bootstrap → rag/tailwind_emulating_bootstrap}/home/bootstrap.html.erb +0 -0
  136. data/after_templates/{rag_tailwind_emulating_bootstrap → rag/tailwind_emulating_bootstrap}/home/home_controller.rb +0 -0
  137. data/after_templates/rag/tailwind_emulating_bootstrap/home/index.html.erb +0 -0
  138. data/after_templates/{rag_tailwind_emulating_bootstrap → rag/tailwind_emulating_bootstrap}/home/tailwind.html.erb +0 -0
  139. data/after_templates/{rag_tailwind_hotwire.rb → rag/tailwind_hotwire/_.rb} +1 -1
  140. data/after_templates/{rag_tailwind_hotwire → rag/tailwind_hotwire}/home/controller.rb +0 -0
  141. data/after_templates/{rag_tailwind_hotwire → rag/tailwind_hotwire}/home/helper.rb +0 -0
  142. data/after_templates/{rag_tailwind_hotwire → rag/tailwind_hotwire}/home/increment.html.erb +0 -0
  143. data/after_templates/{rag_tailwind_hotwire → rag/tailwind_hotwire}/home/index.html +0 -0
  144. data/after_templates/{rag_tailwind_hotwire_flash.rb → rag/tailwind_hotwire_flash/_.rb} +1 -1
  145. data/after_templates/{rag_tailwind_hotwire_form.rb → rag/tailwind_hotwire_form/_.rb} +1 -1
  146. data/after_templates/{rag_tailwind_hotwire_form → rag/tailwind_hotwire_form}/_contact.html.erb +0 -0
  147. data/after_templates/{rag_tailwind_hotwire_form → rag/tailwind_hotwire_form}/_count.html.erb +0 -0
  148. data/after_templates/{rag_tailwind_hotwire_form → rag/tailwind_hotwire_form}/_flash.html.erb +0 -0
  149. data/after_templates/{rag_tailwind_hotwire_form → rag/tailwind_hotwire_form}/_form.html.erb +0 -0
  150. data/after_templates/{rag_tailwind_hotwire_form → rag/tailwind_hotwire_form}/_list.html.erb +0 -0
  151. data/after_templates/{rag_tailwind_hotwire_form → rag/tailwind_hotwire_form}/application.html.erb +0 -0
  152. data/after_templates/{rag_tailwind_hotwire_form → rag/tailwind_hotwire_form}/application.js +0 -0
  153. data/after_templates/{rag_tailwind_hotwire_form → rag/tailwind_hotwire_form}/application.tailwind.css +0 -0
  154. data/after_templates/{rag_tailwind_hotwire_form → rag/tailwind_hotwire_form}/application_helper.rb +0 -0
  155. data/after_templates/{rag_tailwind_hotwire_form → rag/tailwind_hotwire_form}/contact.rb +0 -0
  156. data/after_templates/{rag_tailwind_hotwire_form → rag/tailwind_hotwire_form}/contacts_controller.rb +0 -0
  157. data/after_templates/{rag_tailwind_hotwire_form → rag/tailwind_hotwire_form}/create.turbo_stream.erb +0 -0
  158. data/after_templates/{rag_tailwind_hotwire_form → rag/tailwind_hotwire_form}/edit.html.erb +0 -0
  159. data/after_templates/{rag_tailwind_hotwire_form → rag/tailwind_hotwire_form}/index.html.erb +0 -0
  160. data/after_templates/{rag_tailwind_hotwire_form → rag/tailwind_hotwire_form}/new.html.erb +0 -0
  161. data/after_templates/{rag_tailwind_hotwire_form → rag/tailwind_hotwire_form}/show.html.erb +0 -0
  162. data/after_templates/{rag_tailwind_hotwire_form → rag/tailwind_hotwire_form}/update.turbo_stream.erb +0 -0
  163. data/after_templates/{rag_tailwind_hotwire_form_search.rb → rag/tailwind_hotwire_form_search/_.rb} +1 -3
  164. data/after_templates/{rag_tailwind_hotwire_form_search → rag/tailwind_hotwire_form_search}/_contact.html.erb +0 -0
  165. data/after_templates/{rag_tailwind_hotwire_form_search → rag/tailwind_hotwire_form_search}/_count.html.erb +0 -0
  166. data/after_templates/{rag_tailwind_hotwire_form_search → rag/tailwind_hotwire_form_search}/_flash.html.erb +0 -0
  167. data/after_templates/{rag_tailwind_hotwire_form_search → rag/tailwind_hotwire_form_search}/_form.html.erb +0 -0
  168. data/after_templates/{rag_tailwind_hotwire_form_search → rag/tailwind_hotwire_form_search}/_list.html.erb +0 -0
  169. data/after_templates/{rag_tailwind_hotwire_form_search → rag/tailwind_hotwire_form_search}/_theme_changer.html.erb +0 -0
  170. data/after_templates/{rag_tailwind_hotwire_form_search → rag/tailwind_hotwire_form_search}/application.html.erb +0 -0
  171. data/after_templates/{rag_tailwind_hotwire_form_search → rag/tailwind_hotwire_form_search}/application.js +0 -0
  172. data/after_templates/{rag_tailwind_hotwire_form_search → rag/tailwind_hotwire_form_search}/application.tailwind.css +0 -0
  173. data/after_templates/{rag_tailwind_hotwire_form_search → rag/tailwind_hotwire_form_search}/application_helper.rb +0 -0
  174. data/after_templates/{rag_tailwind_hotwire_form_search → rag/tailwind_hotwire_form_search}/contact.rb +0 -0
  175. data/after_templates/{rag_tailwind_hotwire_form_search → rag/tailwind_hotwire_form_search}/contacts_controller.rb +0 -0
  176. data/after_templates/{rag_tailwind_hotwire_form_search → rag/tailwind_hotwire_form_search}/create.turbo_stream.erb +0 -0
  177. data/after_templates/{rag_tailwind_hotwire_form_search → rag/tailwind_hotwire_form_search}/edit.html.erb +0 -0
  178. data/after_templates/{rag_tailwind_hotwire_form_search → rag/tailwind_hotwire_form_search}/index.html.erb +0 -0
  179. data/after_templates/{rag_tailwind_hotwire_form_search → rag/tailwind_hotwire_form_search}/new.html.erb +0 -0
  180. data/after_templates/{rag_tailwind_hotwire_form_search → rag/tailwind_hotwire_form_search}/search_controller.js +0 -0
  181. data/after_templates/{rag_tailwind_hotwire_form_search → rag/tailwind_hotwire_form_search}/show.html.erb +0 -0
  182. data/after_templates/{rag_tailwind_hotwire_form_search → rag/tailwind_hotwire_form_search}/theme_changer_controller.js +0 -0
  183. data/after_templates/{rag_tailwind_hotwire_form_search → rag/tailwind_hotwire_form_search}/update.turbo_stream.erb +0 -0
  184. data/docs/last_run/app_generator_class.json +40 -0
  185. data/docs/last_run/app_generator_data.json +8 -2
  186. data/docs/last_run/rails_options_class.json +40 -0
  187. data/docs/last_run/rails_options_data.json +8 -2
  188. data/docs/project-plan/project.drawio +49 -46
  189. data/docs/project-plan/project_todo.svg +1 -1
  190. data/lib/rails_app_generator/addons/annotate.rb +0 -3
  191. data/lib/rails_app_generator/addons/continuous_integration.rb +1 -0
  192. data/lib/rails_app_generator/addons/devise.rb +1 -0
  193. data/lib/rails_app_generator/addons/docker_compose.rb +1 -0
  194. data/lib/rails_app_generator/addons/dotenv.rb +2 -0
  195. data/lib/rails_app_generator/addons/factory_bot.rb +1 -0
  196. data/lib/rails_app_generator/addons/foreman.rb +1 -0
  197. data/lib/rails_app_generator/addons/rubocop.rb +4 -0
  198. data/lib/rails_app_generator/app_generator.rb +0 -5
  199. data/lib/rails_app_generator/rag_initializer.rb +77 -75
  200. data/lib/rails_app_generator/version.rb +1 -1
  201. data/package-lock.json +2 -2
  202. data/package.json +1 -1
  203. data/profiles/addons/dotenv.json +12 -0
  204. data/profiles/addons/rubocop.json +12 -0
  205. data/profiles/{rag-printspeak.json → application/printspeak.json} +4 -2
  206. data/profiles/{rag-bootstrap.json → rag/bootstrap.json} +1 -1
  207. data/profiles/{rag-devise.json → rag/devise.json} +1 -1
  208. data/profiles/{rag-import-map.json → rag/import-map.json} +1 -1
  209. data/profiles/{rag-simple.json → rag/simple.json} +3 -2
  210. data/profiles/{rag-tailwind-daisyui.json → rag/tailwind-daisyui.json} +1 -1
  211. data/profiles/{rag-tailwind-emulating-bootstrap.json → rag/tailwind-emulating-bootstrap.json} +2 -3
  212. data/profiles/{rag-tailwind-hotwire-flash.json → rag/tailwind-hotwire-flash.json} +1 -1
  213. data/profiles/{rag-tailwind-hotwire-form-search.json → rag/tailwind-hotwire-form-search.json} +1 -1
  214. data/profiles/{rag-tailwind-hotwire-form.json → rag/tailwind-hotwire-form.json} +1 -1
  215. data/profiles/{rag-tailwind-hotwire.json → rag/tailwind-hotwire.json} +1 -1
  216. data/profiles/{rag-tailwind.json → rag/tailwind.json} +3 -2
  217. data/tasks/profile.thor +1 -1
  218. data/templates/addons/rubocop/.rubocop.yml.erb +5 -2
  219. data/templates/thor_task/addon/addon.tt +1 -1
  220. data/templates/thor_task/profile/after_template.rb +1 -0
  221. metadata +196 -130
  222. data/after_templates/rag_printspeak.rb +0 -36
  223. data/profiles/rag-add-some-pages.json +0 -11
  224. data/profiles/rag-sample.json +0 -13
@@ -9,6 +9,7 @@ module RailsAppGenerator
9
9
 
10
10
  required_gem gem.version('devise', '4.8.1', 'Flexible authentication solution for Rails with Warden')
11
11
 
12
+ # Requires Testing
12
13
  def apply
13
14
  generate('devise:install', capture: true)
14
15
  generate(:devise, 'User', 'name', 'admin:boolean', capture: true)
@@ -5,6 +5,7 @@ module RailsAppGenerator
5
5
  module AddOns
6
6
  # Add Docker Compose to rails application
7
7
  class DockerCompose < RailsAppGenerator::Addon
8
+ # Requires Testing
8
9
  def apply
9
10
  template 'docker-compose.yml.erb', 'docker-compose.yml'
10
11
  end
@@ -5,6 +5,8 @@ module RailsAppGenerator
5
5
  module AddOns
6
6
  # Add DotEnv to rails application
7
7
  class Dotenv < RailsAppGenerator::Addon
8
+ required_gem gem.version('dotenv-rails', '2.8.1', 'Loads environment variables from `.env`.')
9
+
8
10
  def apply
9
11
  template '.env.development.erb', '.env.development'
10
12
  end
@@ -7,6 +7,7 @@ module RailsAppGenerator
7
7
  class FactoryBot < RailsAppGenerator::Addon
8
8
  depends_on :active_record, :test
9
9
 
10
+ # Requires Testing
10
11
  def apply
11
12
  # TODO: Make this work for minitest
12
13
  return unless uses?(:factory_bot)
@@ -5,6 +5,7 @@ module RailsAppGenerator
5
5
  module AddOns
6
6
  # Add Foreman process management for applications with multiple components
7
7
  class Foreman < RailsAppGenerator::Addon
8
+ # Requires Testing
8
9
  def apply
9
10
  template '.foreman.erb', '.foreman'
10
11
  template 'Procfile.erb', 'Procfile'
@@ -5,6 +5,10 @@ module RailsAppGenerator
5
5
  module AddOns
6
6
  # Add Rubocop to rails application
7
7
  class Rubocop < RailsAppGenerator::Addon
8
+ # required_gem gem.version('rubocop', '1.34.0', 'RuboCop is a Ruby code style checking and code formatting tool.')
9
+ # TODO: This needs to go into the development group
10
+ required_gem gem.version('rubocop-rails', '2.15.2', 'NOTE: MOVE TO DEVELOPMENT GROUP: RuboCop linter with focused on enforcing Rails best practices and coding conventions.')
11
+
8
12
  def apply
9
13
  template '.rubocop.yml.erb', '.rubocop.yml'
10
14
  end
@@ -213,11 +213,6 @@ module RailsAppGenerator
213
213
 
214
214
  # https://codingpackets.com/blog/rails-generators-cheat-sheet/
215
215
 
216
- # OLD style will be removed soon
217
- def local_template_base(xxx)
218
- File.join(File.dirname(xxx), File.basename(xxx, '.*'))
219
- end
220
-
221
216
  # force_copy? # defaults to false
222
217
  # force_copy(true) # set to true
223
218
  # force_copy(false) # set to false
@@ -3,13 +3,14 @@
3
3
  # frozen__tring_literal: true
4
4
 
5
5
  KConfig.configure do |config|
6
+ rag = config.rag
6
7
  # https://railsbytes.com/public/templates
7
8
  # http://www.railscomposer.com/
8
9
  # https://github.com/RailsApps/rails-composer
9
10
  # https://github.com/carbonfive/raygun-rails
10
11
  # https://github.com/abhaynikam/boring_generators
11
12
 
12
- # config.rag.add_option :test , type: :string , default: 'rspec'
13
+ # rag.add_option :test , type: :string , default: 'rspec'
13
14
 
14
15
  # # Gem Current Latest Requested Groups
15
16
  # # aws-sdk
@@ -127,47 +128,48 @@ KConfig.configure do |config|
127
128
  # # webmock 3.13.0 3.14.0 = 3.13.0 development, test
128
129
  # # websocket-driver 0.6.5 0.7.5
129
130
 
130
- # config.rag.add_option :skip_namespace , type: :boolean , default: false , description: "Skip namespace (affects only isolated engines)"
131
- # config.rag.add_option :skip_collision_check , type: :boolean , default: false , description: "Skip collision check"
132
- config.rag.add_option :force , type: :boolean , default: nil , description: 'Overwrite files that already exist'
133
- # XXX config.rag.add_option :pretend , type: :boolean , default: nil , description: "Run but do not make any changes"
134
- # XXX config.rag.add_option :quiet , type: :boolean , default: nil , description: "Suppress status output"
135
- # XXX config.rag.add_option :skip , type: :boolean , default: nil , description: "Skip files that already exist"
136
- # config.rag.add_option :ruby , type: :string , default: "/Users/davidcruwys/.asdf/installs/ruby/2.7.6/bin/ruby" , description: "Path to the Ruby binary of your choice"
137
- # XXX config.rag.add_option :template , type: :string , default: nil , description: "Path to some application template (can be a filesystem path or URL)"
138
- # config.rag.add_option :database , type: :string , default: "sqlite3" , description: "Preconfigure for selected database (options: mysql/postgresql/sqlite3/oracle/sqlserver/jdbcmysql/jdbcsqlite3/jdbcpostgresql/jdbc)"
139
- # config.rag.add_option :skip_git , type: :boolean , default: false , description: "Skip .gitignore file"
140
- # config.rag.add_option :skip_keeps , type: :boolean , default: false , description: "Skip source control .keep files"
141
- # config.rag.add_option :skip_action_mailer , type: :boolean , default: false , description: "Skip Action Mailer files"
142
- # config.rag.add_option :skip_action_mailbox , type: :boolean , default: false , description: "Skip Action Mailbox gem"
143
- # config.rag.add_option :skip_action_text , type: :boolean , default: false , description: "Skip Action Text gem"
144
- # config.rag.add_option :skip_active_record , type: :boolean , default: false , description: "Skip Active Record files"
145
- # config.rag.add_option :skip_active_job , type: :boolean , default: false , description: "Skip Active Job"
146
- # config.rag.add_option :skip_active_storage , type: :boolean , default: false , description: "Skip Active Storage files"
147
- # config.rag.add_option :skip_action_cable , type: :boolean , default: false , description: "Skip Action Cable files"
148
- # config.rag.add_option :skip_asset_pipeline , type: :boolean , default: false , description: "Indicates when to generate skip asset pipeline"
149
- # config.rag.add_option :asset_pipeline , type: :string , default: "sprockets" , description: "Choose your asset pipeline [options: sprockets (default), propshaft]"
150
- # config.rag.add_option :skip_javascript , type: :boolean , default: false , description: "Skip JavaScript files"
151
- # config.rag.add_option :skip_hotwire , type: :boolean , default: false , description: "Skip Hotwire integration"
152
- # config.rag.add_option :skip_jbuilder , type: :boolean , default: false , description: "Skip jbuilder gem"
153
- # config.rag.add_option :skip_test , type: :boolean , default: false , description: "Skip test files"
154
- # config.rag.add_option :skip_system_test , type: :boolean , default: false , description: "Skip system test files"
155
- # config.rag.add_option :skip_bootsnap , type: :boolean , default: false , description: "Skip bootsnap gem"
156
- # config.rag.add_option :dev , type: :boolean , default: false , description: "Set up the application with Gemfile pointing to your Rails checkout"
157
- # config.rag.add_option :edge , type: :boolean , default: false , description: "Set up the application with Gemfile pointing to Rails repository"
158
- # config.rag.add_option :main , type: :boolean , default: false , description: "Set up the application with Gemfile pointing to Rails repository main branch"
159
- # config.rag.add_option :rc , type: :string , default: nil , description: "Path to file containing extra configuration options for rails command"
160
- # config.rag.add_option :no_rc , type: :boolean , default: false , description: "Skip loading of extra configuration options from .railsrc file"
161
- # config.rag.add_option :help , type: :boolean , default: nil , description: "Show this help message and quit"
162
- # config.rag.add_option :version , type: :boolean , default: nil , description: "Show Rails version number and quit"
163
- # config.rag.add_option :api , type: :boolean , default: false , description: "Preconfigure smaller stack for API only apps"
164
- # config.rag.add_option :minimal , type: :boolean , default: nil , description: "Preconfigure a minimal rails app"
165
- # config.rag.add_option :javascript , type: :string , default: "importmap" , description: "Choose JavaScript approach [options: importmap (default), webpack, esbuild, rollup]"
166
- # config.rag.add_option :css , type: :string , default: nil , description: "Choose CSS processor [options: tailwind, bootstrap, bulma, postcss, sass... check https://github.com/rails/cssbundling-rails]"
167
- # config.rag.add_option :skip_bundle , type: :boolean , default: false , description: "Don't run bundle install"
131
+ # rag.add_option :skip_namespace , type: :boolean , default: false , description: "Skip namespace (affects only isolated engines)"
132
+ # rag.add_option :skip_collision_check , type: :boolean , default: false , description: "Skip collision check"
133
+ rag.add_option :force , type: :boolean , default: nil , description: 'Overwrite files that already exist'
134
+ # XXX rag.add_option :pretend , type: :boolean , default: nil , description: "Run but do not make any changes"
135
+ # XXX rag.add_option :quiet , type: :boolean , default: nil , description: "Suppress status output"
136
+ # XXX rag.add_option :skip , type: :boolean , default: nil , description: "Skip files that already exist"
137
+ # rag.add_option :ruby , type: :string , default: "/Users/davidcruwys/.asdf/installs/ruby/2.7.6/bin/ruby" , description: "Path to the Ruby binary of your choice"
138
+ # XXX rag.add_option :template , type: :string , default: nil , description: "Path to some application template (can be a filesystem path or URL)"
139
+ # rag.add_option :database , type: :string , default: "sqlite3" , description: "Preconfigure for selected database (options: mysql/postgresql/sqlite3/oracle/sqlserver/jdbcmysql/jdbcsqlite3/jdbcpostgresql/jdbc)"
140
+ # rag.add_option :skip_git , type: :boolean , default: false , description: "Skip .gitignore file"
141
+ # rag.add_option :skip_keeps , type: :boolean , default: false , description: "Skip source control .keep files"
142
+ # rag.add_option :skip_action_mailer , type: :boolean , default: false , description: "Skip Action Mailer files"
143
+ # rag.add_option :skip_action_mailbox , type: :boolean , default: false , description: "Skip Action Mailbox gem"
144
+ # rag.add_option :skip_action_text , type: :boolean , default: false , description: "Skip Action Text gem"
145
+ # rag.add_option :skip_active_record , type: :boolean , default: false , description: "Skip Active Record files"
146
+ # rag.add_option :skip_active_job , type: :boolean , default: false , description: "Skip Active Job"
147
+ # rag.add_option :skip_active_storage , type: :boolean , default: false , description: "Skip Active Storage files"
148
+ # rag.add_option :skip_action_cable , type: :boolean , default: false , description: "Skip Action Cable files"
149
+ # rag.add_option :skip_asset_pipeline , type: :boolean , default: false , description: "Indicates when to generate skip asset pipeline"
150
+ # rag.add_option :asset_pipeline , type: :string , default: "sprockets" , description: "Choose your asset pipeline [options: sprockets (default), propshaft]"
151
+ # rag.add_option :skip_javascript , type: :boolean , default: false , description: "Skip JavaScript files"
152
+ # rag.add_option :skip_hotwire , type: :boolean , default: false , description: "Skip Hotwire integration"
153
+ # rag.add_option :skip_jbuilder , type: :boolean , default: false , description: "Skip jbuilder gem"
154
+ # rag.add_option :skip_test , type: :boolean , default: false , description: "Skip test files"
155
+ # rag.add_option :skip_system_test , type: :boolean , default: false , description: "Skip system test files"
156
+ # rag.add_option :skip_bootsnap , type: :boolean , default: false , description: "Skip bootsnap gem"
157
+ # rag.add_option :dev , type: :boolean , default: false , description: "Set up the application with Gemfile pointing to your Rails checkout"
158
+ # rag.add_option :edge , type: :boolean , default: false , description: "Set up the application with Gemfile pointing to Rails repository"
159
+ rag.add_option :note , type: :string , default: nil , description: "Set a note or comment"
160
+ # rag.add_option :main , type: :boolean , default: false , description: "Set up the application with Gemfile pointing to Rails repository main branch"
161
+ # rag.add_option :rc , type: :string , default: nil , description: "Path to file containing extra configuration options for rails command"
162
+ # rag.add_option :no_rc , type: :boolean , default: false , description: "Skip loading of extra configuration options from .railsrc file"
163
+ # rag.add_option :help , type: :boolean , default: nil , description: "Show this help message and quit"
164
+ # rag.add_option :version , type: :boolean , default: nil , description: "Show Rails version number and quit"
165
+ # rag.add_option :api , type: :boolean , default: false , description: "Preconfigure smaller stack for API only apps"
166
+ # rag.add_option :minimal , type: :boolean , default: nil , description: "Preconfigure a minimal rails app"
167
+ # rag.add_option :javascript , type: :string , default: "importmap" , description: "Choose JavaScript approach [options: importmap (default), webpack, esbuild, rollup]"
168
+ # rag.add_option :css , type: :string , default: nil , description: "Choose CSS processor [options: tailwind, bootstrap, bulma, postcss, sass... check https://github.com/rails/cssbundling-rails]"
169
+ # rag.add_option :skip_bundle , type: :boolean , default: false , description: "Don't run bundle install"
168
170
 
169
171
  # future_option :database , type: :string , default: 'sqlite3' # , description: "Preconfigure for selected database (options: #{DATABASES.join('/')})"
170
- # config.rag.add_option :skip_git , type: :boolean, default: false # , description: "Skip .gitignore file"
172
+ # rag.add_option :skip_git , type: :boolean, default: false # , description: "Skip .gitignore file"
171
173
  # future_option :skip_keeps , type: :boolean, default: false # , description: "Skip source control .keep files"
172
174
  # future_option :skip_action_mailer , type: :boolean, default: false # , description: "Skip Action Mailer files"
173
175
  # future_option :skip_action_mailbox , type: :boolean, default: false # , description: "Skip Action Mailbox gem"
@@ -181,8 +183,8 @@ KConfig.configure do |config|
181
183
  # future_option :skip_javascript , type: :boolean, default: false # name == 'plugin' # , description: "Skip JavaScript files"
182
184
  # future_option :skip_hotwire , type: :boolean, default: false # , description: "Skip Hotwire integration"
183
185
  # future_option :skip_jbuilder , type: :boolean, default: false # , description: "Skip jbuilder gem"
184
- # config.rag.add_option :skip_test , type: :boolean, default: false # , description: "Skip test files"
185
- config.rag.add_option :test , type: :string , default: 'rspec' # , description: "minitest or rspec (default: rspec)"
186
+ # rag.add_option :skip_test , type: :boolean, default: false # , description: "Skip test files"
187
+ rag.add_option :test , type: :string , default: 'rspec' # , description: "minitest or rspec (default: rspec)"
186
188
  # future_option :skip_system_test , type: :boolean, default: false # , description: "Skip system test files"
187
189
  # future_option :skip_bootsnap , type: :boolean, default: false # , description: "Skip bootsnap gem"
188
190
  # future_option :dev , type: :boolean, default: false # , description: "Set up the #{name} with Gemfile pointing to your Rails checkout"
@@ -195,42 +197,42 @@ KConfig.configure do |config|
195
197
  # future_option :api , type: :boolean # , description: "Preconfigure smaller stack for API only apps"
196
198
  # future_option :minimal , type: :boolean # , description: "Preconfigure a minimal rails app"
197
199
  # future_option :javascript , type: :string , default: 'importmap' # , description: "Choose JavaScript approach [options: importmap (default), webpack, esbuild, rollup]"
198
- # config.rag.add_option :css , type: :string , description: "Choose CSS processor [options: tailwind, bootstrap, bulma, postcss, sass... check https://github.com/rails/cssbundling-rails]"
199
- # config.rag.add_option :skip_bundle , type: :boolean, default: false , description: "Don't run bundle install"
200
+ # rag.add_option :css , type: :string , description: "Choose CSS processor [options: tailwind, bootstrap, bulma, postcss, sass... check https://github.com/rails/cssbundling-rails]"
201
+ # rag.add_option :skip_bundle , type: :boolean, default: false , description: "Don't run bundle install"
200
202
 
201
- # config.rag.add_option :add_irbrc , type: :boolean, default: false
202
- # config.rag.add_option :add_foreman , type: :boolean, default: false
203
- # config.rag.add_option :add_devise , type: :boolean, default: false
204
- # config.rag.add_option :add_dotenv , type: :boolean, default: false
205
- # config.rag.add_option :add_docker , type: :boolean, default: false
206
- # config.rag.add_option :add_docker_compose , type: :boolean, default: false
207
- # config.rag.add_option :add_rubocop , type: :boolean, default: false
208
- # config.rag.add_option :add_annotate , type: :boolean, default: false
209
- # config.rag.add_option :add_continuous_integration , type: :boolean, default: false
210
- # config.rag.add_option :add_high_voltage , type: :boolean, default: false
211
- # config.rag.add_option :add_generators , type: :boolean, default: false
212
- # config.rag.add_option :add_lograge , type: :boolean, default: false
213
- # config.rag.add_option :add_pundit , type: :boolean, default: false
214
- # config.rag.add_option :add_services , type: :boolean, default: false
215
- # config.rag.add_option :add_sidekiq , type: :boolean, default: false
216
- # config.rag.add_option :add_views , type: :boolean, default: false
217
- # config.rag.add_option :add_errors , type: :boolean, default: false
218
- # config.rag.add_option :add_scaffold , type: :boolean, default: false
219
- # config.rag.add_option :add_factory_bot , type: :boolean, default: false
220
- # config.rag.add_option :add_shoulda , type: :boolean, default: false
203
+ # rag.add_option :add_irbrc , type: :boolean, default: false
204
+ # rag.add_option :add_foreman , type: :boolean, default: false
205
+ rag.add_option :add_devise , type: :boolean, default: false
206
+ rag.add_option :add_dotenv , type: :boolean, default: false
207
+ # rag.add_option :add_docker , type: :boolean, default: false
208
+ # rag.add_option :add_docker_compose , type: :boolean, default: false
209
+ rag.add_option :add_rubocop , type: :boolean, default: false
210
+ rag.add_option :add_annotate , type: :boolean, default: false
211
+ # rag.add_option :add_continuous_integration , type: :boolean, default: false
212
+ # rag.add_option :add_high_voltage , type: :boolean, default: false
213
+ # rag.add_option :add_generators , type: :boolean, default: false
214
+ # rag.add_option :add_lograge , type: :boolean, default: false
215
+ # rag.add_option :add_pundit , type: :boolean, default: false
216
+ # rag.add_option :add_services , type: :boolean, default: false
217
+ # rag.add_option :add_sidekiq , type: :boolean, default: false
218
+ # rag.add_option :add_views , type: :boolean, default: false
219
+ # rag.add_option :add_errors , type: :boolean, default: false
220
+ # rag.add_option :add_scaffold , type: :boolean, default: false
221
+ # rag.add_option :add_factory_bot , type: :boolean, default: false
222
+ # rag.add_option :add_shoulda , type: :boolean, default: false
221
223
 
222
224
  # NEW GEM ADDONS
223
- config.rag.add_option :add_acts_as_list , type: :boolean, default: false
224
- config.rag.add_option :add_browser , type: :boolean, default: false
225
- config.rag.add_option :add_chartkick , type: :boolean, default: false
226
- config.rag.add_option :add_faker , type: :boolean, default: false
227
- config.rag.add_option :add_groupdate , type: :boolean, default: false
228
- config.rag.add_option :add_hexapdf , type: :boolean, default: false
229
- config.rag.add_option :add_httparty , type: :boolean, default: false
230
- config.rag.add_option :add_honeybadger , type: :boolean, default: false
231
- config.rag.add_option :add_mini_magick , type: :boolean, default: false , description: 'Add Mini Magick gem'
232
- config.rag.add_option :add_rails_html_sanitizer , type: :boolean, default: false
233
- config.rag.add_option :add_twilio_ruby , type: :boolean, default: false
225
+ rag.add_option :add_acts_as_list , type: :boolean, default: false
226
+ rag.add_option :add_browser , type: :boolean, default: false
227
+ rag.add_option :add_chartkick , type: :boolean, default: false
228
+ rag.add_option :add_faker , type: :boolean, default: false
229
+ rag.add_option :add_groupdate , type: :boolean, default: false
230
+ rag.add_option :add_hexapdf , type: :boolean, default: false
231
+ rag.add_option :add_httparty , type: :boolean, default: false
232
+ rag.add_option :add_honeybadger , type: :boolean, default: false
233
+ rag.add_option :add_mini_magick , type: :boolean, default: false , description: 'Add Mini Magick gem'
234
+ rag.add_option :add_rails_html_sanitizer , type: :boolean, default: false
235
+ rag.add_option :add_twilio_ruby , type: :boolean, default: false
234
236
  end
235
237
 
236
238
  # Make sure that RailsOptions reflect the options available from Railties
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module RailsAppGenerator
4
- VERSION = '0.2.0'
4
+ VERSION = '0.2.3'
5
5
  end
data/package-lock.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "rails_app_generator",
3
- "version": "0.2.0",
3
+ "version": "0.2.3",
4
4
  "lockfileVersion": 2,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "rails_app_generator",
9
- "version": "0.2.0",
9
+ "version": "0.2.3",
10
10
  "dependencies": {
11
11
  "daisyui": "^2.20.0"
12
12
  },
data/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rails_app_generator",
3
- "version": "0.2.0",
3
+ "version": "0.2.3",
4
4
  "description": "Create new Rails Application with custom opinions",
5
5
  "scripts": {
6
6
  "release": "semantic-release"
@@ -0,0 +1,12 @@
1
+ {
2
+ "args": {
3
+ "app_path": "dotenv",
4
+ "destination_root": "/Users/davidcruwys/dev/kgems/rails_app_generator/a/addons"
5
+ },
6
+ "opts": {
7
+ "skip_git": true,
8
+ "skip_test": true,
9
+ "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/addons/dotenv/_.rb",
10
+ "add_dotenv": true
11
+ }
12
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "args": {
3
+ "app_path": "rubocop",
4
+ "destination_root": "/Users/davidcruwys/dev/kgems/rails_app_generator/a/addons"
5
+ },
6
+ "opts": {
7
+ "skip_git": true,
8
+ "skip_test": true,
9
+ "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/addons/rubocop/_.rb",
10
+ "add_rubocop": true
11
+ }
12
+ }
@@ -5,7 +5,9 @@
5
5
  },
6
6
  "opts": {
7
7
  "skip_test": true,
8
- "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/rag_printspeak.rb",
9
- "javascript": "esbuild"
8
+ "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/application/printspeak/_.rb",
9
+ "css": "bootstrap",
10
+ "add_annotate": true,
11
+ "add_dotenv": true
10
12
  }
11
13
  }
@@ -6,7 +6,7 @@
6
6
  "opts": {
7
7
  "skip_git": true,
8
8
  "skip_test": true,
9
- "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/rag_bootstrap.rb",
9
+ "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/rag/bootstrap/_.rb",
10
10
  "css": "bootstrap"
11
11
  }
12
12
  }
@@ -6,7 +6,7 @@
6
6
  "opts": {
7
7
  "skip_git": true,
8
8
  "skip_test": true,
9
- "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/rag_devise.rb",
9
+ "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/rag/devise/_.rb",
10
10
  "add_devise": true
11
11
  }
12
12
  }
@@ -6,6 +6,6 @@
6
6
  "opts": {
7
7
  "skip_test": true,
8
8
  "skip_javascript": true,
9
- "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/rag_import_map.rb"
9
+ "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/rag/import_map/_.rb"
10
10
  }
11
11
  }
@@ -1,11 +1,12 @@
1
1
  {
2
2
  "args": {
3
3
  "app_path": "simple",
4
- "destination_root": "/Users/davidcruwys/dev/kgems/rails_app_generator/a/rag"
4
+ "destination_root": "/Users/davidcruwys/dev/kgems/rails_app_generator/a/rag",
5
+ "capture_output": false
5
6
  },
6
7
  "opts": {
7
8
  "skip_test": true,
8
9
  "skip_bundle": true,
9
- "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/rag_simple.rb"
10
+ "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/rag/simple/_.rb"
10
11
  }
11
12
  }
@@ -5,6 +5,6 @@
5
5
  },
6
6
  "opts": {
7
7
  "skip_test": true,
8
- "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/rag_tailwind_daisyui.rb"
8
+ "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/rag/tailwind_daisyui/_.rb"
9
9
  }
10
10
  }
@@ -5,8 +5,7 @@
5
5
  },
6
6
  "opts": {
7
7
  "skip_test": true,
8
- "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/rag_tailwind_emulating_bootstrap.rb",
9
- "note": "tailwind needs to be installed manually because of style reuse",
10
- "XXX-css": "tailwind"
8
+ "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/rag/tailwind_emulating_bootstrap/_.rb",
9
+ "note": "tailwind needs to be installed manually because of style reuse"
11
10
  }
12
11
  }
@@ -5,7 +5,7 @@
5
5
  },
6
6
  "opts": {
7
7
  "skip_test": true,
8
- "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/rag_tailwind_hotwire_flash.rb",
8
+ "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/rag/tailwind_hotwire_flash/_.rb",
9
9
  "css": "tailwind"
10
10
  }
11
11
  }
@@ -5,7 +5,7 @@
5
5
  },
6
6
  "opts": {
7
7
  "skip_test": true,
8
- "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/rag_tailwind_hotwire_form_search.rb",
8
+ "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/rag/tailwind_hotwire_form_search/_.rb",
9
9
  "note": "tailwind needs to be installed manually because of the custom tailwind plugins",
10
10
  "XXX-css": "tailwind",
11
11
  "javascript": "esbuild"
@@ -5,7 +5,7 @@
5
5
  },
6
6
  "opts": {
7
7
  "skip_test": true,
8
- "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/rag_tailwind_hotwire_form.rb",
8
+ "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/rag/tailwind_hotwire_form/_.rb",
9
9
  "note": "tailwind needs to be installed manually because of the custom tailwind plugins",
10
10
  "XXX-css": "tailwind",
11
11
  "javascript": "esbuild"
@@ -5,7 +5,7 @@
5
5
  },
6
6
  "opts": {
7
7
  "skip_test": true,
8
- "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/rag_tailwind_hotwire.rb",
8
+ "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/rag/tailwind_hotwire/_.rb",
9
9
  "css": "tailwind",
10
10
  "javascript": "esbuild"
11
11
  }
@@ -1,12 +1,13 @@
1
1
  {
2
2
  "args": {
3
3
  "app_path": "tailwind",
4
- "destination_root": "/Users/davidcruwys/dev/kgems/rails_app_generator/a/rag"
4
+ "destination_root": "/Users/davidcruwys/dev/kgems/rails_app_generator/a/rag",
5
+ "capture_output": true
5
6
  },
6
7
  "opts": {
7
8
  "skip_git": true,
8
9
  "skip_test": true,
9
- "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/rag_tailwind.rb",
10
+ "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/rag/tailwind/_.rb",
10
11
  "css": "tailwind"
11
12
  }
12
13
  }
data/tasks/profile.thor CHANGED
@@ -28,7 +28,7 @@ class Profile < Thor
28
28
  attr_accessor :data
29
29
 
30
30
  desc 'new', 'Create a new Profile for testing Rails App Generator settings'
31
- method_option :variant, type: :string, default: 'default', desc: 'Profile variant to create, valid values are (nil, addons)'
31
+ method_option :variant, type: :string, default: 'application', desc: 'Profile variant to create, valid values are (nil, addons)'
32
32
  method_option :gem, type: :string, default: nil, desc: 'Gem name is looked up to find version and description'
33
33
  method_option :force, type: :boolean, default: false, desc: 'Overwrite existing files'
34
34
  # rubocop:disable Metrics/AbcSize
@@ -1,3 +1,6 @@
1
+ require:
2
+ - rubocop-rails
3
+
1
4
  AllCops:
2
5
  NewCops: enable
3
6
  Exclude:
@@ -11,10 +14,10 @@ Naming/AccessorMethodName:
11
14
 
12
15
  Metrics/MethodLength:
13
16
  CountAsOne: ['array', 'heredoc']
14
- IgnoredMethods: ['describe', 'context']
17
+ AllowedMethods: ['describe', 'context']
15
18
 
16
19
  Metrics/BlockLength:
17
- IgnoredMethods: ['describe', 'context']
20
+ AllowedMethods: ['describe', 'context']
18
21
  Exclude:
19
22
  - config/environments/*.rb
20
23
  - '**/*.rake'
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  # lib/rails_app_generator/rag_initializer.rb
4
- # config.rag.add_option :add_<%= data.name_snake %> , type: :boolean, default: false
4
+ # rag.add_option :add_<%= data.name_snake %> , type: :boolean, default: false
5
5
 
6
6
  module RailsAppGenerator
7
7
  # Custom add-ons for RailsAppGenerator
@@ -44,6 +44,7 @@ end
44
44
  # rails_command('hotwire:install')
45
45
  # run('bin/importmap pin sortablejs')
46
46
  # run('npm install daisyui')
47
+ # directory 'app/assets/images'
47
48
  # create_file 'app/assets/stylesheets/custom-bootstrap-import.scss' , read_template('custom-bootstrap-import.scss')
48
49
  # append_to_file 'app/assets/config/manifest.js' , read_template('manifest.js')
49
50
  # insert_into_file 'app/views/layouts/application.html.erb', read_template('application.html.erb'),