rails_app_generator 0.0.7 → 0.0.10

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 (53) hide show
  1. checksums.yaml +4 -4
  2. data/.builders/boot.rb +1 -0
  3. data/.builders/generators/project-plan.rb +49 -0
  4. data/CHANGELOG.md +22 -0
  5. data/after_templates/README.md +3 -0
  6. data/after_templates/___base_template.rb +1 -0
  7. data/after_templates/___r7_hotwire.rb +1 -0
  8. data/after_templates/rag_bootstrap/application-yield.html.erb +5 -0
  9. data/after_templates/rag_bootstrap/application.html.erb +4 -0
  10. data/after_templates/rag_bootstrap/component-cards-fancy.css +84 -0
  11. data/after_templates/rag_bootstrap/component-cards-fancy.html +80 -0
  12. data/after_templates/rag_bootstrap/component-cards-staff.css +90 -0
  13. data/after_templates/rag_bootstrap/component-cards-staff.html +140 -0
  14. data/after_templates/rag_bootstrap/component-cards-styled.html +31 -0
  15. data/after_templates/rag_bootstrap/component-footer.html +34 -0
  16. data/after_templates/rag_bootstrap/component-hero.html +15 -0
  17. data/after_templates/rag_bootstrap/component-nav.html +36 -0
  18. data/after_templates/rag_bootstrap/custom-bootstrap-import.scss +5 -0
  19. data/after_templates/rag_bootstrap/custom-using-css.css +3 -0
  20. data/after_templates/rag_bootstrap/custom-using-scss.scss +5 -0
  21. data/after_templates/rag_bootstrap/manifest.js +3 -0
  22. data/after_templates/rag_bootstrap.rb +1 -0
  23. data/after_templates/rag_simple.rb +25 -0
  24. data/after_templates/rag_tailwind/component-cta.html +17 -0
  25. data/after_templates/rag_tailwind/component-faq.html +151 -0
  26. data/after_templates/rag_tailwind/component-footer.html +73 -0
  27. data/after_templates/rag_tailwind/component-hero.html +25 -0
  28. data/after_templates/rag_tailwind/component-nav.html +101 -0
  29. data/after_templates/rag_tailwind/component-section-begin.html +0 -0
  30. data/after_templates/rag_tailwind/component-section-end.html +0 -0
  31. data/after_templates/rag_tailwind.rb +76 -0
  32. data/docs/project-plan/project.drawio +62 -0
  33. data/docs/project-plan/project_done.svg +3 -0
  34. data/docs/project-plan/project_in_progress.svg +3 -0
  35. data/docs/project-plan/project_todo.svg +3 -0
  36. data/docs/project-plan.md +24 -0
  37. data/exe/rag +49 -20
  38. data/lib/rails_app_generator/app_generator.rb +47 -5
  39. data/lib/rails_app_generator/cli.rb +40 -0
  40. data/lib/rails_app_generator/diff/compare_info.rb +80 -0
  41. data/lib/rails_app_generator/diff/processor.rb +60 -0
  42. data/lib/rails_app_generator/notes/a2.txt +14 -0
  43. data/lib/rails_app_generator/starter.rb +0 -11
  44. data/lib/rails_app_generator/util.rb +26 -0
  45. data/lib/rails_app_generator/version.rb +1 -1
  46. data/lib/rails_app_generator.rb +4 -8
  47. data/package-lock.json +2 -2
  48. data/package.json +1 -1
  49. data/profiles/rag-bootstrap.json +2 -0
  50. data/profiles/rag-simple.json +2 -1
  51. data/profiles/rag-tailwind.json +12 -0
  52. metadata +53 -3
  53. data/after_templates/test.rb +0 -12
