hanamismith 0.16.0 → 0.17.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/README.adoc +14 -14
- data/hanamismith.gemspec +1 -1
- data/lib/hanamismith/builders/bundler.rb +1 -1
- data/lib/hanamismith/builders/documentation/readme.rb +52 -0
- data/lib/hanamismith/builders/rspec/helper.rb +26 -3
- data/lib/hanamismith/builders/slices/health.rb +1 -1
- data/lib/hanamismith/builders/slices/{main.rb → home.rb} +19 -10
- data/lib/hanamismith/builders/stylesheet.rb +1 -1
- data/lib/hanamismith/cli/commands/build.rb +1 -1
- data/lib/hanamismith/templates/%project_name%/.github/workflows/ci.yml.erb +1 -1
- data/lib/hanamismith/templates/%project_name%/Procfile.dev.erb +1 -1
- data/lib/hanamismith/templates/%project_name%/config/app.rb.erb +1 -0
- data/lib/hanamismith/templates/%project_name%/config/providers/persistence.rb.erb +1 -0
- data/lib/hanamismith/templates/%project_name%/config/routes.rb.erb +1 -1
- data/lib/hanamismith/templates/%project_name%/public/stylesheets/home.css.erb +88 -0
- data/lib/hanamismith/templates/%project_name%/slices/{main → home}/action.rb.erb +2 -2
- data/lib/hanamismith/templates/%project_name%/slices/home/actions/show.rb.erb +8 -0
- data/lib/hanamismith/templates/%project_name%/slices/{main → home}/repository.rb.erb +2 -2
- data/lib/hanamismith/templates/%project_name%/slices/{main → home}/templates/layouts/app.html.erb.erb +3 -5
- data/lib/hanamismith/templates/%project_name%/slices/home/templates/show.html.erb.erb +41 -0
- data/lib/hanamismith/templates/%project_name%/slices/{main → home}/view.rb.erb +2 -3
- data/lib/hanamismith/templates/%project_name%/slices/home/views/show.rb.erb +9 -0
- data/lib/hanamismith/templates/%project_name%/spec/hanami_helper.rb.erb +3 -1
- data.tar.gz.sig +0 -0
- metadata +12 -12
- metadata.gz.sig +0 -0
- data/lib/hanamismith/templates/%project_name%/public/stylesheets/site.css.erb +0 -9
- data/lib/hanamismith/templates/%project_name%/slices/main/actions/home/show.rb.erb +0 -10
- data/lib/hanamismith/templates/%project_name%/slices/main/templates/home/show.html.erb.erb +0 -3
- data/lib/hanamismith/templates/%project_name%/slices/main/views/home/show.rb.erb +0 -9
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c15e2bca1a5e912ccda4ec1e05566ed71c3ad1a80c6468c83fc986b2571709d9
|
4
|
+
data.tar.gz: b8c14b829c846d42cbc96975ab37e864edbf7847f53f6dda5653204f05730794
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5b8bc5790acd4e609e57dc8ad45f6148a6144b2e1044bdc0a26b8771c8bb05cd668358b098b09e745cffd9cdfe4989fd317c0d9f88b04410abd64c213c1868cd
|
7
|
+
data.tar.gz: 4a2d73b4b777c34ef33f5a874bcd985653e5bd175109025ccac04447983a1e98f90ee1d8480903910cb76e1abcc3530854f5e5984b66eedc18df1b2b0088c9c9
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data/README.adoc
CHANGED
@@ -17,11 +17,9 @@
|
|
17
17
|
|
18
18
|
= Hanamismith
|
19
19
|
|
20
|
-
Hanamismith is a Command Line Interface (CLI) for smithing Hanami projects. Perfect
|
20
|
+
Hanamismith is a Command Line Interface (CLI) for smithing Hanami projects. Perfect when you need a professional and robust tool for building new project skeletons. To quote from the {dry_link} and {hanami_link} teams:
|
21
21
|
____
|
22
22
|
If you're looking for new ways to build maintainable, secure, faster and testable Ruby applications, you're in for a treat. *Hanami is built for people like you*.
|
23
|
-
|
24
|
-
Whether you're a total beginner or an experienced developer, *this learning process may still be hard*. Over time, we become used to certain things, and it can be painful to change. *But without change, there is no challenge* and without challenge, there is no growth.
|
25
23
|
____
|
26
24
|
|
27
25
|
Welcome to the modern age of web development. This gem will help you get up and running as quickly as possible. 🚀
|
@@ -33,7 +31,7 @@ toc::[]
|
|
33
31
|
* Built atop {rubysmith_link} for building project skeleton.
|
34
32
|
* Uses {dry_link} for functional programming.
|
35
33
|
* Uses {hanami_link} for web application development.
|
36
|
-
* Uses {htmx_link} for
|
34
|
+
* Uses {htmx_link} for Hypermedia REST APIs (i.e. HTML over the wire) so you can write less code and avoid bloated JavaScript stacks.
|
37
35
|
* Uses {pg_link} coupled with {rom_link} for database management.
|
38
36
|
* Uses {rack_link}, specifically: `Rack::Deflater`, `Rack::Static`, and link:https://github.com/rack/rack-attack[Rack::Attack].
|
39
37
|
* Uses {puma_link} as the default web server and fully configured for local and production environments.
|
@@ -43,6 +41,14 @@ toc::[]
|
|
43
41
|
* Provides the `/up` health check endpoint via the `Health` slice.
|
44
42
|
* Disables link:https://github.com/ruby/irb[IRB] console autocomplete when used in production-like environments. You can re-enable IRB autocomplete by setting `IRB_USE_AUTOCOMPLETE=true` before launching your console in non development or test environments.
|
45
43
|
|
44
|
+
== Screenshots/Screencasts
|
45
|
+
|
46
|
+
image:https://alchemists.io/images/projects/hanamismith/screenshots/home.png[Home,width=802,height=813,role=focal_point]
|
47
|
+
|
48
|
+
The above is a screenshot of a _Demo_ project that was generated and run locally. For a fully working demonstration application -- as built by this gem -- check out the link:https://github.com/bkuhlmann/hemo[Hemo] project. Here's a quick screencast overview of this demonstration application in action:
|
49
|
+
|
50
|
+
video::https://alchemists.io/videos/projects/hemo/demo.mp4[poster=https://alchemists.io/images/projects/hemo/demo.png,width=800,height=450,role=focal_point]
|
51
|
+
|
46
52
|
== Requirements
|
47
53
|
|
48
54
|
. link:https://www.ruby-lang.org[Ruby].
|
@@ -93,7 +99,7 @@ link:https://alchemists.io/projects/rubysmith/#_configuration[Rubysmith]. It is
|
|
93
99
|
----
|
94
100
|
:project:
|
95
101
|
:url:
|
96
|
-
# Add
|
102
|
+
# Add key/value pairs here.
|
97
103
|
----
|
98
104
|
|
99
105
|
When these values exist, you'll benefit from having this information added to your generated project documentation. Otherwise -- if these values are empty -- they are removed from new project generation entirely.
|
@@ -119,7 +125,7 @@ bin/guard
|
|
119
125
|
git commit # (repeat until finished with implementation)
|
120
126
|
|
121
127
|
# Run: With Overmind (recommended)
|
122
|
-
overmind start --
|
128
|
+
overmind start --procfile Procfile.dev
|
123
129
|
|
124
130
|
# Run: Without Overmind
|
125
131
|
bin/hanami server
|
@@ -133,12 +139,12 @@ bin/hanami --help
|
|
133
139
|
|
134
140
|
Once the server is running you can visit (or ping) the following endpoints:
|
135
141
|
|
136
|
-
* `/`: The
|
142
|
+
* `/`: The home page.
|
137
143
|
* `/up`: The health status of the application. This will be _green_ (200 OK) when the server is up or _red_ (503 Service Unavailable) when the server is down.
|
138
144
|
|
139
145
|
=== Aliases
|
140
146
|
|
141
|
-
For link:https://www.gnu.org/software/bash[Bash] users -- or other shell users -- you might find
|
147
|
+
For link:https://www.gnu.org/software/bash[Bash] users -- or other shell users -- you might find these suggested aliases helpful in reducing keystrokes when using this gem:
|
142
148
|
|
143
149
|
[source,bash]
|
144
150
|
----
|
@@ -149,12 +155,6 @@ alias hsh="hanamismith --help"
|
|
149
155
|
|
150
156
|
The above is what I use via my {dotfiles_link} project.
|
151
157
|
|
152
|
-
=== Demonstrations
|
153
|
-
|
154
|
-
For a fully working demonstration application -- as built by this gem -- check out the link:https://github.com/bkuhlmann/hemo[Hemo] project. Here's a quick screencast overview of this demonstration application in action:
|
155
|
-
|
156
|
-
video::https://alchemists.io/videos/projects/hemo/demo.mp4[poster=https://alchemists.io/images/projects/hemo/demo.png,width=800,height=450,role=focal_point]
|
157
|
-
|
158
158
|
== Development
|
159
159
|
|
160
160
|
To contribute, run:
|
data/hanamismith.gemspec
CHANGED
@@ -56,7 +56,7 @@ module Hanamismith
|
|
56
56
|
"source",
|
57
57
|
%(gem "hanami-view", github: "hanami/view", branch: "main"\n)
|
58
58
|
)
|
59
|
-
.insert_after("source", %(gem "htmx", "~> 0.
|
59
|
+
.insert_after("source", %(gem "htmx", "~> 0.3"\n))
|
60
60
|
.insert_after("source", %(gem "puma", "~> 6.3"\n))
|
61
61
|
.insert_after("source", %(gem "rack-attack", "~> 6.6"\n))
|
62
62
|
end
|
@@ -14,6 +14,7 @@ module Hanamismith
|
|
14
14
|
|
15
15
|
super
|
16
16
|
builder.call(configuration.merge(template_path: "%project_name%/README.#{kind}.erb"))
|
17
|
+
.replace(/Setup.+Usage/m, setup)
|
17
18
|
.replace("Rubysmith", "Hanamismith")
|
18
19
|
.replace("rubysmith", "hanamismith")
|
19
20
|
|
@@ -25,6 +26,57 @@ module Hanamismith
|
|
25
26
|
attr_reader :configuration, :builder
|
26
27
|
|
27
28
|
def kind = configuration.documentation_format
|
29
|
+
|
30
|
+
def setup = kind == "adoc" ? ascii_setup : markdown_setup
|
31
|
+
|
32
|
+
# rubocop:disable Metrics/MethodLength
|
33
|
+
def ascii_setup
|
34
|
+
<<~CONTENT.strip
|
35
|
+
Setup
|
36
|
+
|
37
|
+
To set up the project, run:
|
38
|
+
|
39
|
+
[source,bash]
|
40
|
+
----
|
41
|
+
git clone #{configuration.computed_project_url_source}
|
42
|
+
cd #{configuration.project_name}
|
43
|
+
bin/setup
|
44
|
+
|
45
|
+
bin/hanami db create
|
46
|
+
bin/hanami db migrate
|
47
|
+
bin/hanami db seed
|
48
|
+
|
49
|
+
HANAMI_ENV=test bin/hanami db create
|
50
|
+
HANAMI_ENV=test bin/hanami db migrate
|
51
|
+
----
|
52
|
+
|
53
|
+
== Usage
|
54
|
+
CONTENT
|
55
|
+
end
|
56
|
+
|
57
|
+
def markdown_setup
|
58
|
+
<<~CONTENT.strip
|
59
|
+
Setup
|
60
|
+
|
61
|
+
To set up the project, run:
|
62
|
+
|
63
|
+
``` bash
|
64
|
+
git clone #{configuration.computed_project_url_source}
|
65
|
+
cd #{configuration.project_name}
|
66
|
+
bin/setup
|
67
|
+
|
68
|
+
bin/hanami db create
|
69
|
+
bin/hanami db migrate
|
70
|
+
bin/hanami db seed
|
71
|
+
|
72
|
+
HANAMI_ENV=test bin/hanami db create
|
73
|
+
HANAMI_ENV=test bin/hanami db migrate
|
74
|
+
```
|
75
|
+
|
76
|
+
## Usage
|
77
|
+
CONTENT
|
78
|
+
end
|
79
|
+
# rubocop:enable Metrics/MethodLength
|
28
80
|
end
|
29
81
|
end
|
30
82
|
end
|
@@ -9,15 +9,38 @@ module Hanamismith
|
|
9
9
|
class Helper < Rubysmith::Builders::RSpec::Helper
|
10
10
|
using Refinements::Structs
|
11
11
|
|
12
|
+
def initialize(...)
|
13
|
+
super
|
14
|
+
@instance = builder.call configuration.merge(
|
15
|
+
template_path: "%project_name%/spec/spec_helper.rb.erb"
|
16
|
+
)
|
17
|
+
end
|
18
|
+
|
12
19
|
def call
|
13
20
|
return configuration unless configuration.build_rspec
|
14
21
|
|
15
22
|
super
|
16
|
-
|
17
|
-
|
18
|
-
.replace(/require.+#{configuration.project_name}.+\n/, "")
|
23
|
+
remove_project_requirement
|
24
|
+
disable_simple_cov_eval
|
19
25
|
configuration
|
20
26
|
end
|
27
|
+
|
28
|
+
private
|
29
|
+
|
30
|
+
attr_reader :instance
|
31
|
+
|
32
|
+
def remove_project_requirement
|
33
|
+
instance.replace(/require.+#{configuration.project_name}.+\n/, "")
|
34
|
+
end
|
35
|
+
|
36
|
+
def disable_simple_cov_eval
|
37
|
+
instance.replace(
|
38
|
+
/enable_coverage_for_eval\n/,
|
39
|
+
"# TODO: Enable once this issue is fixed: " \
|
40
|
+
"https://bugs.ruby-lang.org/issues/19363.\n " \
|
41
|
+
"# enable_coverage_for_eval\n"
|
42
|
+
)
|
43
|
+
end
|
21
44
|
end
|
22
45
|
end
|
23
46
|
end
|
@@ -5,8 +5,8 @@ require "refinements/structs"
|
|
5
5
|
module Hanamismith
|
6
6
|
module Builders
|
7
7
|
module Slices
|
8
|
-
# Builds
|
9
|
-
class
|
8
|
+
# Builds home slice skeleton.
|
9
|
+
class Home
|
10
10
|
using Refinements::Structs
|
11
11
|
|
12
12
|
def self.call(...) = new(...).call
|
@@ -26,39 +26,48 @@ module Hanamismith
|
|
26
26
|
attr_reader :configuration, :builder
|
27
27
|
|
28
28
|
def add_action
|
29
|
-
path = "%project_name%/slices/
|
29
|
+
path = "%project_name%/slices/home/action.rb.erb"
|
30
30
|
builder.call(configuration.merge(template_path: path)).render
|
31
31
|
end
|
32
32
|
|
33
33
|
def add_repository
|
34
|
-
path = "%project_name%/slices/
|
34
|
+
path = "%project_name%/slices/home/repository.rb.erb"
|
35
35
|
builder.call(configuration.merge(template_path: path)).render
|
36
36
|
end
|
37
37
|
|
38
38
|
def add_view
|
39
|
-
path = "%project_name%/slices/
|
39
|
+
path = "%project_name%/slices/home/view.rb.erb"
|
40
40
|
builder.call(configuration.merge(template_path: path)).render
|
41
41
|
end
|
42
42
|
|
43
43
|
def add_layout_template
|
44
|
-
path = "%project_name%/slices/
|
44
|
+
path = "%project_name%/slices/home/templates/layouts/app.html.erb.erb"
|
45
45
|
builder.call(configuration.merge(template_path: path))
|
46
46
|
.render
|
47
|
+
.replace("<!-- title -->", "<%= content_for :title %>")
|
47
48
|
.replace("<!-- yield -->", "<%= yield %>")
|
48
49
|
end
|
49
50
|
|
50
51
|
def add_show_template
|
51
|
-
path = "%project_name%/slices/
|
52
|
-
|
52
|
+
path = "%project_name%/slices/home/templates/show.html.erb.erb"
|
53
|
+
|
54
|
+
builder.call(configuration.merge(template_path: path))
|
55
|
+
.render
|
56
|
+
.replace(
|
57
|
+
"<!-- title -->",
|
58
|
+
%(<% content_for :title, "#{configuration.project_label}" %>)
|
59
|
+
)
|
60
|
+
.replace("<!-- ruby_version -->", "<%= ruby_version %>")
|
61
|
+
.replace("<!-- hanami_version -->", "<%= hanami_version %>")
|
53
62
|
end
|
54
63
|
|
55
64
|
def add_show_view
|
56
|
-
path = "%project_name%/slices/
|
65
|
+
path = "%project_name%/slices/home/views/show.rb.erb"
|
57
66
|
builder.call(configuration.merge(template_path: path)).render
|
58
67
|
end
|
59
68
|
|
60
69
|
def add_show_action
|
61
|
-
path = "%project_name%/slices/
|
70
|
+
path = "%project_name%/slices/home/actions/show.rb.erb"
|
62
71
|
builder.call(configuration.merge(template_path: path)).render
|
63
72
|
end
|
64
73
|
end
|
@@ -1 +1 @@
|
|
1
|
-
web: rerun --dir app,config,lib,slices --pattern="**/*.{css,erb,js,rb}" -- bundle exec puma --config ./config/puma.rb
|
1
|
+
web: rerun --dir app,config,lib,public,slices --pattern="**/*.{css,erb,js,rb}" -- bundle exec puma --config ./config/puma.rb
|
@@ -0,0 +1,88 @@
|
|
1
|
+
html {
|
2
|
+
height: 100%;
|
3
|
+
}
|
4
|
+
|
5
|
+
.home-page {
|
6
|
+
--color-pink: hsl(306, 81%, 77%);
|
7
|
+
--color-red: hsl(11, 86%, 46%);
|
8
|
+
--color-rose: hsl(338, 27%, 88%);
|
9
|
+
--color-white: hsl(0, 0%, 100%);
|
10
|
+
--font-family: Verdana;
|
11
|
+
|
12
|
+
background-color: var(--color-white);
|
13
|
+
background-image:
|
14
|
+
radial-gradient(at 17% 25%, var(--color-rose) 0px, transparent 50%),
|
15
|
+
radial-gradient(at 17% 68%, var(--color-rose) 0px, transparent 50%),
|
16
|
+
radial-gradient(at 50% 45%, var(--color-pink) 0px, transparent 50%),
|
17
|
+
radial-gradient(at 81% 25%, var(--color-rose) 0px, transparent 50%),
|
18
|
+
radial-gradient(at 81% 68%, var(--color-rose) 0px, transparent 50%),
|
19
|
+
radial-gradient(at 9% 7%, var(--color-red) 0px, transparent 50%),
|
20
|
+
radial-gradient(at 9% 93%, var(--color-red) 0px, transparent 50%),
|
21
|
+
radial-gradient(at 91% 7%, var(--color-red) 0px, transparent 50%),
|
22
|
+
radial-gradient(at 91% 93%, var(--color-red) 0px, transparent 50%);
|
23
|
+
background-repeat: no-repeat;
|
24
|
+
display: flex;
|
25
|
+
flex-direction: column;
|
26
|
+
font-family: var(--font-family);
|
27
|
+
justify-content: space-between;
|
28
|
+
min-height: 97vh;
|
29
|
+
|
30
|
+
.navigation {
|
31
|
+
display: flex;
|
32
|
+
flex-wrap: wrap;
|
33
|
+
align-items: center;
|
34
|
+
justify-content: center;
|
35
|
+
flex-direction: column;
|
36
|
+
gap: 1rem;
|
37
|
+
list-style: none;
|
38
|
+
padding: 0;
|
39
|
+
|
40
|
+
.link {
|
41
|
+
color: var(--color-white);
|
42
|
+
font-weight: 600;
|
43
|
+
font-size: 1.5rem;
|
44
|
+
}
|
45
|
+
}
|
46
|
+
|
47
|
+
@media only screen and (min-width: 350px) {
|
48
|
+
.navigation {
|
49
|
+
flex-direction: row;
|
50
|
+
justify-content: normal;
|
51
|
+
margin: 1rem 2rem;
|
52
|
+
}
|
53
|
+
}
|
54
|
+
|
55
|
+
.body {
|
56
|
+
align-items: center;
|
57
|
+
display: flex;
|
58
|
+
flex-direction: column;
|
59
|
+
|
60
|
+
.label {
|
61
|
+
font-size: clamp(1.5rem, 2vw + 1rem, 2.25rem);
|
62
|
+
}
|
63
|
+
|
64
|
+
.logo {
|
65
|
+
max-width: 100%;
|
66
|
+
height: auto;
|
67
|
+
object-fit: cover;
|
68
|
+
}
|
69
|
+
}
|
70
|
+
|
71
|
+
.footer {
|
72
|
+
display: flex;
|
73
|
+
flex-direction: column;
|
74
|
+
gap: 1rem;
|
75
|
+
align-items: center;
|
76
|
+
|
77
|
+
.group {
|
78
|
+
display: flex;
|
79
|
+
flex-wrap: wrap;
|
80
|
+
gap: 1rem;
|
81
|
+
justify-content: center;
|
82
|
+
list-style: none;
|
83
|
+
margin: 0;
|
84
|
+
padding: 0;
|
85
|
+
text-align: center;
|
86
|
+
}
|
87
|
+
}
|
88
|
+
}
|
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
<html lang="en">
|
4
4
|
<head>
|
5
|
-
<title
|
5
|
+
<title><!-- title --></title>
|
6
6
|
|
7
7
|
<meta charset="utf-8">
|
8
8
|
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
@@ -19,12 +19,10 @@
|
|
19
19
|
href="https://alchemists.io/images/projects/hanamismith/icons/apple.png"
|
20
20
|
type="image/png">
|
21
21
|
<link title="<%= configuration.project_label %>: Manifest" rel="manifest" href="/manifest.webmanifest">
|
22
|
-
<link title="<%= configuration.project_label %>: Stylesheet" rel="stylesheet" href="/stylesheets/
|
23
|
-
|
24
|
-
<script src="/javascripts/htmx.js"></script>
|
22
|
+
<link title="<%= configuration.project_label %>: Stylesheet" rel="stylesheet" href="/stylesheets/home.css" type="text/css">
|
25
23
|
</head>
|
26
24
|
|
27
|
-
<body class="
|
25
|
+
<body class="home-page">
|
28
26
|
<!-- yield -->
|
29
27
|
</body>
|
30
28
|
</html>
|
@@ -0,0 +1,41 @@
|
|
1
|
+
<!-- title -->
|
2
|
+
|
3
|
+
<header class="header">
|
4
|
+
<nav>
|
5
|
+
<ul class="navigation">
|
6
|
+
<li><a href="/" class="link">Home</a></li>
|
7
|
+
</ul>
|
8
|
+
</nav>
|
9
|
+
</header>
|
10
|
+
|
11
|
+
<main class="body">
|
12
|
+
<img src="https://alchemists.io/images/projects/hanamismith/icons/small.png"
|
13
|
+
alt="Icon"
|
14
|
+
class="logo"
|
15
|
+
width="192"
|
16
|
+
height="192">
|
17
|
+
|
18
|
+
<h1 class="label"><%= configuration.project_label %></h1>
|
19
|
+
</main>
|
20
|
+
|
21
|
+
<footer class="footer">
|
22
|
+
<ul class="group">
|
23
|
+
<li><a href="https://hanamirb.org">Hanami</a></li>
|
24
|
+
<li><a href="https://guides.hanamirb.org/v2.0/introduction/getting-started">Guides</a></li>
|
25
|
+
<li><a href="https://discourse.hanamirb.org">Forum</a></li>
|
26
|
+
<li><a href="https://github.com/hanami/hanami/issues">Issues</a></li>
|
27
|
+
<li><a href="https://hanamirb.org/status/">Status</a></li>
|
28
|
+
<li><a href="https://github.com/hanami/hanami">Source</a></li>
|
29
|
+
</ul>
|
30
|
+
|
31
|
+
<ul class="group">
|
32
|
+
<li><a href="https://alchemists.io/projects/hanamismith">Hanamismith</a></li>
|
33
|
+
<li><a href="https://github.com/bkuhlmann/hanamismith/issues">Issues</a></li>
|
34
|
+
<li><a href="https://github.com/bkuhlmann/hanamismith">Source</a></li>
|
35
|
+
</ul>
|
36
|
+
|
37
|
+
<ul class="group">
|
38
|
+
<li>Ruby <!-- ruby_version --></li>
|
39
|
+
<li>Hanami <!-- hanami_version --></li>
|
40
|
+
</ul>
|
41
|
+
</footer>
|
@@ -17,7 +17,9 @@ Capybara.server = :puma, {Silent: true}
|
|
17
17
|
Capybara.javascript_driver = :cuprite
|
18
18
|
Capybara.save_path = Hanami.app.root.join "tmp/capybara"
|
19
19
|
Capybara.register_driver :cuprite do |app|
|
20
|
-
Capybara::Cuprite::Driver.new app,
|
20
|
+
Capybara::Cuprite::Driver.new app,
|
21
|
+
browser_options: {"no-sandbox" => nil},
|
22
|
+
window_size: [1200, 800]
|
21
23
|
end
|
22
24
|
|
23
25
|
DatabaseCleaner[:sequel].strategy = :transaction
|
data.tar.gz.sig
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hanamismith
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.17.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Brooke Kuhlmann
|
@@ -35,7 +35,7 @@ cert_chain:
|
|
35
35
|
3n5C8/6Zh9DYTkpcwPSuIfAga6wf4nXc9m6JAw8AuMLaiWN/r/2s4zJsUHYERJEu
|
36
36
|
gZGm4JqtuSg8pYjPeIJxS960owq+SfuC+jxqmRA54BisFCv/0VOJi7tiJVY=
|
37
37
|
-----END CERTIFICATE-----
|
38
|
-
date: 2023-08-
|
38
|
+
date: 2023-08-20 00:00:00.000000000 Z
|
39
39
|
dependencies:
|
40
40
|
- !ruby/object:Gem::Dependency
|
41
41
|
name: cogger
|
@@ -275,7 +275,7 @@ files:
|
|
275
275
|
- lib/hanamismith/builders/rspec/hanami.rb
|
276
276
|
- lib/hanamismith/builders/rspec/helper.rb
|
277
277
|
- lib/hanamismith/builders/slices/health.rb
|
278
|
-
- lib/hanamismith/builders/slices/
|
278
|
+
- lib/hanamismith/builders/slices/home.rb
|
279
279
|
- lib/hanamismith/builders/stylesheet.rb
|
280
280
|
- lib/hanamismith/cli/commands/build.rb
|
281
281
|
- lib/hanamismith/cli/shell.rb
|
@@ -303,15 +303,15 @@ files:
|
|
303
303
|
- lib/hanamismith/templates/%project_name%/public/icon.svg.erb
|
304
304
|
- lib/hanamismith/templates/%project_name%/public/javascripts/htmx.js.erb
|
305
305
|
- lib/hanamismith/templates/%project_name%/public/manifest.webmanifest.erb
|
306
|
-
- lib/hanamismith/templates/%project_name%/public/stylesheets/
|
306
|
+
- lib/hanamismith/templates/%project_name%/public/stylesheets/home.css.erb
|
307
307
|
- lib/hanamismith/templates/%project_name%/slices/health/actions/show.rb.erb
|
308
|
-
- lib/hanamismith/templates/%project_name%/slices/
|
309
|
-
- lib/hanamismith/templates/%project_name%/slices/
|
310
|
-
- lib/hanamismith/templates/%project_name%/slices/
|
311
|
-
- lib/hanamismith/templates/%project_name%/slices/
|
312
|
-
- lib/hanamismith/templates/%project_name%/slices/
|
313
|
-
- lib/hanamismith/templates/%project_name%/slices/
|
314
|
-
- lib/hanamismith/templates/%project_name%/slices/
|
308
|
+
- lib/hanamismith/templates/%project_name%/slices/home/action.rb.erb
|
309
|
+
- lib/hanamismith/templates/%project_name%/slices/home/actions/show.rb.erb
|
310
|
+
- lib/hanamismith/templates/%project_name%/slices/home/repository.rb.erb
|
311
|
+
- lib/hanamismith/templates/%project_name%/slices/home/templates/layouts/app.html.erb.erb
|
312
|
+
- lib/hanamismith/templates/%project_name%/slices/home/templates/show.html.erb.erb
|
313
|
+
- lib/hanamismith/templates/%project_name%/slices/home/view.rb.erb
|
314
|
+
- lib/hanamismith/templates/%project_name%/slices/home/views/show.rb.erb
|
315
315
|
- lib/hanamismith/templates/%project_name%/spec/hanami_helper.rb.erb
|
316
316
|
- lib/hanamismith/templates/%project_name%/spec/lib/%project_path%/refines/actions/response_spec.rb.erb
|
317
317
|
- lib/hanamismith/templates/%project_name%/spec/slices/health/actions/show_spec.rb.erb
|
@@ -344,7 +344,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
344
344
|
- !ruby/object:Gem::Version
|
345
345
|
version: '0'
|
346
346
|
requirements: []
|
347
|
-
rubygems_version: 3.4.
|
347
|
+
rubygems_version: 3.4.19
|
348
348
|
signing_key:
|
349
349
|
specification_version: 4
|
350
350
|
summary: A command line interface for smithing Hanami projects.
|
metadata.gz.sig
CHANGED
Binary file
|