Skip to content

Commit 660484f

Browse files
committed
Integrate Herb::Engine
1 parent 0c70148 commit 660484f

35 files changed

Lines changed: 1421 additions & 607 deletions

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,5 @@
66
/pkg/
77
/spec/reports/
88
/tmp/
9+
/app/assets/javascripts/
10+
/javascript/packages/**/dist/

.rubocop.yml

Lines changed: 56 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,67 @@ AllCops:
22
NewCops: enable
33
SuggestExtensions: false
44
TargetRubyVersion: 3.1
5+
Exclude:
6+
- node_modules/**/*
57

68
Style/StringLiterals:
9+
Enabled: true
710
EnforcedStyle: double_quotes
811

12+
Style/ClassAndModuleChildren:
13+
Enabled: false
14+
15+
Style/Documentation:
16+
Enabled: false
17+
918
Style/StringLiteralsInInterpolation:
19+
Enabled: true
1020
EnforcedStyle: double_quotes
1121

12-
Style/Documentation:
22+
Style/WordArray:
23+
Enabled: false
24+
25+
Style/SymbolArray:
26+
Enabled: false
27+
28+
Style/BlockDelimiters:
29+
Enabled: false
30+
31+
Style/AccessorGrouping:
32+
Enabled: false
33+
34+
Style/TrailingCommaInHashLiteral:
35+
EnforcedStyleForMultiline: diff_comma
36+
37+
Metrics/AbcSize:
38+
Enabled: false
39+
40+
Metrics/PerceivedComplexity:
41+
Max: 15
42+
43+
Metrics/CyclomaticComplexity:
44+
Max: 15
45+
46+
Metrics/MethodLength:
47+
Max: 25
48+
Exclude:
49+
- test/**/*_test.rb
50+
51+
Metrics/ClassLength:
52+
Enabled: false
53+
54+
Metrics/BlockLength:
55+
Max: 30
56+
Exclude:
57+
- test/**/*_test.rb
58+
59+
Layout/LineLength:
60+
Max: 150
61+
Exclude:
62+
- test/**/*_test.rb
63+
64+
Layout/FirstHashElementIndentation:
65+
EnforcedStyle: consistent
66+
67+
Layout/LeadingCommentSpace:
1368
Enabled: false

CODE_OF_CONDUCT.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,8 +59,7 @@ representative at an online or offline event.
5959
## Enforcement
6060

6161
Instances of abusive, harassing, or otherwise unacceptable behavior may be
62-
reported to the community leaders responsible for enforcement at
63-
[INSERT CONTACT METHOD].
62+
reported to the community leaders responsible for enforcement at marco.roth@intergga.ch.
6463
All complaints will be reviewed and investigated promptly and fairly.
6564

6665
All community leaders are obligated to respect the privacy and security of the

Gemfile

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,11 @@ source "https://rubygems.org"
44

55
gemspec
66

7+
gem "actionview", "~> 8.0"
8+
gem "herb"
9+
gem "maxitest"
710
gem "minitest", "~> 5.16"
11+
gem "minitest-difftastic"
12+
gem "railties", "~> 8.0"
813
gem "rake", "~> 13.0"
9-
gem "rubocop", "~> 1.21"
14+
gem "rubocop", "~> 1.80.1"

Gemfile.lock

Lines changed: 49 additions & 102 deletions
Original file line numberDiff line numberDiff line change
@@ -2,32 +2,14 @@ PATH
22
remote: .
33
specs:
44
reactionview (0.0.1)
5-
erubi
6-
rails (>= 6.0)
5+
actionview (>= 7.0)
6+
herb (~> 0.6.1)
7+
nokogiri
8+
prism
79