@@ -0,0 +1,24 @@
1
+ # Drawio Dsl - Project Plan
2
+
3
+ ## In Progress
4
+
5
+ The next ticket to work on
6
+
7
+ ![](project-plan/project_in_progress.svg)
8
+
9
+ ## To Do
10
+
11
+ List of tickets to do
12
+
13
+ ![](project-plan/project_todo.svg)
14
+
15
+ ## Complete
16
+
17
+ List of completed tickets
18
+
19
+ ![](project-plan/project_done.svg)
20
+
21
+
22
+ ## Copyright
23
+
24
+ Copyright (c) David Cruwys. See [MIT License](LICENSE.txt) for further details.
data/exe/rag CHANGED
@@ -19,23 +19,52 @@ elsif %w[-v --version].include? ARGV[0]
19
19
  exit 0
20
20
  end
21
21
 
22
- profile_path = File.expand_path("#{Pathname.new(__FILE__).dirname}/../profiles")
23
- profile_name = ARGV[0]
24
- profile_name += '.json' unless profile_name.end_with?('.json')
25
- profile_file = File.join(profile_path, profile_name)
26
-
27
- if File.exist?(profile_file)
28
- puts "Using profile #{profile_file}"
29
-
30
- profile = JSON.parse(File.read(profile_file), symbolize_names: true)
31
- args = profile[:args]
32
- opts = profile[:opts]
33
- rails_options = RailsAppGenerator::RailsOptions.new(opts)
34
-
35
- instance = RailsAppGenerator::Starter.new(args)
36
- FileUtils.rm_rf(instance.target_path)
37
- instance.start(rails_options)
38
- else
39
- puts "Profile #{profile_file} not found"
40
- exit 1
41
- end
22
+ RailsAppGenerator::Cli.start(ARGV)
23
+
24
+ exit 0
25
+
26
+ # # Use RAG with in the same way as the Rails generator (the following commands should be equivalent)
27
+ # # rails new args
28
+ # # rag new args
29
+ # if ARGV.first == 'new'
30
+ # # NOTE: This is not yet working
31
+ # RailsAppGenerator::Cli::Standard.start ARGV[1..]
32
+ # exit 0
33
+ # elsif ARGV.first == 'diff'
34
+ # # args, opts = Thor::Arguments.split(ARGV[1..])
35
+ # RailsAppGenerator::Cli::Diff.start(ARGV[1..]) # , { lhs: true, rhs: true, compare: true } )
36
+ # exit 0
37
+ # elsif ARGV.first == 'diff_lhs'
38
+ # RailsAppGenerator::Cli::Diff.start(ARGV[1..], { lhs: true })
39
+ # exit 0
40
+ # elsif ARGV.first == 'diff_rhs'
41
+ # RailsAppGenerator::Cli::Diff.start(ARGV[1..], { rhs: true })
42
+ # exit 0
43
+ # elsif ARGV.first == 'diff_compare'
44
+ # RailsAppGenerator::Cli::Diff.start(ARGV[1..], { compare: true })
45
+ # exit 0
46
+ # elsif !ARGV.first.nil?
47
+ # profile_path = File.expand_path("#{Pathname.new(__FILE__).dirname}/../profiles")
48
+ # profile_name = ARGV[0]
49
+ # profile_name += '.json' unless profile_name.end_with?('.json')
50
+ # profile_file = File.join(profile_path, profile_name)
51
+
52
+ # RailsAppGenerator::Cli::Profile.start(profile_file)
53
+
54
+ # exit 0
55
+ # end
56
+
57
+ # if File.exist?(profile_file)
58
+ # puts "Using profile #{profile_file}"
59
+
60
+ # profile = JSON.parse(File.read(profile_file), symbolize_names: true)
61
+ # args = profile[:args]
62
+ # opts = profile[:opts]
63
+ # rails_options = RailsAppGenerator::RailsOptions.new(opts)
64
+
65
+ # instance = RailsAppGenerator::Starter.new(args)
66
+ # FileUtils.rm_rf(instance.target_path)
67
+ # instance.start(rails_options)
68
+ # else
69
+ # puts "Profile #{profile_file} not found"
70
+ # exit 1
@@ -171,6 +171,14 @@ module RailsAppGenerator
171
171
  end
