rails_app 0.2.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (30) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +11 -2
  3. data/README.md +19 -3
  4. data/lib/rails_app/cli.rb +9 -1
  5. data/lib/rails_app/command.rb +4 -2
  6. data/lib/rails_app/template/app_sass/assets/stylesheets/application.sass.scss +2 -0
  7. data/lib/rails_app/template/app_sass/assets/stylesheets/custom.sass.scss +49 -0
  8. data/lib/rails_app/template/app_sass/views/devise/confirmations/new.html.erb +16 -0
  9. data/lib/rails_app/template/app_sass/views/devise/mailer/confirmation_instructions.html.erb +5 -0
  10. data/lib/rails_app/template/app_sass/views/devise/mailer/email_changed.html.erb +7 -0
  11. data/lib/rails_app/template/app_sass/views/devise/mailer/password_change.html.erb +3 -0
  12. data/lib/rails_app/template/app_sass/views/devise/mailer/reset_password_instructions.html.erb +8 -0
  13. data/lib/rails_app/template/app_sass/views/devise/mailer/unlock_instructions.html.erb +7 -0
  14. data/lib/rails_app/template/app_sass/views/devise/passwords/edit.html.erb +25 -0
  15. data/lib/rails_app/template/app_sass/views/devise/passwords/new.html.erb +16 -0
  16. data/lib/rails_app/template/app_sass/views/devise/registrations/edit.html.erb +43 -0
  17. data/lib/rails_app/template/app_sass/views/devise/registrations/new.html.erb +29 -0
  18. data/lib/rails_app/template/app_sass/views/devise/sessions/new.html.erb +26 -0
  19. data/lib/rails_app/template/app_sass/views/devise/shared/_error_messages.html.erb +15 -0
  20. data/lib/rails_app/template/app_sass/views/devise/shared/_links.html.erb +25 -0
  21. data/lib/rails_app/template/app_sass/views/devise/unlocks/new.html.erb +16 -0
  22. data/lib/rails_app/template/app_sass/views/layouts/application.html.erb +19 -0
  23. data/lib/rails_app/template/app_sass/views/layouts/mailer.html.erb +13 -0
  24. data/lib/rails_app/template/app_sass/views/layouts/mailer.text.erb +1 -0
  25. data/lib/rails_app/template/app_sass/views/shared/_navbar.html.erb +11 -0
  26. data/lib/rails_app/template/app_sass/views/static/home.html.erb +2 -0
  27. data/lib/rails_app/template/template.rb +14 -5
  28. data/lib/rails_app/version.rb +1 -1
  29. data/screenshot_cli.png +0 -0
  30. metadata +23 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b8b73c531dad7b7d7b4edabbdc901203e9a0d2563e4242d5e03c0c3ecb50e43d
4
- data.tar.gz: 1143480576ce1db9c61f9bccc64fc926c48f76df7a5c50ff1e8e9437e7cec3de
3
+ metadata.gz: abe9ca28918f70a2b71b19040764b860567c4ea7a58fc020dad211a80e10cfb7
4
+ data.tar.gz: '0283ec9fae9b1c6438830c486c3eadcbd090f7c74ba78fe965e930bc08c3453e'
5
5
  SHA512:
6
- metadata.gz: 474c3b2e72b6f906ec8d3fce8916037f7ab6e0aae04171614c11fd020262f97fe82be39cff3ab04765e0e734ba4883a0a55bce1a77936b57d47061f3b47bf7f5
7
- data.tar.gz: 1e74bc4238c3e44d46f5282664d98d6acc1787de9cb7f6985c2939810741c96ee7686bb1abc418f07e8065067ffd962a1b6682750105563e815b5265607fc312
6
+ metadata.gz: 70d9bb94900977be4b5b8d79589f44c93d97e916a6914ebec7b91792bb810a08fb4fe3fdaade63298b39b2fd751910993750da751cb00b6c444097d8bfb99a31
7
+ data.tar.gz: 93c4942b640be06a3bd09bd85af99b101b95eeff4f9ad389a03f1d2643da8e539f15afd6d527da59372eedd65aac60494f98e3f234d7a7d79eec012ec9365e77
data/CHANGELOG.md CHANGED
@@ -1,8 +1,17 @@
1
1
  # Changelog