810
GEM
911
remote: https://rubygems.org/
1012
specs:
11-
actioncable (8.0.2)
12-
actionpack (= 8.0.2)
13-
activesupport (= 8.0.2)
14-
nio4r (~> 2.0)
15-
websocket-driver (>= 0.6.1)
16-
zeitwerk (~> 2.6)
17-
actionmailbox (8.0.2)
18-
actionpack (= 8.0.2)
19-
activejob (= 8.0.2)
20-
activerecord (= 8.0.2)
21-
activestorage (= 8.0.2)
22-
activesupport (= 8.0.2)
23-
mail (>= 2.8.0)
24-
actionmailer (8.0.2)
25-
actionpack (= 8.0.2)
26-
actionview (= 8.0.2)
27-
activejob (= 8.0.2)
28-
activesupport (= 8.0.2)
29-
mail (>= 2.8.0)
30-
rails-dom-testing (~> 2.2)
3113
actionpack (8.0.2)
3214
actionview (= 8.0.2)
3315
activesupport (= 8.0.2)
@@ -38,34 +20,12 @@ GEM
3820
rails-dom-testing (~> 2.2)
3921
rails-html-sanitizer (~> 1.6)
4022
useragent (~> 0.16)
41-
actiontext (8.0.2)
42-
actionpack (= 8.0.2)
43-
activerecord (= 8.0.2)
44-
activestorage (= 8.0.2)
45-
activesupport (= 8.0.2)
46-
globalid (>= 0.6.0)
47-
nokogiri (>= 1.8.5)
4823
actionview (8.0.2)
4924
activesupport (= 8.0.2)
5025
builder (~> 3.1)
5126
erubi (~> 1.11)
5227
rails-dom-testing (~> 2.2)
5328
rails-html-sanitizer (~> 1.6)
54-
activejob (8.0.2)
55-
activesupport (= 8.0.2)
56-
globalid (>= 0.3.6)
57-
activemodel (8.0.2)
58-
activesupport (= 8.0.2)
59-
activerecord (8.0.2)
60-
activemodel (= 8.0.2)
61-
activesupport (= 8.0.2)
62-
timeout (>= 0.4.0)
63-
activestorage (8.0.2)
64-
actionpack (= 8.0.2)
65-
activejob (= 8.0.2)
66-
activerecord (= 8.0.2)
67-
activesupport (= 8.0.2)
68-
marcel (~> 1.0)
6929
activesupport (8.0.2)
7030
base64
7131
benchmark (>= 0.3)
@@ -79,7 +39,7 @@ GEM
7939
securerandom (>= 0.3)
8040
tzinfo (~> 2.0, >= 2.0.5)
8141
uri (>= 0.13.1)
82-
ast (2.4.2)
42+
ast (2.4.3)
8343
base64 (0.3.0)
8444
benchmark (0.4.1)
8545
bigdecimal (3.2.2)
@@ -88,78 +48,64 @@ GEM
8848
connection_pool (2.5.3)
8949
crass (1.0.6)
9050
date (3.4.1)
51+
difftastic (0.7.0)
52+
pretty_please
53+
difftastic (0.7.0-arm64-darwin)
54+
pretty_please
55+
dispersion (0.2.0)
56+
prism
9157
drb (2.2.3)
92-
erb (5.0.1)
58+
erb (5.0.2)
9359
erubi (1.13.1)
94-
globalid (1.2.1)
95-
activesupport (>= 6.1)
60+
herb (0.6.1)
61+
herb (0.6.1-arm64-darwin)
9662
i18n (1.14.7)
9763
concurrent-ruby (~> 1.0)
98-
io-console (0.8.0)
64+
io-console (0.8.1)
9965
irb (1.15.2)
10066
pp (>= 0.6.0)
10167
rdoc (>= 4.0.0)
10268
reline (>= 0.4.2)
103-
json (2.10.1)
104-
language_server-protocol (3.17.0.4)
69+
json (2.13.2)
70+
language_server-protocol (3.17.0.5)
10571
lint_roller (1.1.0)
10672
logger (1.7.0)
10773
loofah (2.24.0)
10874
crass (~> 1.0.2)
10975
nokogiri (>= 1.12.0)
110-
mail (2.8.1)
111-
mini_mime (>= 0.1.1)
112-
net-imap
113-
net-pop
114-
net-smtp
115-
marcel (1.0.4)
116-
mini_mime (1.1.5)
76+
maxitest (6.0.0)
77+
minitest (>= 5.20.0, < 5.26.0)
78+
mini_portile2 (2.8.9)
11779
minitest (5.25.4)
118-
net-imap (0.5.7)
119-
date
120-
net-protocol
121-
net-pop (0.1.2)
122-
net-protocol
123-
net-protocol (0.2.2)
124-
timeout
125-
net-smtp (0.5.1)
126-
net-protocol
127-
nio4r (2.7.4)
80+
minitest-difftastic (0.2.1)
81+
difftastic (~> 0.6)
82+
nokogiri (1.18.8)
83+
mini_portile2 (~> 2.8.2)
84+
racc (~> 1.4)
12885
nokogiri (1.18.8-arm64-darwin)
12986
racc (~> 1.4)
130-
parallel (1.26.3)
131-
parser (3.3.7.1)
87+
parallel (1.27.0)
88+
parser (3.3.9.0)
13289
ast (~> 2.4.1)
13390
racc
13491
pp (0.6.2)
13592
prettyprint
93+
pretty_please (0.2.0)
94+
dispersion (~> 0.2)
13695
prettyprint (0.2.0)
96+
prism (1.4.0)
13797
psych (5.2.6)
13898
date
13999
stringio
140100
racc (1.8.1)
141-
rack (3.1.14)
142-
rack-session (2.1.0)
101+
rack (3.2.0)
102+
rack-session (2.1.1)
143103
base64 (>= 0.1.0)
144104
rack (>= 3.0.0)
145105
rack-test (2.2.0)
146106
rack (>= 1.3)
147107
rackup (2.2.1)
148108
rack (>= 3)
149-
rails (8.0.2)
150-
actioncable (= 8.0.2)
151-
actionmailbox (= 8.0.2)
152-
actionmailer (= 8.0.2)
153-
actionpack (= 8.0.2)
154-
actiontext (= 8.0.2)
155-
actionview (= 8.0.2)
156-
activejob (= 8.0.2)
157-
activemodel (= 8.0.2)
158-
activerecord (= 8.0.2)
159-
activestorage (= 8.0.2)
160-
activesupport (= 8.0.2)
161-
bundler (>= 1.15.0)
162-
railties (= 8.0.2)
163109
rails-dom-testing (2.2.0)
164110
activesupport (>= 5.0.0)
165111
minitest
@@ -177,52 +123,53 @@ GEM
177123
zeitwerk (~> 2.6)
178124
rainbow (3.1.1)
179125
rake (13.2.1)
180-
rdoc (6.14.1)
126+
rdoc (6.14.2)
181127
erb
182128
psych (>= 4.0.0)
183-
regexp_parser (2.10.0)
184-
reline (0.6.1)
129+
regexp_parser (2.11.2)
130+
reline (0.6.2)
185131
io-console (~> 0.5)
186-
rubocop (1.72.2)
132+
rubocop (1.80.1)
187133
json (~> 2.3)
188134
language_server-protocol (~> 3.17.0.2)
189135
lint_roller (~> 1.1.0)
190136
parallel (~> 1.10)
191137
parser (>= 3.3.0.2)
192138
rainbow (>= 2.2.2, < 4.0)
193139
regexp_parser (>= 2.9.3, < 3.0)
194-
rubocop-ast (>= 1.38.0, < 2.0)
140+
rubocop-ast (>= 1.46.0, < 2.0)
195141
ruby-progressbar (~> 1.7)
196142
unicode-display_width (>= 2.4.0, < 4.0)
197-
rubocop-ast (1.38.0)
198-
parser (>= 3.3.1.0)
143+
rubocop-ast (1.46.0)
144+
parser (>= 3.3.7.2)
145+
prism (~> 1.4)
199146
ruby-progressbar (1.13.0)
200147
securerandom (0.4.1)
201148
stringio (3.1.7)
202-
thor (1.3.2)
203-
timeout (0.4.3)
149+
thor (1.4.0)
204150
tzinfo (2.0.6)
205151
concurrent-ruby (~> 1.0)
206-
unicode-display_width (3.1.4)
152+
unicode-display_width (3.1.5)
207153
unicode-emoji (~> 4.0, >= 4.0.4)
208154
unicode-emoji (4.0.4)
209155
uri (1.0.3)
210156
useragent (0.16.11)
211-
websocket-driver (0.7.7)
212-
base64
213-
websocket-extensions (>= 0.1.0)
214-
websocket-extensions (0.1.5)
215-
zeitwerk (2.7.2)
157+
zeitwerk (2.7.3)
216158

217159
PLATFORMS
218160
arm64-darwin-24
219161
ruby
220162

221163
DEPENDENCIES
164+
actionview (~> 8.0)
165+
herb
166+
maxitest
222167
minitest (~> 5.16)
168+
minitest-difftastic
169+
railties (~> 8.0)
223170
rake (~> 13.0)
224171
reactionview!
225-
rubocop (~> 1.21)
172+
rubocop (~> 1.80.1)
226173

227174
BUNDLED WITH
228175
2.6.3

LICENSE.txt

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
The MIT License (MIT)
2+
3+
Copyright (c) 2025 Marco Roth
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in
13+
all copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21+
THE SOFTWARE.

0 commit comments

Comments
 (0)