172
172
 
173
173
  no_commands do
174
+ # USED BY AFTER_TEMPLATE
175
+ def gac(message)
176
+ return unless active?(:git)
177
+
178
+ git add: '.'
179
+ git commit: " -m '#{message}'"
180
+ end
181
+
174
182
  def add_controller(name, *args)
175
183
  generate(:controller, name, *args)
176
184
  end
@@ -179,14 +187,28 @@ module RailsAppGenerator
179
187
  generate(:scaffold, name, *args)
180
188
  end
181
189
 
190
+ def read_template(template_file)
191
+ path = find_in_source_paths(template_file)
192
+
193
+ File.read(path)
194
+ end
195
+
196
+ def join_templates(*template_files, join: "\n\n")
197
+ template_files.map { |template_file| read_template(template_file) }.join(join)
198
+ end
199
+
200
+ # Local template path is handy when you want template files used when working with the --template flag
201
+ attr_accessor :local_template_path
202
+
182
203
  def source_paths
183
- [
184
- context.rails_override_template_path,
185
- context.rails_template_path
186
- ]
204
+ paths = local_template_path ? [local_template_path] : []
205
+ paths << context.rails_override_template_path
206
+ paths << context.rails_template_path
207
+ paths
187
208
  end
188
209
 
189
210
  # Context wraps the configured options and can be made available to addons
211
+ # TODO: should I add local_template_path to the context?
190
212
  def context
