@struq/skill 0.4.3 → 0.5.0
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.
- package/README.md +1 -1
- package/package.json +2 -2
- package/skills/struq/SKILL.md +145 -89
- package/skills/struq/blocks/CATALOG.md +74 -22
- package/skills/struq/blocks/backgrounds/background-aurora.tsx +34 -12
- package/skills/struq/blocks/backgrounds/background-facets.tsx +14 -6
- package/skills/struq/blocks/backgrounds/background-silk.tsx +40 -15
- package/skills/struq/blocks/catalog.json +697 -16
- package/skills/struq/blocks/film.json +426 -0
- package/skills/struq/blocks/footers/footer-contact.tsx +81 -55
- package/skills/struq/blocks/footers/footer-reveal.tsx +1 -1
- package/skills/struq/blocks/headers/header-bar.tsx +24 -13
- package/skills/struq/blocks/headers/menu-curtain.tsx +24 -11
- package/skills/struq/blocks/heroes/hero-framed.tsx +33 -20
- package/skills/struq/blocks/heroes/hero-index.tsx +32 -11
- package/skills/struq/blocks/heroes/hero-poster.tsx +68 -35
- package/skills/struq/blocks/heroes/hero-split.tsx +22 -9
- package/skills/struq/blocks/heroes/hero-still.tsx +80 -74
- package/skills/struq/blocks/kit/accent.ts +82 -0
- package/skills/struq/blocks/kit/blocks.css +78 -35
- package/skills/struq/blocks/kit/quiet/Close.tsx +73 -0
- package/skills/struq/blocks/kit/quiet/PhotoText.tsx +79 -0
- package/skills/struq/blocks/kit/quiet/Rows.tsx +81 -0
- package/skills/struq/blocks/kit/quiet/Statement.tsx +157 -0
- package/skills/struq/blocks/kit/quiet/index.ts +7 -0
- package/skills/struq/blocks/kit/quiet/sheet.ts +12 -0
- package/skills/struq/blocks/page-transitions/page-transition-gate.tsx +87 -36
- package/skills/struq/blocks/preloaders/preloader-gate.tsx +116 -46
- package/skills/struq/blocks/preloaders/preloader-stack.tsx +10 -7
- package/skills/struq/blocks/sections/contact-form.tsx +1 -1
- package/skills/struq/blocks/sections/cta-closing.tsx +3 -2
- package/skills/struq/blocks/sections/fanned-cards.tsx +14 -10
- package/skills/struq/blocks/sections/film-strip.tsx +18 -14
- package/skills/struq/blocks/sections/grid-assembly.tsx +16 -11
- package/skills/struq/blocks/sections/manifesto.tsx +3 -2
- package/skills/struq/blocks/sections/panel-accordion.tsx +3 -2
- package/skills/struq/blocks/sections/split-pair.tsx +4 -3
- package/skills/struq/blocks/showpieces/hero-opener.tsx +76 -17
- package/skills/struq/blocks/showpieces/wordmark-finale.tsx +3 -1
- package/skills/struq/blocks/transitions/zoom-through.tsx +9 -10
- package/skills/struq/canon/canon.json +1 -1
- package/skills/struq/references/craft.md +4 -0
- package/skills/struq/references/film.md +158 -0
- package/skills/struq/references/triage.md +3 -0
- package/skills/struq/scripts/blocks.mjs +89 -7
- package/skills/struq/scripts/canon.mjs +8 -1
- package/skills/struq/scripts/check.mjs +94 -11
- package/skills/struq/scripts/film-check.mjs +997 -0
- package/skills/struq/scripts/gate.mjs +146 -0
- package/skills/struq/scripts/packs.mjs +73 -12
|
@@ -0,0 +1,426 @@
|
|
|
1
|
+
{
|
|
2
|
+
"source": {
|
|
3
|
+
"repo": "Struq blocks/film/arcs.ts",
|
|
4
|
+
"ref": "origin/main",
|
|
5
|
+
"commit": "95e54a2"
|
|
6
|
+
},
|
|
7
|
+
"ARC_RULES": [
|
|
8
|
+
"A loud scene moves with the scroll (a pin, a scrub, a reveal to full bleed); a quiet scene is type and a photo that enter once and sit still. Tag a scene (loud) when the block's energy is 2 or more, (quiet) at 1 or less or for an own scene.",
|
|
9
|
+
"Pick the language by the client's sector. Another language only when the brief asks for that feel in its own words; then quote those words on the Language line. The idea may pick another motif of the six.",
|
|
10
|
+
"preloader-gate is neutral by default (a hairline ring an accent arc fills once, or the client's own marks); its leader dial (dial=\"leader\" with marks 3, 2, 1) is for a film client only.",
|
|
11
|
+
"The header is header-bar:quiet or :settle; sections say their ground with data-bar-tone.",
|
|
12
|
+
"Each arc is loud only at the opening, the centerpiece and at most one gentle scene with a quiet scene on each side. Swap at most one scene; a block the user names goes in first.",
|
|
13
|
+
"The Statement is the first type moment: an own scene, one sentence at 12 to 16vw with SplitHeadline, still. Only the Statement and the Close are type alone: every other own scene sets a photo (MediaFrame) beside its type on the 12 column grid, so a quiet scene is composed, never empty."
|
|
14
|
+
],
|
|
15
|
+
"FILM_ARCS": [
|
|
16
|
+
{
|
|
17
|
+
"language": "weight",
|
|
18
|
+
"scenes": [
|
|
19
|
+
{
|
|
20
|
+
"name": "Arrival",
|
|
21
|
+
"tag": "frame",
|
|
22
|
+
"tone": [
|
|
23
|
+
"paper"
|
|
24
|
+
],
|
|
25
|
+
"blocks": [
|
|
26
|
+
"preloader-stack"
|
|
27
|
+
],
|
|
28
|
+
"own": false,
|
|
29
|
+
"note": "The print lands on the hero photo."
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
"name": "Opening",
|
|
33
|
+
"tag": "loud",
|
|
34
|
+
"tone": [
|
|
35
|
+
"paper"
|
|
36
|
+
],
|
|
37
|
+
"blocks": [
|
|
38
|
+
"hero-framed:wand",
|
|
39
|
+
"hero-framed:portret",
|
|
40
|
+
"hero-still:frame",
|
|
41
|
+
"hero-still:still"
|
|
42
|
+
],
|
|
43
|
+
"own": false,
|
|
44
|
+
"note": "A short hold. Calmer: hero-still:still (quiet)."
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
"name": "Statement",
|
|
48
|
+
"tag": "quiet",
|
|
49
|
+
"tone": [
|
|
50
|
+
"paper"
|
|
51
|
+
],
|
|
52
|
+
"blocks": [],
|
|
53
|
+
"own": true,
|
|
54
|
+
"kit": "Statement",
|
|
55
|
+
"note": "Own scene: one sentence at 12 to 16vw with SplitHeadline, still."
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
"name": "About",
|
|
59
|
+
"tag": "loud",
|
|
60
|
+
"tone": [
|
|
61
|
+
"paper"
|
|
62
|
+
],
|
|
63
|
+
"blocks": [
|
|
64
|
+
"about-studio:wandeling",
|
|
65
|
+
"about-studio:plaat"
|
|
66
|
+
],
|
|
67
|
+
"own": true,
|
|
68
|
+
"kit": "PhotoText",
|
|
69
|
+
"note": "The gentle loud scene. about-studio:plaat is a full-bleed reveal; or a quiet own scene."
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
"name": "Approach",
|
|
73
|
+
"tag": "quiet",
|
|
74
|
+
"tone": [
|
|
75
|
+
"paper"
|
|
76
|
+
],
|
|
77
|
+
"blocks": [
|
|
78
|
+
"approach:schuif"
|
|
79
|
+
],
|
|
80
|
+
"own": true,
|
|
81
|
+
"kit": "Rows",
|
|
82
|
+
"note": "Or an own scene of hairline rows."
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
"name": "Centerpiece",
|
|
86
|
+
"tag": "loud",
|
|
87
|
+
"tone": [
|
|
88
|
+
"ink"
|
|
89
|
+
],
|
|
90
|
+
"blocks": [
|
|
91
|
+
"image-to-fullbleed",
|
|
92
|
+
"grid-assembly",
|
|
93
|
+
"zoom-through",
|
|
94
|
+
"project-stack"
|
|
95
|
+
],
|
|
96
|
+
"own": false,
|
|
97
|
+
"note": "project-stack only with real projects."
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
"name": "Release",
|
|
101
|
+
"tag": "quiet",
|
|
102
|
+
"tone": [
|
|
103
|
+
"paper"
|
|
104
|
+
],
|
|
105
|
+
"blocks": [],
|
|
106
|
+
"own": true,
|
|
107
|
+
"kit": "PhotoText",
|
|
108
|
+
"note": "Own scene, a photo and a short text."
|
|
109
|
+
},
|
|
110
|
+
{
|
|
111
|
+
"name": "Close",
|
|
112
|
+
"tag": "quiet",
|
|
113
|
+
"tone": [
|
|
114
|
+
"paper"
|
|
115
|
+
],
|
|
116
|
+
"blocks": [],
|
|
117
|
+
"own": true,
|
|
118
|
+
"kit": "Close",
|
|
119
|
+
"footer": [
|
|
120
|
+
"wordmark-finale"
|
|
121
|
+
],
|
|
122
|
+
"note": "Own scene echoing the opening, type only after a full-bleed centerpiece."
|
|
123
|
+
}
|
|
124
|
+
]
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
"language": "cut",
|
|
128
|
+
"scenes": [
|
|
129
|
+
{
|
|
130
|
+
"name": "Arrival",
|
|
131
|
+
"tag": "frame",
|
|
132
|
+
"tone": [
|
|
133
|
+
"paper"
|
|
134
|
+
],
|
|
135
|
+
"blocks": [
|
|
136
|
+
"preloader-slices"
|
|
137
|
+
],
|
|
138
|
+
"own": false,
|
|
139
|
+
"note": "Its caption from the lexicon."
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
"name": "Opening",
|
|
143
|
+
"tag": "loud",
|
|
144
|
+
"tone": [
|
|
145
|
+
"paper"
|
|
146
|
+
],
|
|
147
|
+
"blocks": [
|
|
148
|
+
"hero-poster",
|
|
149
|
+
"hero-index:lijst",
|
|
150
|
+
"hero-index:venster",
|
|
151
|
+
"hero-split:naad",
|
|
152
|
+
"hero-split:liggend"
|
|
153
|
+
],
|
|
154
|
+
"own": false,
|
|
155
|
+
"note": "hero-poster in poster type; quiet: hero-index:lijst, :venster, hero-split:naad, :liggend."
|
|
156
|
+
},
|
|
157
|
+
{
|
|
158
|
+
"name": "Work",
|
|
159
|
+
"tag": "quiet",
|
|
160
|
+
"tone": [
|
|
161
|
+
"paper"
|
|
162
|
+
],
|
|
163
|
+
"blocks": [
|
|
164
|
+
"hover-list",
|
|
165
|
+
"image-trail",
|
|
166
|
+
"reveals:clip"
|
|
167
|
+
],
|
|
168
|
+
"own": false,
|
|
169
|
+
"note": "After hero-index, already a list, reveals:clip."
|
|
170
|
+
},
|
|
171
|
+
{
|
|
172
|
+
"name": "Statement",
|
|
173
|
+
"tag": "quiet",
|
|
174
|
+
"tone": [
|
|
175
|
+
"paper"
|
|
176
|
+
],
|
|
177
|
+
"blocks": [],
|
|
178
|
+
"own": true,
|
|
179
|
+
"kit": "Statement",
|
|
180
|
+
"note": "Own scene: one sentence at 12 to 16vw with SplitHeadline, still."
|
|
181
|
+
},
|
|
182
|
+
{
|
|
183
|
+
"name": "Centerpiece",
|
|
184
|
+
"tag": "loud",
|
|
185
|
+
"tone": [
|
|
186
|
+
"ink"
|
|
187
|
+
],
|
|
188
|
+
"blocks": [
|
|
189
|
+
"split-pair",
|
|
190
|
+
"panel-wipe",
|
|
191
|
+
"project-stack",
|
|
192
|
+
"fanned-cards",
|
|
193
|
+
"film-strip"
|
|
194
|
+
],
|
|
195
|
+
"own": false,
|
|
196
|
+
"note": "film-strip for film clients."
|
|
197
|
+
},
|
|
198
|
+
{
|
|
199
|
+
"name": "Release",
|
|
200
|
+
"tag": "quiet",
|
|
201
|
+
"tone": [
|
|
202
|
+
"paper"
|
|
203
|
+
],
|
|
204
|
+
"blocks": [
|
|
205
|
+
"fill-rows"
|
|
206
|
+
],
|
|
207
|
+
"own": true,
|
|
208
|
+
"kit": "Rows",
|
|
209
|
+
"note": "Or an own scene of hairline rows."
|
|
210
|
+
},
|
|
211
|
+
{
|
|
212
|
+
"name": "Close",
|
|
213
|
+
"tag": "quiet",
|
|
214
|
+
"tone": [
|
|
215
|
+
"paper"
|
|
216
|
+
],
|
|
217
|
+
"blocks": [
|
|
218
|
+
"cta-closing:pointer"
|
|
219
|
+
],
|
|
220
|
+
"own": true,
|
|
221
|
+
"ownFirst": true,
|
|
222
|
+
"kit": "Close",
|
|
223
|
+
"footer": [
|
|
224
|
+
"footer-contact"
|
|
225
|
+
],
|
|
226
|
+
"note": "Type only in an own scene, or cta-closing:pointer."
|
|
227
|
+
}
|
|
228
|
+
]
|
|
229
|
+
},
|
|
230
|
+
{
|
|
231
|
+
"language": "curtain",
|
|
232
|
+
"scenes": [
|
|
233
|
+
{
|
|
234
|
+
"name": "Arrival",
|
|
235
|
+
"tag": "frame",
|
|
236
|
+
"tone": [
|
|
237
|
+
"field",
|
|
238
|
+
"ink"
|
|
239
|
+
],
|
|
240
|
+
"blocks": [
|
|
241
|
+
"preloader-gate",
|
|
242
|
+
"preloader-wordmark:split"
|
|
243
|
+
],
|
|
244
|
+
"own": false,
|
|
245
|
+
"note": "The gate opens on its lit line onto the opening, its dial neutral; or preloader-wordmark:split, the name parting on its line."
|
|
246
|
+
},
|
|
247
|
+
{
|
|
248
|
+
"name": "Opening",
|
|
249
|
+
"tag": "loud",
|
|
250
|
+
"tone": [
|
|
251
|
+
"field",
|
|
252
|
+
"ink"
|
|
253
|
+
],
|
|
254
|
+
"blocks": [
|
|
255
|
+
"hero-opener",
|
|
256
|
+
"background-aurora",
|
|
257
|
+
"background-silk",
|
|
258
|
+
"background-facets",
|
|
259
|
+
"hero-still:horizon"
|
|
260
|
+
],
|
|
261
|
+
"own": false,
|
|
262
|
+
"note": "hero-opener or a background block, the line at poster scale; calmer, hero-still:horizon (quiet)."
|
|
263
|
+
},
|
|
264
|
+
{
|
|
265
|
+
"name": "Statement",
|
|
266
|
+
"tag": "quiet",
|
|
267
|
+
"tone": [
|
|
268
|
+
"paper"
|
|
269
|
+
],
|
|
270
|
+
"blocks": [],
|
|
271
|
+
"own": true,
|
|
272
|
+
"kit": "Statement",
|
|
273
|
+
"note": "Own scene: one sentence at 12 to 16vw with SplitHeadline, still."
|
|
274
|
+
},
|
|
275
|
+
{
|
|
276
|
+
"name": "Details",
|
|
277
|
+
"tag": "loud",
|
|
278
|
+
"tone": [
|
|
279
|
+
"paper"
|
|
280
|
+
],
|
|
281
|
+
"blocks": [
|
|
282
|
+
"sticky-chapters",
|
|
283
|
+
"panel-accordion"
|
|
284
|
+
],
|
|
285
|
+
"own": false,
|
|
286
|
+
"note": "The gentle loud scene, or quiet panel-accordion: the programme, places and dates given."
|
|
287
|
+
},
|
|
288
|
+
{
|
|
289
|
+
"name": "Build",
|
|
290
|
+
"tag": "quiet",
|
|
291
|
+
"tone": [
|
|
292
|
+
"paper"
|
|
293
|
+
],
|
|
294
|
+
"blocks": [],
|
|
295
|
+
"own": true,
|
|
296
|
+
"kit": "PhotoText",
|
|
297
|
+
"note": "Own scene, who makes it."
|
|
298
|
+
},
|
|
299
|
+
{
|
|
300
|
+
"name": "Centerpiece",
|
|
301
|
+
"tag": "loud",
|
|
302
|
+
"tone": [
|
|
303
|
+
"ink"
|
|
304
|
+
],
|
|
305
|
+
"blocks": [
|
|
306
|
+
"scrub-connector",
|
|
307
|
+
"zoom-through",
|
|
308
|
+
"manifesto-scrub",
|
|
309
|
+
"panel-wipe"
|
|
310
|
+
],
|
|
311
|
+
"own": false,
|
|
312
|
+
"note": "The one centerpiece, on ink."
|
|
313
|
+
},
|
|
314
|
+
{
|
|
315
|
+
"name": "Release",
|
|
316
|
+
"tag": "quiet",
|
|
317
|
+
"tone": [
|
|
318
|
+
"paper"
|
|
319
|
+
],
|
|
320
|
+
"blocks": [],
|
|
321
|
+
"own": true,
|
|
322
|
+
"kit": "PhotoText",
|
|
323
|
+
"note": "Own scene, a photo and a short text."
|
|
324
|
+
},
|
|
325
|
+
{
|
|
326
|
+
"name": "Close",
|
|
327
|
+
"tag": "quiet",
|
|
328
|
+
"tone": [
|
|
329
|
+
"paper"
|
|
330
|
+
],
|
|
331
|
+
"blocks": [
|
|
332
|
+
"cta-closing:pointer"
|
|
333
|
+
],
|
|
334
|
+
"own": false,
|
|
335
|
+
"footer": [
|
|
336
|
+
"footer-reveal"
|
|
337
|
+
],
|
|
338
|
+
"note": "The line returning. Footer footer-reveal, the curtain closing."
|
|
339
|
+
}
|
|
340
|
+
]
|
|
341
|
+
}
|
|
342
|
+
],
|
|
343
|
+
"FILM_BUDGETS": [
|
|
344
|
+
"Exactly one centerpiece; nothing pins after it. The opening holds at most 1.5 screens, all pins together about 4.5.",
|
|
345
|
+
"Never two loud scenes side by side. At least four in ten scenes are quiet.",
|
|
346
|
+
"Every frame from the site's language. A page transition only when the site has more than one route.",
|
|
347
|
+
"Install only what the storyboard names, plus the header and the language's menu.",
|
|
348
|
+
"One motif on the page. At most two full-bleed photo reveals, built the same way.",
|
|
349
|
+
"At most one marquee (cta-closing:marquee, velocity-type) and one custom cursor. An accent face, if loaded, sets one word of the h1 and returns in the close.",
|
|
350
|
+
"A block with a live clock goes without it unless the lexicon is about time: wordmark-finale without timeZone, header-bar:quiet or :settle, never :split. hero-still, footer-contact and menu-curtain always tick: at most one of them on the page, and it is the one clock.",
|
|
351
|
+
"Two or three type moments at poster scale (12 to 20vw) on the page; everything else from the scale.",
|
|
352
|
+
"Labels: no eyebrows above headings, no mono, no uppercase labels, no numbered steps. A small sentence-case label in the body face may sit beside a headline in the margin column or under a photo, in words from the lexicon."
|
|
353
|
+
],
|
|
354
|
+
"FILM_HEADER": [
|
|
355
|
+
"header-bar:quiet",
|
|
356
|
+
"header-bar:settle"
|
|
357
|
+
],
|
|
358
|
+
"FILM_LANGUAGES": [
|
|
359
|
+
{
|
|
360
|
+
"id": "weight",
|
|
361
|
+
"for": [
|
|
362
|
+
"architecture",
|
|
363
|
+
"hotels",
|
|
364
|
+
"craft",
|
|
365
|
+
"interiors"
|
|
366
|
+
],
|
|
367
|
+
"feel": "photographic and slow; a print grows into place; long holds",
|
|
368
|
+
"frames": {
|
|
369
|
+
"preloader": "preloader-stack",
|
|
370
|
+
"pageTransition": "page-transition-stack",
|
|
371
|
+
"menu": "menu-curtain:stack"
|
|
372
|
+
},
|
|
373
|
+
"motifs": [
|
|
374
|
+
"frame"
|
|
375
|
+
],
|
|
376
|
+
"ground": "Paper throughout, ink at the centerpiece."
|
|
377
|
+
},
|
|
378
|
+
{
|
|
379
|
+
"id": "cut",
|
|
380
|
+
"for": [
|
|
381
|
+
"fashion",
|
|
382
|
+
"agencies",
|
|
383
|
+
"portfolios",
|
|
384
|
+
"music"
|
|
385
|
+
],
|
|
386
|
+
"feel": "hard cuts, short masks, no fades, short holds",
|
|
387
|
+
"frames": {
|
|
388
|
+
"preloader": "preloader-slices",
|
|
389
|
+
"pageTransition": "page-transition-slices",
|
|
390
|
+
"menu": "menu-curtain:slices"
|
|
391
|
+
},
|
|
392
|
+
"motifs": [
|
|
393
|
+
"cut",
|
|
394
|
+
"word"
|
|
395
|
+
],
|
|
396
|
+
"ground": "Paper and ink in hard alternation, never a fade."
|
|
397
|
+
},
|
|
398
|
+
{
|
|
399
|
+
"id": "curtain",
|
|
400
|
+
"for": [
|
|
401
|
+
"campaigns",
|
|
402
|
+
"launches",
|
|
403
|
+
"events",
|
|
404
|
+
"culture"
|
|
405
|
+
],
|
|
406
|
+
"feel": "a light line, panels part, a long hold before the reveal",
|
|
407
|
+
"frames": {
|
|
408
|
+
"preloader": "preloader-gate",
|
|
409
|
+
"preloaderAlternative": "preloader-wordmark:split",
|
|
410
|
+
"pageTransition": "page-transition-gate",
|
|
411
|
+
"menu": "menu-curtain:gate"
|
|
412
|
+
},
|
|
413
|
+
"motifs": [
|
|
414
|
+
"line",
|
|
415
|
+
"aperture"
|
|
416
|
+
],
|
|
417
|
+
"ground": "Field or ink at the opening, paper between, ink at the centerpiece."
|
|
418
|
+
}
|
|
419
|
+
],
|
|
420
|
+
"KIT_SCENES": [
|
|
421
|
+
"Statement",
|
|
422
|
+
"PhotoText",
|
|
423
|
+
"Rows",
|
|
424
|
+
"Close"
|
|
425
|
+
]
|
|
426
|
+
}
|