rails_app_generator 0.1.15 → 0.1.16
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +8 -0
- data/after_templates/addons/faker/_.rb +38 -0
- data/after_templates/addons/faker/app/controllers/home_controller.rb +7 -0
- data/after_templates/addons/faker/app/views/home/index.html.erb +102 -0
- data/after_templates/addons/faker/app/views/layouts/_alerts.html.erb +2 -0
- data/after_templates/addons/faker/app/views/layouts/_footer.html.erb +3 -0
- data/after_templates/addons/faker/app/views/layouts/_navbar.html.erb +3 -0
- data/after_templates/addons/faker/app/views/layouts/application.html.erb +28 -0
- data/lib/rails_app_generator/addons/acts_as_list.rb +1 -10
- data/lib/rails_app_generator/addons/faker.rb +25 -0
- data/lib/rails_app_generator/app_generator.rb +4 -6
- data/lib/rails_app_generator/options/rails_options.rb +1 -0
- data/lib/rails_app_generator/version.rb +1 -1
- data/package-lock.json +2 -2
- data/package.json +1 -1
- data/profiles/addons/faker.json +12 -0
- metadata +11 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d4678312f0c3daef59040ffdff420854a8830450683873c7543d9738634ac185
|
4
|
+
data.tar.gz: 3db0da5693679fb06ab7958d10379805419cd55e8c190668d9d0888a312db152
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e6a6cc4fc9d402061464492e6853973aaa727131f972116827582b07b24d248a605efd763395e1b8c47869734b0ac73f0525a29ff47ef519b521a66b923fcbe1
|
7
|
+
data.tar.gz: 9063b3dac614fcd9798103919adb62a99b9cb3cf9ca58b9bacbeb2c0002a1f385425e48e462b4b627fb50888e6cd382ea601bee787c85b920acb6b45f6c7602e
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,11 @@
|
|
1
|
+
## [0.1.15](https://github.com/klueless-io/rails_app_generator/compare/v0.1.14...v0.1.15) (2022-08-04)
|
2
|
+
|
3
|
+
|
4
|
+
### Bug Fixes
|
5
|
+
|
6
|
+
* addon acts_as_list ([6b7e759](https://github.com/klueless-io/rails_app_generator/commit/6b7e759b1601300b7f616ced2a8dce27056bf781))
|
7
|
+
* addon acts_as_list ([c88e583](https://github.com/klueless-io/rails_app_generator/commit/c88e58373833e5ab9685dd1ddf7dd4327ef7db8b))
|
8
|
+
|
1
9
|
## [0.1.14](https://github.com/klueless-io/rails_app_generator/compare/v0.1.13...v0.1.14) (2022-08-04)
|
2
10
|
|
3
11
|
|
@@ -0,0 +1,38 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# require 'pry'
|
4
|
+
|
5
|
+
# Faker, a port of Data::Faker from Perl, is used to easily generate fake data: names, addresses, phone numbers, etc.
|
6
|
+
#
|
7
|
+
# exe/rag addons/faker
|
8
|
+
|
9
|
+
self.local_template_path = File.dirname(__FILE__)
|
10
|
+
|
11
|
+
gac 'base rails 7 image created'
|
12
|
+
|
13
|
+
add_controller('home', 'index')
|
14
|
+
route("root 'home#index'")
|
15
|
+
|
16
|
+
force_copy
|
17
|
+
|
18
|
+
copy_file 'app/controllers/home_controller.rb' , 'app/controllers/home_controller.rb'
|
19
|
+
copy_file 'app/views/home/index.html.erb' , 'app/views/home/index.html.erb'
|
20
|
+
|
21
|
+
copy_file 'app/views/layouts/_alerts.html.erb' , 'app/views/layouts/_alerts.html.erb'
|
22
|
+
copy_file 'app/views/layouts/_navbar.html.erb' , 'app/views/layouts/_navbar.html.erb'
|
23
|
+
copy_file 'app/views/layouts/_footer.html.erb' , 'app/views/layouts/_footer.html.erb'
|
24
|
+
template 'app/views/layouts/application.html.erb' , 'app/views/layouts/application.html.erb'
|
25
|
+
|
26
|
+
# Other template command examples
|
27
|
+
# css_install('tailwind')
|
28
|
+
# rails_command('db:migrate')
|
29
|
+
# bundle_add('hotwire-rails')
|
30
|
+
# rails_command('hotwire:install')
|
31
|
+
# run('bin/importmap pin sortablejs')
|
32
|
+
# run('npm install daisyui')
|
33
|
+
# create_file 'app/assets/stylesheets/custom-bootstrap-import.scss' , read_template('custom-bootstrap-import.scss')
|
34
|
+
# append_to_file 'app/assets/config/manifest.js' , read_template('manifest.js')
|
35
|
+
# insert_into_file 'app/views/layouts/application.html.erb', read_template('application.html.erb'),
|
36
|
+
# before: %( <%= javascript_include_tag "application", "data-turbo-track": "reload", defer: true %>)
|
37
|
+
# gsub_file 'app/views/layouts/application.html.erb', %(container mx-auto mt-28 px-5 flex), 'container mx-auto px-5'
|
38
|
+
# template 'home.css', 'app/assets/stylesheets/home.css'
|
@@ -0,0 +1,102 @@
|
|
1
|
+
<h1>Faker</h1>
|
2
|
+
|
3
|
+
<h2>Faker, a port of Data::Faker from Perl, is used to easily generate fake data: names, addresses, phone numbers, etc.</h2>
|
4
|
+
|
5
|
+
<hr>
|
6
|
+
<h3>Names</h3>
|
7
|
+
|
8
|
+
<pre>
|
9
|
+
Faker::Name.name
|
10
|
+
# or
|
11
|
+
Faker::Name.unique.name
|
12
|
+
</pre>
|
13
|
+
|
14
|
+
<ul>
|
15
|
+
<% 10.times do |i| %>
|
16
|
+
<li><%= Faker::Name.name %></li>
|
17
|
+
<% end%>
|
18
|
+
</ul>
|
19
|
+
|
20
|
+
|
21
|
+
<hr>
|
22
|
+
<h3>Emails</h3>
|
23
|
+
|
24
|
+
<pre>
|
25
|
+
Faker::Internet.email
|
26
|
+
</pre>
|
27
|
+
|
28
|
+
<ul>
|
29
|
+
<% 10.times do |i| %>
|
30
|
+
<li><%= Faker::Internet.email %></li>
|
31
|
+
<% end%>
|
32
|
+
</ul>
|
33
|
+
|
34
|
+
|
35
|
+
<hr>
|
36
|
+
<h3>Artist</h3>
|
37
|
+
|
38
|
+
<pre>
|
39
|
+
Faker::Artist.name
|
40
|
+
</pre>
|
41
|
+
|
42
|
+
<ul>
|
43
|
+
<% 10.times do |i| %>
|
44
|
+
<li><%= Faker::Artist.name %></li>
|
45
|
+
<% end%>
|
46
|
+
</ul>
|
47
|
+
|
48
|
+
|
49
|
+
<hr>
|
50
|
+
<h3>Adress</h3>
|
51
|
+
|
52
|
+
<pre>
|
53
|
+
Faker::Address.city #=> "Imogeneborough"
|
54
|
+
Faker::Address.street_name #=> "Larkin Fork"
|
55
|
+
Faker::Address.street_address #=> "282 Kevin Brook"
|
56
|
+
Faker::Address.secondary_address #=> "Apt. 672"
|
57
|
+
Faker::Address.building_number #=> "7304"
|
58
|
+
Faker::Address.mail_box #=> "PO Box 123"
|
59
|
+
Faker::Address.community #=> "University Crossing"
|
60
|
+
Faker::Address.zip_code #=> "58517" or "23285-4905"
|
61
|
+
Faker::Address.zip #=> "58517" or "66259-8212"
|
62
|
+
Faker::Address.postcode #=> "76032-4907" or "58517"
|
63
|
+
Faker::Address.time_zone #=> "Asia/Yakutsk"
|
64
|
+
Faker::Address.street_suffix #=> "Street"
|
65
|
+
Faker::Address.city_suffix #=> "fort"
|
66
|
+
Faker::Address.city_prefix #=> "Lake"
|
67
|
+
Faker::Address.state #=> "California"
|
68
|
+
Faker::Address.state_abbr #=> "AP"
|
69
|
+
Faker::Address.country #=> "French Guiana"
|
70
|
+
|
71
|
+
# Keyword arguments: code
|
72
|
+
Faker::Address.country_by_code(code: 'NL') #=> "Netherlands"
|
73
|
+
|
74
|
+
# Keyword arguments: name
|
75
|
+
Faker::Address.country_name_to_code(name: 'united_states') #=> "US"
|
76
|
+
Faker::Address.country_code #=> "IT"
|
77
|
+
Faker::Address.country_code_long #=> "ITA"
|
78
|
+
Faker::Address.latitude #=> "-58.17256227443719"
|
79
|
+
Faker::Address.longitude #=> "-156.65548382095133"
|
80
|
+
Faker::Address.full_address #=> "282 Kevin Brook, Imogeneborough, CA 58517"
|
81
|
+
</pre>
|
82
|
+
|
83
|
+
<ul>
|
84
|
+
<li><%= Faker::Address.city %></li>
|
85
|
+
<li><%= Faker::Address.street_name %></li>
|
86
|
+
<li><%= Faker::Address.street_address %></li>
|
87
|
+
<li><%= Faker::Address.secondary_address %></li>
|
88
|
+
<li><%= Faker::Address.building_number %></li>
|
89
|
+
<li><%= Faker::Address.mail_box %></li>
|
90
|
+
<li><%= Faker::Address.community %></li>
|
91
|
+
<li><%= Faker::Address.zip_code %></li>
|
92
|
+
<li><%= Faker::Address.zip %></li>
|
93
|
+
<li><%= Faker::Address.postcode %></li>
|
94
|
+
<li><%= Faker::Address.time_zone %></li>
|
95
|
+
<li><%= Faker::Address.street_suffix %></li>
|
96
|
+
<li><%= Faker::Address.city_suffix %></li>
|
97
|
+
<li><%= Faker::Address.city_prefix %></li>
|
98
|
+
<li><%= Faker::Address.state %></li>
|
99
|
+
<li><%= Faker::Address.state_abbr %></li>
|
100
|
+
<li><%= Faker::Address.country %></li>
|
101
|
+
</ul>
|
102
|
+
|
@@ -0,0 +1,28 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<title><%= camelized %></title>
|
5
|
+
<meta name="viewport" content="width=device-width,initial-scale=1">
|
6
|
+
<%%= csrf_meta_tags %>
|
7
|
+
<%%= csp_meta_tag %>
|
8
|
+
|
9
|
+
<%- if options[:skip_hotwire] || options[:skip_javascript] -%>
|
10
|
+
<%%= stylesheet_link_tag "application" %>
|
11
|
+
<%- else -%>
|
12
|
+
<%%= stylesheet_link_tag "application", "data-turbo-track": "reload" %>
|
13
|
+
<%- end -%>
|
14
|
+
<style>
|
15
|
+
.alert { color: red; }
|
16
|
+
.notice { color: green; }
|
17
|
+
</style>
|
18
|
+
</head>
|
19
|
+
|
20
|
+
<body>
|
21
|
+
<%%= render 'layouts/navbar' %>
|
22
|
+
<main>
|
23
|
+
<%%= render 'layouts/alerts' %>
|
24
|
+
<%%= yield %>
|
25
|
+
</main>
|
26
|
+
<%%= render 'layouts/footer' %>
|
27
|
+
</body>
|
28
|
+
</html>
|
@@ -11,16 +11,7 @@ module RailsAppGenerator
|
|
11
11
|
The class that has this specified needs to have a "position" column defined as an integer on the mapped database table.
|
12
12
|
COMMENT
|
13
13
|
|
14
|
-
def apply
|
15
|
-
# say 'Setting up ActsAsList'
|
16
|
-
# template('acts_as_list_template.rb', 'target/acts_as_list.rb', force: true)
|
17
|
-
# template('app/javascript/stylesheets/components.scss')
|
18
|
-
# create_file('target/acts_as_list.rb', 'put your content here')
|
19
|
-
# directory 'app/template', 'app/target', force: true
|
20
|
-
# empty_directory 'app/target'
|
21
|
-
# inject_into_file('app/application.js', "some content")
|
22
|
-
# rails_command('tailwindcss:install')
|
23
|
-
end
|
14
|
+
def apply; end
|
24
15
|
end
|
25
16
|
end
|
26
17
|
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# lib/rails_app_generator/options/rails_options.rb
|
4
|
+
# register_option :add_faker, type: :boolean, default: false
|
5
|
+
|
6
|
+
module RailsAppGenerator
|
7
|
+
# Custom add-ons for RailsAppGenerator
|
8
|
+
module AddOns
|
9
|
+
# Add Faker to rails application
|
10
|
+
class Faker < AddOn
|
11
|
+
required_gem gem.version('faker', '2.22.0', 'Faker, a port of Data::Faker from Perl, is used to easily generate fake data: names, addresses, phone numbers, etc.')
|
12
|
+
|
13
|
+
def apply
|
14
|
+
# say 'Setting up Faker'
|
15
|
+
# template('faker_template.rb', 'target/faker.rb', force: true)
|
16
|
+
# template('app/javascript/stylesheets/components.scss')
|
17
|
+
# create_file('target/faker.rb', 'put your content here')
|
18
|
+
# directory 'app/template', 'app/target', force: true
|
19
|
+
# empty_directory 'app/target'
|
20
|
+
# inject_into_file('app/application.js', "some content")
|
21
|
+
# rails_command('tailwindcss:install')
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -8,16 +8,12 @@ module RailsAppGenerator
|
|
8
8
|
class_option :test , type: :string , default: 'rspec'
|
9
9
|
|
10
10
|
# Gem Current Latest Requested Groups
|
11
|
-
# acts_as_list 0.9.19 1.0.4 ~> 0.9 default
|
12
|
-
# arel 7.1.4 9.0.0
|
13
11
|
# aws-partitions 1.613.0 1.614.0
|
14
12
|
# aws-sdk-cognitoidentityprovider 1.67.0 1.68.0
|
15
13
|
# aws-sdk-core 3.131.5 3.131.6
|
16
14
|
# aws-sdk-personalize 1.42.0 1.43.0
|
17
15
|
# aws-sdk-resources 3.136.0 3.137.0
|
18
16
|
# aws-sdk-wafv2 1.40.0 1.41.0
|
19
|
-
# bigdecimal 1.4.4 3.1.2 ~> 1.4 development, test
|
20
|
-
# binding_of_caller 0.8.0 1.0.0 ~> 0.8 default
|
21
17
|
# browser 2.7.1 5.3.1 ~> 2.3 default
|
22
18
|
# capistrano-bundler 1.6.0 2.1.0 ~> 1.2 development, test
|
23
19
|
# capybara 3.33.0 3.37.1 = 3.33.0 development, test
|
@@ -163,6 +159,7 @@ module RailsAppGenerator
|
|
163
159
|
|
164
160
|
# NEW GEM ADDONS
|
165
161
|
class_option :add_acts_as_list , type: :boolean, default: false
|
162
|
+
class_option :add_faker , type: :boolean, default: false
|
166
163
|
class_option :add_honeybadger , type: :boolean, default: false
|
167
164
|
class_option :add_rails_html_sanitizer , type: :boolean, default: false
|
168
165
|
class_option :add_twilio_ruby , type: :boolean, default: false
|
@@ -299,12 +296,13 @@ module RailsAppGenerator
|
|
299
296
|
|
300
297
|
add_if(:acts_as_list)
|
301
298
|
add_if(:annotate)
|
302
|
-
add_if(:devise)
|
303
299
|
add_if(:continuous_integration)
|
300
|
+
add_if(:devise)
|
304
301
|
add_if(:factory_bot)
|
302
|
+
add_if(:faker)
|
303
|
+
add_if(:generators)
|
305
304
|
add_if(:high_voltage)
|
306
305
|
add_if(:honeybadger)
|
307
|
-
add_if(:generators)
|
308
306
|
add_if(:lograge)
|
309
307
|
add_if(:pundit)
|
310
308
|
add_if(:rails_app_generator)
|
@@ -60,6 +60,7 @@ module RailsAppGenerator
|
|
60
60
|
|
61
61
|
# NEW GEM ADDONS
|
62
62
|
register_option :add_acts_as_list , type: :boolean, default: false
|
63
|
+
register_option :add_faker , type: :boolean, default: false
|
63
64
|
register_option :add_honeybadger , type: :boolean, default: false
|
64
65
|
register_option :add_rails_html_sanitizer , type: :boolean, default: false
|
65
66
|
register_option :add_twilio_ruby , type: :boolean, default: false
|
data/package-lock.json
CHANGED
@@ -1,12 +1,12 @@
|
|
1
1
|
{
|
2
2
|
"name": "rails_app_generator",
|
3
|
-
"version": "0.1.
|
3
|
+
"version": "0.1.16",
|
4
4
|
"lockfileVersion": 2,
|
5
5
|
"requires": true,
|
6
6
|
"packages": {
|
7
7
|
"": {
|
8
8
|
"name": "rails_app_generator",
|
9
|
-
"version": "0.1.
|
9
|
+
"version": "0.1.16",
|
10
10
|
"dependencies": {
|
11
11
|
"daisyui": "^2.20.0"
|
12
12
|
},
|
data/package.json
CHANGED
@@ -0,0 +1,12 @@
|
|
1
|
+
{
|
2
|
+
"args": {
|
3
|
+
"app_path": "faker",
|
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/faker/_.rb",
|
10
|
+
"add_faker": true
|
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.1.
|
4
|
+
version: 0.1.16
|
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-08-
|
11
|
+
date: 2022-08-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bootsnap
|
@@ -174,6 +174,13 @@ files:
|
|
174
174
|
- after_templates/addons/acts_as_list/app/views/todo_items/index.html.erb
|
175
175
|
- after_templates/addons/acts_as_list/config/routes.rb
|
176
176
|
- after_templates/addons/acts_as_list/db/seeds.rb
|
177
|
+
- after_templates/addons/faker/_.rb
|
178
|
+
- after_templates/addons/faker/app/controllers/home_controller.rb
|
179
|
+
- after_templates/addons/faker/app/views/home/index.html.erb
|
180
|
+
- after_templates/addons/faker/app/views/layouts/_alerts.html.erb
|
181
|
+
- after_templates/addons/faker/app/views/layouts/_footer.html.erb
|
182
|
+
- after_templates/addons/faker/app/views/layouts/_navbar.html.erb
|
183
|
+
- after_templates/addons/faker/app/views/layouts/application.html.erb
|
177
184
|
- after_templates/addons/honeybadger/_.rb
|
178
185
|
- after_templates/addons/honeybadger/app/controllers/application_controller.rb
|
179
186
|
- after_templates/addons/honeybadger/app/controllers/errors_controller.rb
|
@@ -326,6 +333,7 @@ files:
|
|
326
333
|
- lib/rails_app_generator/addons/docker_compose.rb
|
327
334
|
- lib/rails_app_generator/addons/dotenv.rb
|
328
335
|
- lib/rails_app_generator/addons/factory_bot.rb
|
336
|
+
- lib/rails_app_generator/addons/faker.rb
|
329
337
|
- lib/rails_app_generator/addons/foreman.rb
|
330
338
|
- lib/rails_app_generator/addons/generators.rb
|
331
339
|
- lib/rails_app_generator/addons/high_voltage.rb
|
@@ -380,6 +388,7 @@ files:
|
|
380
388
|
- package-lock.json
|
381
389
|
- package.json
|
382
390
|
- profiles/addons/acts_as_list.json
|
391
|
+
- profiles/addons/faker.json
|
383
392
|
- profiles/addons/honeybadger.json
|
384
393
|
- profiles/addons/rails-html-sanitizer.json
|
385
394
|
- profiles/addons/twilio_ruby.json
|