191
213
  @context ||= Context.new(
192
214
  self.class.rails_template_path,
@@ -210,8 +232,28 @@ module RailsAppGenerator
210
232
  add(addon) if options[option_name]
211
233
  end
212
234
 
235
+ def skip_flag?(option_name)
236
+ value = options["skip_#{option_name}".to_sym]
237
+
238
+ return false if value.nil?
239
+
240
+ value == true
241
+ end
242
+
243
+ def add_flag?(option_name)
244
+ value = options["add_#{option_name}".to_sym]
245
+
246
+ return false if value.nil?
247
+
248
+ value == true
249
+ end
250
+
251
+ def active?(option_name)
252
+ add_flag?(option_name) || !skip_flag?(option_name)
253
+ end
254
+
213
255
  def uses?(addon)
214
- return false if options["skip_#{addon}".to_sym]
256
+ return false unless active?(addon)
215
257
 
216
258
  addon = AddOn.get(addon)
217
259
  Dependencies.new(addon, context).satisfied?
@@ -0,0 +1,40 @@
1
+ # frozen_string_literal: true
2
+
3
+ module RailsAppGenerator
4
+ # Thor CLI
5
+ class Cli < Thor
6
+ desc 'diff lhs_folder rhs_folder [options]', 'Diff two different rails folders'
7
+ option :lhs , type: :boolean
8
+ option :rhs , type: :boolean
9
+ option :compare , type: :boolean
10
+
11
+ def diff(lhs_folder, rhs_folder)
12
+ # puts "Diffing #{lhs_folder} and #{rhs_folder}"
13
+ # puts JSON.pretty_generate(options)
14
+ processor = RailsAppGenerator::Diff::Processor.new(lhs_folder, rhs_folder)
15
+ compare_info = processor.compare
16
+
17
+ compare_info.debug
18
+
19
+ # report = RailsAppGenerator::Diff::Report.new(compare_info)
20
+ # report.display
21
+ end
22
+
23
+ # def initialize(profile_file)
24
+ # @profile_file = profile_file
25
+ # end
26
+
27
+ # def run
28
+ # puts "Using profile #{profile_file}"
29
+
30
+ # profile = JSON.parse(File.read(profile_file), symbolize_names: true)
31
+ # args = profile[:args]
32
+ # opts = profile[:opts]
33
+ # rails_options = RailsAppGenerator::RailsOptions.new(opts)
34
+
35
+ # instance = RailsAppGenerator::Starter.new(args)
36
+ # FileUtils.rm_rf(instance.target_path)
37
+ # instance.start(rails_options)
38
+ # end
39
+ end
40
+ end
@@ -0,0 +1,80 @@
1
+ # frozen_string_literal: true
2
+
3
+ module RailsAppGenerator
4
+ module Diff
5
+ # CompareInfo information
6
+ class CompareInfo
7
+ attr_reader :lhs_path
8
+ attr_reader :lhs_files
9
+ attr_reader :lhs_only
10
+
11
+ attr_reader :rhs_path
12
+ attr_reader :rhs_files
13
+ attr_reader :rhs_only
14
+
15
+ attr_reader :diff_list
16
+ attr_reader :same_list
17
+
18
+ def initialize(lhs_path, lhs_files, rhs_path, rhs_files)
19
+ @lhs_path = lhs_path
20
+ @lhs_files = lhs_files
21
+ @lhs_only = []
22
+
23
+ @rhs_path = rhs_path
24
+ @rhs_files = rhs_files
25
+ @rhs_only = []
26
+
27
+ @diff_list = []
28
+ @same_list = []
29
+
30
+ separate_files(lhs_path, lhs_files, rhs_path, rhs_files)
31
+ end
32
+
33
+ def debug
34
+ debug_stats
35
+ debug_files('left only', lhs_only)
36
+ debug_files('right only', rhs_only)
37
+ debug_files('same', same_list)
38
+ debug_files('diff', diff_list)
39
+ end
40
+
41
+ private
42
+
43
+ def separate_files(lhs_path, lhs_files, rhs_path, rhs_files)
44
+ @lhs_only = lhs_files - rhs_files
45
+ @rhs_only = rhs_files - lhs_files
46
+
47
+ matching_files = lhs_files & rhs_files
48
+
49
+ matching_files.each do |file|
50
+ if FileUtils.compare_file(File.join(lhs_path, file), File.join(rhs_path, file))
51
+ @same_list << file
52
+ else
53
+ @diff_list << file
54
+ end
55
+ end
56
+ end
57
+
58
+ # rubocop:disable Metrics/AbcSize
59
+ def debug_stats
60
+ Util.kv('left path' , lhs_path)
61
+ Util.kv('right path' , rhs_path)
62
+
63
+ Util.kv('file count - left' , lhs_files.count)
64
+ Util.kv('file count - right' , rhs_files.count)
65
+
66
+ Util.kv('file count - left only' , lhs_only.count)
67
+ Util.kv('file count - right only' , rhs_only.count)
68
+
69
+ Util.kv('file count - same' , same_list.count)
70
+ Util.kv('file count - different' , diff_list.count)
71
+ end
72
+ # rubocop:enable Metrics/AbcSize
73
+
74
+ def debug_files(heading, files)
75
+ Util.line(heading)
76
+ puts files.any? ? files : 'NO FILES'
77
+ end
78
+ end
79
+ end
80
+ end
@@ -0,0 +1,60 @@
1
+ # frozen_string_literal: true
2
+
3
+ module RailsAppGenerator
4
+ module Diff
5
+ # Diff Processor
6
+ class Processor
7
+ attr_reader :lhs_path
8
+ attr_reader :rhs_path
9
+
10
+ DEFAULT_EXCLUSION = lambda do |_file, relative_file|
11
+ relative_file.start_with?('tmp') || relative_file.start_with?('node_modules')
12
+ end
13
+
14
+ def initialize(lhs_path, rhs_path)
15
+ @lhs_path = lhs_path
16
+ @rhs_path = rhs_path
17
+ end
18
+
19
+ attr_writer :exclusion_handler
20
+
21
+ def compare
22
+ @info ||= RailsAppGenerator::Diff::CompareInfo.new(
23
+ lhs_path, file_list(lhs_path),
24
+ rhs_path, file_list(rhs_path)
25
+ )
26
+ end
27
+
28
+ def debug
29
+ compare.debug
30
+ end
31
+
32
+ private
33
+
34
+ def exclusion_handler
35
+ @exclusion_handler ||= DEFAULT_EXCLUSION
36
+ end
37
+
38
+ def file_list(path)
39
+ prefix_path = path.end_with?('/') ? path : "#{path}/"
40
+
41
+ Dir.glob("#{path}/**/*")
42
+ .reject { |file| File.directory?(file) || exclusion_handler.call(file, file.delete_prefix(prefix_path)) }
43
+ .map { |file| file.delete_prefix(prefix_path) }
44
+ end
45
+
46
+ # def vscode_compare_files
47
+ # files_that_are_different.map do |file|
48
+ # system("code --diff #{File.join(lhs_path, file)} #{File.join(rhs_path, file)}")
49
+ # end
50
+ # end
51
+
52
+ # private
53
+
54
+ # def diff_exclusions(file)
55
+ # file.include?('config/credentials.yml.enc') ||
56
+ # file.include?('master.key')
57
+ # end
58
+ end
59
+ end
60
+ end
@@ -74,6 +74,20 @@ create tmp/cache
74
74
  create tmp/cache/assets
75
75
  create vendor
76
76
  create vendor/.keep
77
+ create test/fixtures/files
78
+ create test/fixtures/files/.keep
79
+ create test/controllers
80
+ create test/controllers/.keep
81
+ create test/mailers
82
+ create test/mailers/.keep
83
+ create test/models
84
+ create test/models/.keep
85
+ create test/helpers
86
+ create test/helpers/.keep
87
+ create test/integration
88
+ create test/integration/.keep
89
+ create test/channels/application_cable/connection_test.rb
90
+ create test/test_helper.rb
77
91
  create test/system
78
92
  create test/system/.keep
79
93
  create test/application_system_test_case.rb
@@ -4,17 +4,6 @@ require 'rails'
4
4
 
5
5
  require 'rails/generators'
6
6
  require 'rails/generators/rails/app/app_generator'
7
- # require 'active_model/railtie'
8
- # active_record/railtie
9
- # active_storage/engine
10
- # action_controller/railtie
11
- # action_view/railtie
12
- # action_mailer/railtie
13
- # active_job/railtie
14
- # action_cable/engine
15
- # action_mailbox/engine
16
- # action_text/engine
17
- # rails/test_unit/railtie
18
7
 
19
8
  module RailsAppGenerator
20
9
  # Starter is a wrapper for Rails::AppGenerator
@@ -0,0 +1,26 @@
1
+ # frozen_string_literal: true
2
+
3
+ module RailsAppGenerator
4
+ # Utility methods
5
+ class Util
6
+ class << self
7
+ # Log KeyValue pair
8
+ #
9
+ # @example
10
+ # Util.kv(:key, :value)
11
+ def kv(label, value, len = 35)
12
+ return ' ' * len if label.nil?
13
+
14
+ label = label.to_s if label.is_a?(Symbol)
15
+ label = label.length > len ? label.slice(0..len) : label.ljust(len, ' ')
16
+
17
+ puts "#{label}: #{value}"
18
+ end
19
+
20
+ def line(heading, len = 80)
21
+ heading = "- [#{heading}]"
22
+ puts heading.length > len ? heading : heading.ljust(len, '-')
23
+ end
24
+ end
25
+ end
26
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module RailsAppGenerator
4
- VERSION = '0.0.7'
4
+ VERSION = '0.0.10'
5
5
  end
@@ -1,7 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # require 'k_log'
4
-
5
3
  require 'rails/command/base'
6
4
  require 'rails/generators/app_base'
7
5
  require 'rails/generators'
@@ -10,6 +8,10 @@ require 'rails/generators/rails/app/app_generator'
10
8
  require 'bundler'
11
9
 
12
10
  require 'rails_app_generator/version'
11
+ require 'rails_app_generator/cli'
12
+ require 'rails_app_generator/util'
13
+ require 'rails_app_generator/diff/compare_info'
14
+ require 'rails_app_generator/diff/processor'
13
15
  require 'rails_app_generator/options/base_map_option'
14
16
  require 'rails_app_generator/options/map_option_ignore'
15
17
  require 'rails_app_generator/options/map_option_string'
@@ -25,15 +27,9 @@ require 'rails_app_generator/app_builder'
25
27
  require 'rails_app_generator/app_generator'
26
28
  require 'rails_app_generator/starter'
27
29
 
28
- # require "rails_app_generator/generators/base"
29
- # require "rails_app_generator/generators/foo_generator"
30
- # require "rails_app_generator/generators/advisories_generator"
31
-
32
30
  module RailsAppGenerator
33
31
  # raise RailsAppGenerator::Error, 'Sample message'
34
32
  Error = Class.new(StandardError)
35
-
36
- # Your code goes here...
37
33
  end
38
34
 
39
35
  if ENV.fetch('KLUE_DEBUG', 'false').downcase == 'true'
data/package-lock.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "rails_app_generator",
3
- "version": "0.0.7",
3
+ "version": "0.0.10",
4
4
  "lockfileVersion": 2,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "rails_app_generator",
9
- "version": "0.0.7",
9
+ "version": "0.0.10",
10
10
  "devDependencies": {
11
11
  "@klueless-js/semantic-release-rubygem": "github:klueless-js/semantic-release-rubygem",
12
12
  "@semantic-release/changelog": "^6.0.1",
data/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rails_app_generator",
3
- "version": "0.0.7",
3
+ "version": "0.0.10",
4
4
  "description": "Create new Rails Application with custom opinions",
5
5
  "scripts": {
6
6
  "release": "semantic-release"
@@ -5,6 +5,8 @@
5
5
  },
6
6
  "opts": {
7
7
  "skip_git": true,
8
+ "skip_test": true,
9
+ "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/rag_bootstrap.rb",
8
10
  "css": "bootstrap"
9
11
  }
10
12
  }
@@ -5,6 +5,7 @@
5
5
  },