2
2
 
3
- ## [Unreleased](https://github.com/eclectic-coding/rails_app/tree/HEAD)
3
+ ## [0.3.0](https://github.com/eclectic-coding/rails_app/tree/0.3.0) (2024-04-03)
4
4
 
5
- [Full Changelog](https://github.com/eclectic-coding/rails_app/compare/0.1.0...HEAD)
5
+ [Full Changelog](https://github.com/eclectic-coding/rails_app/compare/0.2.0...0.3.0)
6
+
7
+ **Implemented enhancements:**
8
+
9
+ - Add user option to select other styling systems [\#2](https://github.com/eclectic-coding/rails_app/issues/2)
10
+ - add user option to select sass styling systems [\#7](https://github.com/eclectic-coding/rails_app/pull/7) ([eclectic-coding](https://github.com/eclectic-coding))
11
+
12
+ ## [0.2.0](https://github.com/eclectic-coding/rails_app/tree/0.2.0) (2024-04-03)
13
+
14
+ [Full Changelog](https://github.com/eclectic-coding/rails_app/compare/0.1.0...0.2.0)
6
15
 
7
16
  **Closed issues:**
8
17
 
data/README.md CHANGED
@@ -8,7 +8,7 @@ The initial release of this gem is an opinionated template that includes the fol
8
8
  - Esbuild for JavaScript bundling
9
9
  - Bootstrap for CSS styling
10
10
  - RSpec for testing
11
- - Code quality tools: RuboCop, Brakeman, and Bundler Audit
11
+ - Code quality tools: Rubocop, Brakeman, and Bundler Audit
12
12
 
13
13
  The initial release of this gem **v.0.1.0** is starting with my personal preferences and a Rails template I have developed locally. I plan to expand the template to include more options and configurations with future releases which will make this template less opinionated.
14
14
 
@@ -21,11 +21,27 @@ gem install rails_app
21
21
  ## Usage
22
22
  To bootstrap a new Rails application: `rails_app`
23
23
 
24
- The user will be prompted to enter the name of the new Rails application, and the select the assets pipeline to use (propshaft or sprockets).
24
+ The user will be prompted to enter the name of the new Rails application, and the select the assets pipeline to use (propshaft or sprockets), and a styling option:
25
+
26
+ ![](./screenshot_cli.png)
25
27
 
26
28
  The template will then create a new Rails application with the selected options.
27
29
 
28
- In addition, there is a custom binstub (`bin/ci`) that can be used to run the test suite and code quality tools (rubocop, brakeman, and bundle-audit).
30
+ ### Testing
31
+ The template includes RSpec for testing, which includes pre configured:
32
+ - FactoryBot
33
+ - Faker
34
+ - Webmock
35
+ - VCR
36
+ - Simplecov
37
+
38
+ ### Code Quality Tools
39
+ The template includes the following code quality tools:
40
+ - Rubocop using the `rubocop-rails-omakase` gem with a few custom settings in a provided `.rubocop.yml`
41
+ - Brakeman for security scanning
42
+ - Bundler Audit for checking for vulnerable gems
43
+
44
+ All of this tools can be run using the following command, which also will run the test suite: `bin/ci`
29
45
 
30
46
  ## Development
31
47
 
data/lib/rails_app/cli.rb CHANGED
@@ -9,8 +9,16 @@ module RailsApp
9
9
 
10
10
  app_name = prompt.ask("What is the name of your application?", required: true)
11
11
  assets = prompt.select("How would you like to manage assets?", %w[propshaft sprockets])
12
+ styling_choices = [
13
+ {name: "Bootstrap", value: "bootstrap"},
14
+ {name: "Tailwind CSS", value: "tailwindcss", disabled: "(coming soon)"},
15
+ {name: "Bulma", value: "bulma", disabled: "(coming soon)"},
16
+ {name: "PostCSS", value: "postcss", disabled: "(coming soon)"},
17
+ {name: "SASS", value: "sass"}
18
+ ]
19
+ styling = prompt.select("How would you like to manage styling?", styling_choices)
12
20
 
13
- Command.new(app_name: app_name, assets: assets).run
21
+ Command.new(app_name: app_name, assets: assets, styling: styling).run
14
22
  end
15
23
  end
16
24
  end
@@ -4,9 +4,10 @@ module RailsApp
4
4
  class Command
5
5
  attr_reader :app_name, :bundling, :assets
6
6
 
7
- def initialize(app_name:, assets:)
7
+ def initialize(app_name:, assets:, styling:)
8
8
  @app_name = app_name
9
9
  @assets = assets
10
+ @styling = styling
10
11
  end
11
12
 
12
13
  def template
@@ -15,6 +16,7 @@ module RailsApp
15
16
 
16
17
  def run
17
18
  command = "rails new #{@app_name} --no-rc #{skip_spring} #{asset_management} #{javascript_bundling} #{styling_framework} #{testing_framework} -m #{template}"
19
+ puts command
18
20
  system(command)
19
21
  end
20
22
 
@@ -31,7 +33,7 @@ module RailsApp
31
33
  end
32
34
 
33
35
  def styling_framework
34
- "--css bootstrap"
36
+ "--css #{@styling}"
35
37
  end
36
38
 
37
39
  def testing_framework
@@ -0,0 +1,2 @@
1
+ // Entry point for your Sass build
2
+ @import 'custom.sass.scss';
@@ -0,0 +1,49 @@
1
+ a {
2
+ text-decoration: none;
3
+ }
4
+
5
+ body {
6
+ background-color: #eceeef;
7
+ font-family: Verdana, Helvetica, Arial;
8
+ font-size: 14px;
9
+
10
+ .container {
11
+ width: 80%;
12
+ margin: 0 auto;
13
+ background-color: #fff;
14
+ padding: 20px 40px;
15
+ margin-top: 25px;
16
+ border: solid 1px black;
17
+ }
18
+ }
19
+
20
+ nav ul {
21
+ list-style-type: none;
22
+ margin: 0;
23
+ padding: 0;
24
+ overflow: hidden;
25
+ display: flex;
26
+
27
+ li {
28
+ margin-right: 1rem;
29
+
30
+ a {
31
+ display: block;
32
+ color: black;
33
+ text-align: center;
34
+ padding: 14px 16px;
35
+ text-decoration: none;
36
+
37
+ &:hover {
38
+ border-radius: 5px;
39
+ background-color: #ececec;
40
+ color: black;
41
+ }
42
+ }
43
+ }
44
+ }
45
+
46
+ .field,
47
+ .actions {
48
+ margin-bottom: 1rem;
49
+ }
@@ -0,0 +1,16 @@
1
+ <h2>Resend confirmation instructions</h2>
2
+
3
+ <%= form_for(resource, as: resource_name, url: confirmation_path(resource_name), html: { method: :post }) do |f| %>
4
+ <%= render "devise/shared/error_messages", resource: resource %>
5
+
6
+ <div class="field">
7
+ <%= f.label :email %><br />
8
+ <%= f.email_field :email, autofocus: true, autocomplete: "email", value: (resource.pending_reconfirmation? ? resource.unconfirmed_email : resource.email) %>
9
+ </div>
10
+
11
+ <div class="actions">
12
+ <%= f.submit "Resend confirmation instructions" %>
13
+ </div>
14
+ <% end %>
15
+
16
+ <%= render "devise/shared/links" %>
@@ -0,0 +1,5 @@
1
+ <p>Welcome <%= @email %>!</p>
2
+
3
+ <p>You can confirm your account email through the link below:</p>
4
+
5
+ <p><%= link_to 'Confirm my account', confirmation_url(@resource, confirmation_token: @token) %></p>
@@ -0,0 +1,7 @@
1
+ <p>Hello <%= @email %>!</p>
2
+
3
+ <% if @resource.try(:unconfirmed_email?) %>
4
+ <p>We're contacting you to notify you that your email is being changed to <%= @resource.unconfirmed_email %>.</p>
5
+ <% else %>
6
+ <p>We're contacting you to notify you that your email has been changed to <%= @resource.email %>.</p>
7
+ <% end %>
@@ -0,0 +1,3 @@
1
+ <p>Hello <%= @resource.email %>!</p>
2
+
3
+ <p>We're contacting you to notify you that your password has been changed.</p>
@@ -0,0 +1,8 @@
1
+ <p>Hello <%= @resource.email %>!</p>
2
+
3
+ <p>Someone has requested a link to change your password. You can do this through the link below.</p>
4
+
5
+ <p><%= link_to 'Change my password', edit_password_url(@resource, reset_password_token: @token) %></p>
6
+
7
+ <p>If you didn't request this, please ignore this email.</p>
8
+ <p>Your password won't change until you access the link above and create a new one.</p>
@@ -0,0 +1,7 @@
1
+ <p>Hello <%= @resource.email %>!</p>
2
+
3
+ <p>Your account has been locked due to an excessive number of unsuccessful sign in attempts.</p>
4
+
5
+ <p>Click the link below to unlock your account:</p>
6
+
7
+ <p><%= link_to 'Unlock my account', unlock_url(@resource, unlock_token: @token) %></p>
@@ -0,0 +1,25 @@
1
+ <h2>Change your password</h2>
2
+
3
+ <%= form_for(resource, as: resource_name, url: password_path(resource_name), html: { method: :put }) do |f| %>
4
+ <%= render "devise/shared/error_messages", resource: resource %>
5
+ <%= f.hidden_field :reset_password_token %>
6
+
7
+ <div class="field">
8
+ <%= f.label :password, "New password" %><br />
9
+ <% if @minimum_password_length %>
10
+ <em>(<%= @minimum_password_length %> characters minimum)</em><br />
11
+ <% end %>
12
+ <%= f.password_field :password, autofocus: true, autocomplete: "new-password" %>
13
+ </div>
14
+
15
+ <div class="field">
16
+ <%= f.label :password_confirmation, "Confirm new password" %><br />
17
+ <%= f.password_field :password_confirmation, autocomplete: "new-password" %>
18
+ </div>
19
+
20
+ <div class="actions">
21
+ <%= f.submit "Change my password" %>
22
+ </div>
23
+ <% end %>
24
+
25
+ <%= render "devise/shared/links" %>
@@ -0,0 +1,16 @@
1
+ <h2>Forgot your password?</h2>
2
+
3
+ <%= form_for(resource, as: resource_name, url: password_path(resource_name), html: { method: :post }) do |f| %>
4
+ <%= render "devise/shared/error_messages", resource: resource %>
5
+
6
+ <div class="field">
7
+ <%= f.label :email %><br />
8
+ <%= f.email_field :email, autofocus: true, autocomplete: "email" %>
9
+ </div>
10
+
11
+ <div class="actions">
12
+ <%= f.submit "Send me reset password instructions" %>
13
+ </div>
14
+ <% end %>
15
+
16
+ <%= render "devise/shared/links" %>
@@ -0,0 +1,43 @@
1
+ <h2>Edit <%= resource_name.to_s.humanize %></h2>
2
+
3
+ <%= form_for(resource, as: resource_name, url: registration_path(resource_name), html: { method: :put }) do |f| %>
4
+ <%= render "devise/shared/error_messages", resource: resource %>
5
+
6
+ <div class="field">
7
+ <%= f.label :email %><br />
8
+ <%= f.email_field :email, autofocus: true, autocomplete: "email" %>
9
+ </div>
10
+
11
+ <% if devise_mapping.confirmable? && resource.pending_reconfirmation? %>
12
+ <div>Currently waiting confirmation for: <%= resource.unconfirmed_email %></div>
13
+ <% end %>
14
+
15
+ <div class="field">
16
+ <%= f.label :password %> <i>(leave blank if you don't want to change it)</i><br />
17
+ <%= f.password_field :password, autocomplete: "new-password" %>
18
+ <% if @minimum_password_length %>
19
+ <br />
20
+ <em><%= @minimum_password_length %> characters minimum</em>
21
+ <% end %>
22
+ </div>
23
+
24
+ <div class="field">
25
+ <%= f.label :password_confirmation %><br />
26
+ <%= f.password_field :password_confirmation, autocomplete: "new-password" %>
27
+ </div>
28
+
29
+ <div class="field">
30
+ <%= f.label :current_password %> <i>(we need your current password to confirm your changes)</i><br />
31
+ <%= f.password_field :current_password, autocomplete: "current-password" %>
32
+ </div>
33
+
34
+ <div class="actions">
35
+ <%= f.submit "Update" %>
36
+ </div>
37
+ <% end %>
38
+
39
+ <h3>Cancel my account</h3>
40
+
41
+ <div>Unhappy? <%= button_to "Cancel my account", registration_path(resource_name), data: { confirm: "Are you sure?", turbo_confirm: "Are you sure?" }, method: :delete %></div>
42
+
43
+ <%= link_to "Back", :back %>
@@ -0,0 +1,29 @@
1
+ <h2>Sign up</h2>
2
+
3
+ <%= form_for(resource, as: resource_name, url: registration_path(resource_name)) do |f| %>
4
+ <%= render "devise/shared/error_messages", resource: resource %>
5
+
6
+ <div class="field">
7
+ <%= f.label :email %><br />
8
+ <%= f.email_field :email, autofocus: true, autocomplete: "email" %>
9
+ </div>
10
+
11
+ <div class="field">
12
+ <%= f.label :password %>
13
+ <% if @minimum_password_length %>
14
+ <em>(<%= @minimum_password_length %> characters minimum)</em>
15
+ <% end %><br />
16
+ <%= f.password_field :password, autocomplete: "new-password" %>
17
+ </div>
18
+
19
+ <div class="field">
20
+ <%= f.label :password_confirmation %><br />
21
+ <%= f.password_field :password_confirmation, autocomplete: "new-password" %>
22
+ </div>
23
+
24
+ <div class="actions">
25
+ <%= f.submit "Sign up" %>
26
+ </div>
27
+ <% end %>
28
+
29
+ <%= render "devise/shared/links" %>
@@ -0,0 +1,26 @@
1
+ <h2>Log in</h2>
2
+
3
+ <%= form_for(resource, as: resource_name, url: session_path(resource_name)) do |f| %>
4
+ <div class="field">
5
+ <%= f.label :email %><br />
6
+ <%= f.email_field :email, autofocus: true, autocomplete: "email" %>
7
+ </div>
8
+
9
+ <div class="field">
10
+ <%= f.label :password %><br />
11
+ <%= f.password_field :password, autocomplete: "current-password" %>
12
+ </div>
13
+
14
+ <% if devise_mapping.rememberable? %>
15
+ <div class="field">
16
+ <%= f.check_box :remember_me %>
17
+ <%= f.label :remember_me %>
18
+ </div>
19
+ <% end %>
20
+
21
+ <div class="actions">
22
+ <%= f.submit "Log in" %>
23
+ </div>
24
+ <% end %>
25
+
26
+ <%= render "devise/shared/links" %>
@@ -0,0 +1,15 @@
1
+ <% if resource.errors.any? %>
2
+ <div id="error_explanation" data-turbo-cache="false">
3
+ <h2>
4
+ <%= I18n.t("errors.messages.not_saved",
5
+ count: resource.errors.count,
6
+ resource: resource.class.model_name.human.downcase)
7
+ %>
8
+ </h2>
9
+ <ul>
10
+ <% resource.errors.full_messages.each do |message| %>
11
+ <li><%= message %></li>
12
+ <% end %>
13
+ </ul>
14
+ </div>
15
+ <% end %>
@@ -0,0 +1,25 @@
1
+ <%- if controller_name != 'sessions' %>
2
+ <%= link_to "Log in", new_session_path(resource_name) %><br />
3
+ <% end %>
4
+
5
+ <%- if devise_mapping.registerable? && controller_name != 'registrations' %>
6
+ <%= link_to "Sign up", new_registration_path(resource_name) %><br />
7
+ <% end %>
8
+
9
+ <%- if devise_mapping.recoverable? && controller_name != 'passwords' && controller_name != 'registrations' %>
10
+ <%= link_to "Forgot your password?", new_password_path(resource_name) %><br />
11
+ <% end %>
12
+
13
+ <%- if devise_mapping.confirmable? && controller_name != 'confirmations' %>
14
+ <%= link_to "Didn't receive confirmation instructions?", new_confirmation_path(resource_name) %><br />
15
+ <% end %>
16
+
17
+ <%- if devise_mapping.lockable? && resource_class.unlock_strategy_enabled?(:email) && controller_name != 'unlocks' %>
18
+ <%= link_to "Didn't receive unlock instructions?", new_unlock_path(resource_name) %><br />
19
+ <% end %>
20
+
21
+ <%- if devise_mapping.omniauthable? %>
22
+ <%- resource_class.omniauth_providers.each do |provider| %>
23
+ <%= button_to "Sign in with #{OmniAuth::Utils.camelize(provider)}", omniauth_authorize_path(resource_name, provider), data: { turbo: false } %><br />
24
+ <% end %>
25
+ <% end %>
@@ -0,0 +1,16 @@
1
+ <h2>Resend unlock instructions</h2>
2
+
3
+ <%= form_for(resource, as: resource_name, url: unlock_path(resource_name), html: { method: :post }) do |f| %>
4
+ <%= render "devise/shared/error_messages", resource: resource %>
5
+
6
+ <div class="field">
7
+ <%= f.label :email %><br />
8
+ <%= f.email_field :email, autofocus: true, autocomplete: "email" %>
9
+ </div>
10
+
11
+ <div class="actions">
12
+ <%= f.submit "Resend unlock instructions" %>
13
+ </div>
14
+ <% end %>
15
+
16
+ <%= render "devise/shared/links" %>
@@ -0,0 +1,19 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>Catapp</title>
5
+ <meta name="viewport" content="width=device-width,initial-scale=1">
6
+ <%= csrf_meta_tags %>
7
+ <%= csp_meta_tag %>
8
+
9
+ <%= stylesheet_link_tag "application", "data-turbo-track": "reload" %>
10
+ <%= javascript_include_tag "application", "data-turbo-track": "reload", type: "module" %>
11
+ </head>
12
+
13
+ <body>
14
+ <div class="container">
15
+ <%= render 'shared/navbar' %>
16
+ <%= yield %>
17
+ </div>
18
+ </body>
19
+ </html>
@@ -0,0 +1,13 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
5
+ <style>
6
+ /* Email styles need to be inline */
7
+ </style>
8
+ </head>
9
+
10
+ <body>
11
+ <%= yield %>
12
+ </body>
13
+ </html>
@@ -0,0 +1,11 @@
1
+ <nav>
2
+ <ul>
3
+ <li><%= link_to 'Home', root_path %></li>
4
+ <% if user_signed_in? %>
5
+ <li><%= button_to "Log out", destroy_user_session_path, method: :delete %></li>
6
+ <% else %>
7
+ <li><%= link_to "Login", new_user_session_path %></li>
8
+ <li><%= link_to "Sign Up", new_user_registration_path %></li>
9
+ <% end%>
10
+ </ul>
11
+ </nav>
@@ -0,0 +1,2 @@
1
+ <h1>Static#home</h1>
2
+ <p>Find me in app/views/static/home.html.erb</p>
@@ -3,8 +3,7 @@
3
3
  require "fileutils"
4
4
  require "shellwords"
5
5
 
6
- puts "options: #{options}"
7
- puts "args: #{args}"
6
+ # puts "options: #{options}"
8
7
 
9
8
  def add_template_to_source_path
10
9
  source_paths.unshift(File.expand_path(File.join(__dir__)))
@@ -70,8 +69,18 @@ def add_static
70
69
  route "root to: 'static#home'"
71
70
  end
72
71
 
73
- def add_bootstrap
74
- directory "app_bootstrap", "app", force: true
72
+ def add_styling
73
+ if options[:css] == "bootstrap"
74
+ directory "app_bootstrap", "app", force: true
75
+ elsif options[:css] == "tailwindcss"
76
+ say "TAILWIND CSS COMING SOON", :red
77
+ elsif options[:css] == "bulma"
78
+ say "BULMA COMING SOON", :red
79
+ elsif options[:css] == "postcss"
80
+ say "POSTCSS COMING SOON", :red
81
+ elsif options[:css] == "sass"
82
+ directory "app_sass", "app", force: true
83
+ end
75
84
  end
76
85
 
77
86
  def setup_rspec
@@ -129,7 +138,7 @@ after_bundle do
129
138
  add_esbuild_script
130
139
  add_users
131
140
  add_static
132
- add_bootstrap
141
+ add_styling
133
142
  setup_rspec
134
143
  copy_templates
135
144
  database_setup
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module RailsApp
4
- VERSION = "0.2.0"
4
+ VERSION = "0.3.0"
5
5
  end
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails_app
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chuck Smith
@@ -117,6 +117,27 @@ files:
117
117
  - lib/rails_app/template/app_bootstrap/views/shared/_navbar.html.erb
118
118
  - lib/rails_app/template/app_bootstrap/views/shared/_notices.html.erb
119
119
  - lib/rails_app/template/app_bootstrap/views/static/home.html.erb
120
+ - lib/rails_app/template/app_sass/assets/stylesheets/application.sass.scss
121
+ - lib/rails_app/template/app_sass/assets/stylesheets/custom.sass.scss
122
+ - lib/rails_app/template/app_sass/views/devise/confirmations/new.html.erb
123
+ - lib/rails_app/template/app_sass/views/devise/mailer/confirmation_instructions.html.erb
124
+ - lib/rails_app/template/app_sass/views/devise/mailer/email_changed.html.erb
125
+ - lib/rails_app/template/app_sass/views/devise/mailer/password_change.html.erb
126
+ - lib/rails_app/template/app_sass/views/devise/mailer/reset_password_instructions.html.erb
127
+ - lib/rails_app/template/app_sass/views/devise/mailer/unlock_instructions.html.erb
128
+ - lib/rails_app/template/app_sass/views/devise/passwords/edit.html.erb
129
+ - lib/rails_app/template/app_sass/views/devise/passwords/new.html.erb
130
+ - lib/rails_app/template/app_sass/views/devise/registrations/edit.html.erb
131
+ - lib/rails_app/template/app_sass/views/devise/registrations/new.html.erb
132
+ - lib/rails_app/template/app_sass/views/devise/sessions/new.html.erb
133
+ - lib/rails_app/template/app_sass/views/devise/shared/_error_messages.html.erb
134
+ - lib/rails_app/template/app_sass/views/devise/shared/_links.html.erb
135
+ - lib/rails_app/template/app_sass/views/devise/unlocks/new.html.erb
136
+ - lib/rails_app/template/app_sass/views/layouts/application.html.erb
137
+ - lib/rails_app/template/app_sass/views/layouts/mailer.html.erb
138
+ - lib/rails_app/template/app_sass/views/layouts/mailer.text.erb
139
+ - lib/rails_app/template/app_sass/views/shared/_navbar.html.erb
140
+ - lib/rails_app/template/app_sass/views/static/home.html.erb
120
141
  - lib/rails_app/template/bin/ci
121
142
  - lib/rails_app/template/bin/setup
122
143
  - lib/rails_app/template/bin/yarn
@@ -131,6 +152,7 @@ files:
131
152
  - lib/rails_app/template/template.rb
132
153
  - lib/rails_app/version.rb
133
154
  - rails_app.gemspec
155
+ - screenshot_cli.png
134
156
  homepage: https://github.com/eclectic-coding/rails_app
135
157
  licenses:
136
158
  - MIT