6
6
  "opts": {
7
7
  "skip_git": true,
8
- "skip_bundle": true
8
+ "skip_bundle": true,
9
+ "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/rag_simple.rb"
9
10
  }
10
11
  }
@@ -0,0 +1,12 @@
1
+ {
2
+ "args": {
3
+ "app_path": "tailwind",
4
+ "destination_root": "/Users/davidcruwys/dev/kgems/rails_app_generator/a/rag"
5
+ },
6
+ "opts": {
7
+ "skip_git": true,
8
+ "skip_test": true,
9
+ "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/rag_tailwind.rb",
10
+ "css": "tailwind"
11
+ }
12
+ }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails_app_generator
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.7
4
+ version: 0.0.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Cruwys
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-07-22 00:00:00.000000000 Z
11
+ date: 2022-07-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bootsnap
@@ -94,6 +94,20 @@ dependencies:
94
94
  - - ">="
95
95
  - !ruby/object:Gem::Version
96
96
  version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: tailwindcss-rails
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :runtime
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
97
111
  - !ruby/object:Gem::Dependency
98
112
  name: turbo-rails
99
113
  requirement: !ruby/object:Gem::Requirement
@@ -119,6 +133,7 @@ files:
119
133
  - ".builders/_.rb"
120
134
  - ".builders/boot.rb"
121
135
  - ".builders/generators/01-bootstrap.rb"
136
+ - ".builders/generators/project-plan.rb"
122
137
  - ".releaserc.json"
123
138
  - ".rspec"
124
139
  - ".rubocop.yml"
@@ -131,9 +146,39 @@ files:
131
146
  - README.md
132
147
  - Rakefile
133
148
  - after_templates/README.md
134
- - after_templates/test.rb
149
+ - after_templates/___base_template.rb
150
+ - after_templates/___r7_hotwire.rb
151
+ - after_templates/rag_bootstrap.rb
152
+ - after_templates/rag_bootstrap/application-yield.html.erb
153
+ - after_templates/rag_bootstrap/application.html.erb
154
+ - after_templates/rag_bootstrap/component-cards-fancy.css
155
+ - after_templates/rag_bootstrap/component-cards-fancy.html
156
+ - after_templates/rag_bootstrap/component-cards-staff.css
157
+ - after_templates/rag_bootstrap/component-cards-staff.html
158
+ - after_templates/rag_bootstrap/component-cards-styled.html
159
+ - after_templates/rag_bootstrap/component-footer.html
160
+ - after_templates/rag_bootstrap/component-hero.html
161
+ - after_templates/rag_bootstrap/component-nav.html
162
+ - after_templates/rag_bootstrap/custom-bootstrap-import.scss
163
+ - after_templates/rag_bootstrap/custom-using-css.css
164
+ - after_templates/rag_bootstrap/custom-using-scss.scss
165
+ - after_templates/rag_bootstrap/manifest.js
166
+ - after_templates/rag_simple.rb
167
+ - after_templates/rag_tailwind.rb
168
+ - after_templates/rag_tailwind/component-cta.html
169
+ - after_templates/rag_tailwind/component-faq.html
170
+ - after_templates/rag_tailwind/component-footer.html
171
+ - after_templates/rag_tailwind/component-hero.html
172
+ - after_templates/rag_tailwind/component-nav.html
173
+ - after_templates/rag_tailwind/component-section-begin.html
174
+ - after_templates/rag_tailwind/component-section-end.html
135
175
  - bin/console
136
176
  - bin/setup
177
+ - docs/project-plan.md
178
+ - docs/project-plan/project.drawio
179
+ - docs/project-plan/project_done.svg
180
+ - docs/project-plan/project_in_progress.svg
181
+ - docs/project-plan/project_todo.svg
137
182
  - exe/rag
138
183
  - lib/rails_app_generator.rb
139
184
  - lib/rails_app_generator/add_on.rb
@@ -162,8 +207,11 @@ files:
162
207
  - lib/rails_app_generator/addons/views.rb
163
208
  - lib/rails_app_generator/app_builder.rb
164
209
  - lib/rails_app_generator/app_generator.rb
210
+ - lib/rails_app_generator/cli.rb
165
211
  - lib/rails_app_generator/context.rb
166
212
  - lib/rails_app_generator/dependencies.rb
213
+ - lib/rails_app_generator/diff/compare_info.rb
214
+ - lib/rails_app_generator/diff/processor.rb
167
215
  - lib/rails_app_generator/generators/advisories_generator.rb
168
216
  - lib/rails_app_generator/generators/base.rb
169
217
  - lib/rails_app_generator/generators/foo_generator.rb
@@ -186,12 +234,14 @@ files:
186
234
  - lib/rails_app_generator/options/options_builder.rb
187
235
  - lib/rails_app_generator/options/rails_options.rb
188
236
  - lib/rails_app_generator/starter.rb
237
+ - lib/rails_app_generator/util.rb
189
238
  - lib/rails_app_generator/version.rb
190
239
  - package-lock.json
191
240
  - package.json
192
241
  - profiles/rag-add-some-pages.json
193
242
  - profiles/rag-bootstrap.json
194
243
  - profiles/rag-simple.json
244
+ - profiles/rag-tailwind.json
195
245
  - sig/rails_app_generator.rbs
196
246
  - templates/README.md.erb
197
247
  - templates/addons/annotate/auto_annotate_models.rake
@@ -1,12 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'pry'
4
-
5
- # after_bundle do
6
- # setup_rails.after_bundle
7
- # end
8
-
9
- add_scaffold('post', 'title', 'content:text')
10
- add_scaffold('book', 'title', 'content:text')
11
- # add_resource("comment", "post:references", 'content:text')
12
- # add_mailer("posts", "submitted", "broken")