@editframe/create 0.43.0 → 0.45.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.
Files changed (99) hide show
  1. package/README.md +11 -0
  2. package/dist/index.js +16 -28
  3. package/dist/index.js.map +1 -1
  4. package/dist/skills/editframe-brand-video-generator/README.md +155 -0
  5. package/dist/skills/editframe-brand-video-generator/SKILL.md +207 -0
  6. package/dist/skills/editframe-brand-video-generator/references/brand-examples.md +178 -0
  7. package/dist/skills/editframe-brand-video-generator/references/color-psychology.md +227 -0
  8. package/dist/skills/editframe-brand-video-generator/references/composition-patterns.md +383 -0
  9. package/dist/skills/editframe-brand-video-generator/references/editing.md +66 -0
  10. package/dist/skills/editframe-brand-video-generator/references/emotional-arcs.md +496 -0
  11. package/dist/skills/editframe-brand-video-generator/references/genre-selection.md +135 -0
  12. package/dist/skills/editframe-brand-video-generator/references/transition-styles.md +611 -0
  13. package/dist/skills/editframe-brand-video-generator/references/typography-personalities.md +326 -0
  14. package/dist/skills/editframe-brand-video-generator/references/video-archetypes.md +86 -0
  15. package/dist/skills/editframe-brand-video-generator/references/video-fundamentals.md +169 -0
  16. package/dist/skills/editframe-brand-video-generator/references/visual-metaphors.md +50 -0
  17. package/dist/skills/editframe-composition/SKILL.md +169 -0
  18. package/dist/skills/editframe-composition/references/audio.md +483 -0
  19. package/dist/skills/editframe-composition/references/captions.md +844 -0
  20. package/dist/skills/editframe-composition/references/composition-model.md +73 -0
  21. package/dist/skills/editframe-composition/references/configuration.md +403 -0
  22. package/dist/skills/editframe-composition/references/css-parts.md +105 -0
  23. package/dist/skills/editframe-composition/references/css-variables.md +640 -0
  24. package/dist/skills/editframe-composition/references/entry-points.md +810 -0
  25. package/dist/skills/editframe-composition/references/events.md +499 -0
  26. package/dist/skills/editframe-composition/references/getting-started.md +259 -0
  27. package/dist/skills/editframe-composition/references/hooks.md +234 -0
  28. package/dist/skills/editframe-composition/references/image.md +241 -0
  29. package/dist/skills/editframe-composition/references/r3f.md +580 -0
  30. package/dist/skills/editframe-composition/references/render-api.md +484 -0
  31. package/dist/skills/editframe-composition/references/render-strategies.md +119 -0
  32. package/dist/skills/editframe-composition/references/render-to-video.md +1101 -0
  33. package/dist/skills/editframe-composition/references/scripting.md +606 -0
  34. package/dist/skills/editframe-composition/references/sequencing.md +116 -0
  35. package/dist/skills/editframe-composition/references/server-rendering.md +753 -0
  36. package/dist/skills/editframe-composition/references/surface.md +329 -0
  37. package/dist/skills/editframe-composition/references/text.md +627 -0
  38. package/dist/skills/editframe-composition/references/time-model.md +99 -0
  39. package/dist/skills/editframe-composition/references/timegroup-modes.md +102 -0
  40. package/dist/skills/editframe-composition/references/timegroup.md +457 -0
  41. package/dist/skills/editframe-composition/references/timeline-root.md +398 -0
  42. package/dist/skills/editframe-composition/references/transcription.md +47 -0
  43. package/dist/skills/editframe-composition/references/transitions.md +608 -0
  44. package/dist/skills/editframe-composition/references/use-media-info.md +357 -0
  45. package/dist/skills/editframe-composition/references/video.md +506 -0
  46. package/dist/skills/editframe-composition/references/waveform.md +327 -0
  47. package/dist/skills/editframe-editor-gui/SKILL.md +152 -0
  48. package/dist/skills/editframe-editor-gui/references/active-root-temporal.md +657 -0
  49. package/dist/skills/editframe-editor-gui/references/canvas.md +947 -0
  50. package/dist/skills/editframe-editor-gui/references/controls.md +366 -0
  51. package/dist/skills/editframe-editor-gui/references/dial.md +756 -0
  52. package/dist/skills/editframe-editor-gui/references/editor-toolkit.md +587 -0
  53. package/dist/skills/editframe-editor-gui/references/filmstrip.md +460 -0
  54. package/dist/skills/editframe-editor-gui/references/fit-scale.md +772 -0
  55. package/dist/skills/editframe-editor-gui/references/focus-overlay.md +561 -0
  56. package/dist/skills/editframe-editor-gui/references/hierarchy.md +544 -0
  57. package/dist/skills/editframe-editor-gui/references/overlay-item.md +634 -0
  58. package/dist/skills/editframe-editor-gui/references/overlay-layer.md +429 -0
  59. package/dist/skills/editframe-editor-gui/references/pan-zoom.md +568 -0
  60. package/dist/skills/editframe-editor-gui/references/pause.md +397 -0
  61. package/dist/skills/editframe-editor-gui/references/play.md +370 -0
  62. package/dist/skills/editframe-editor-gui/references/preview.md +391 -0
  63. package/dist/skills/editframe-editor-gui/references/resizable-box.md +749 -0
  64. package/dist/skills/editframe-editor-gui/references/scrubber.md +588 -0
  65. package/dist/skills/editframe-editor-gui/references/thumbnail-strip.md +566 -0
  66. package/dist/skills/editframe-editor-gui/references/time-display.md +492 -0
  67. package/dist/skills/editframe-editor-gui/references/timeline-ruler.md +489 -0
  68. package/dist/skills/editframe-editor-gui/references/timeline.md +604 -0
  69. package/dist/skills/editframe-editor-gui/references/toggle-loop.md +618 -0
  70. package/dist/skills/editframe-editor-gui/references/toggle-play.md +526 -0
  71. package/dist/skills/editframe-editor-gui/references/transform-handles.md +924 -0
  72. package/dist/skills/editframe-editor-gui/references/trim-handles.md +725 -0
  73. package/dist/skills/editframe-editor-gui/references/workbench.md +453 -0
  74. package/dist/skills/editframe-motion-design/SKILL.md +101 -0
  75. package/dist/skills/editframe-motion-design/references/0-editframe.md +299 -0
  76. package/dist/skills/editframe-motion-design/references/1-intent.md +201 -0
  77. package/dist/skills/editframe-motion-design/references/2-physics-model.md +405 -0
  78. package/dist/skills/editframe-motion-design/references/3-attention.md +350 -0
  79. package/dist/skills/editframe-motion-design/references/4-process.md +418 -0
  80. package/dist/skills/editframe-vite-plugin/SKILL.md +75 -0
  81. package/dist/skills/editframe-vite-plugin/references/file-api.md +111 -0
  82. package/dist/skills/editframe-vite-plugin/references/getting-started.md +96 -0
  83. package/dist/skills/editframe-vite-plugin/references/jit-transcoding.md +91 -0
  84. package/dist/skills/editframe-vite-plugin/references/local-assets.md +75 -0
  85. package/dist/skills/editframe-vite-plugin/references/visual-testing.md +136 -0
  86. package/dist/skills/editframe-webhooks/SKILL.md +126 -0
  87. package/dist/skills/editframe-webhooks/references/events.md +382 -0
  88. package/dist/skills/editframe-webhooks/references/getting-started.md +232 -0
  89. package/dist/skills/editframe-webhooks/references/security.md +418 -0
  90. package/dist/skills/editframe-webhooks/references/testing.md +409 -0
  91. package/dist/skills/editframe-webhooks/references/troubleshooting.md +457 -0
  92. package/dist/templates/html/AGENTS.md +13 -0
  93. package/dist/templates/react/AGENTS.md +13 -0
  94. package/dist/utils.js +15 -16
  95. package/dist/utils.js.map +1 -1
  96. package/package.json +2 -2
  97. package/tsdown.config.ts +4 -0
  98. package/dist/detectAgent.js +0 -89
  99. package/dist/detectAgent.js.map +0 -1
@@ -0,0 +1,350 @@
1
+ ---
2
+ title: Attention
3
+ description: Directing viewer attention with stagger, sequential choreography, and visual hierarchy in multi-element animations.
4
+ type: explanation
5
+ order: 3
6
+ ---
7
+
8
+ # Attention Flow
9
+
10
+ ## Core Concept
11
+
12
+ **One Focus at a Time**
13
+
14
+ Human attention is sequential, not parallel. Motion competes for focus. Never animate unrelated elements simultaneously.
15
+
16
+ ## Quick Reference: Stagger Delays
17
+
18
+ | Unit | Delay | Use Case |
19
+ |------|-------|----------|
20
+ | Character | 30-50ms | Text reveals, typing effects |
21
+ | Word | 80-120ms | Headline emphasis |
22
+ | Line | 200-300ms | Paragraph reveals |
23
+ | List item | 50-80ms | Navigation, bullet lists |
24
+ | Card | 100-150ms | Grid layouts, galleries |
25
+ | Section | 400ms+ | Page sections, major blocks |
26
+
27
+ ## The Attention Rule
28
+
29
+ **At any given moment, only ONE thing should be moving (or a group moving as a single conceptual unit).**
30
+
31
+ ### Bad (Simultaneous)
32
+ ```
33
+ 0ms: Title slides in (500ms)
34
+ 0ms: Subtitle fades in (500ms)
35
+ 0ms: Logo animates (500ms)
36
+ ```
37
+ Result: Viewer doesn't know where to look, misses all three.
38
+
39
+ ### Good (Sequential)
40
+ ```
41
+ 0ms: Logo animates (400ms)
42
+ 200ms: Title slides in (400ms) ← starts before logo finishes
43
+ 400ms: Subtitle fades in (300ms) ← starts before title finishes
44
+ ```
45
+ Result: Clear attention path, overlapping reduces total time but maintains sequence.
46
+
47
+ ## Stagger: Rhythm Across Elements
48
+
49
+ **Stagger = delay between identical animations**
50
+
51
+ Creates rhythm and guides reading order without overwhelming attention.
52
+
53
+ ### Stagger Timing by Granularity
54
+
55
+ | Unit | Delay | Use Case |
56
+ |------|-------|----------|
57
+ | Character | 30-50ms | Text reveals, typing effects |
58
+ | Word | 80-120ms | Headline emphasis |
59
+ | Line | 200-300ms | Paragraph reveals |
60
+ | List item | 50-80ms | Navigation, bullet lists |
61
+ | Card | 100-150ms | Grid layouts, galleries |
62
+ | Section | 400ms+ | Page sections, major blocks |
63
+
64
+ ### Calculating Total Duration
65
+
66
+ ```
67
+ Total = (NumItems - 1) × StaggerDelay + ItemDuration
68
+
69
+ Example: 5 cards, 120ms stagger, 300ms animation
70
+ Total = (5-1) × 120 + 300 = 780ms
71
+ ```
72
+
73
+ **Keep total under 2 seconds** for UI. Beyond that feels slow.
74
+
75
+ ## Stagger Patterns
76
+
77
+ ### Sequential (Linear)
78
+ ```
79
+ Item 1: 0ms
80
+ Item 2: 100ms
81
+ Item 3: 200ms
82
+ Item 4: 300ms
83
+ ```
84
+ Most common. Reads naturally (top→bottom, left→right).
85
+
86
+ ### Cascading (Accelerating)
87
+ ```
88
+ Item 1: 0ms
89
+ Item 2: 80ms (80ms after previous)
90
+ Item 3: 140ms (60ms after previous)
91
+ Item 4: 180ms (40ms after previous)
92
+ ```
93
+ Builds momentum, energetic feel. Use for dramatic reveals.
94
+
95
+ ### Wave (Center-out)
96
+ ```
97
+ Item 1: 100ms (center)
98
+ Item 2: 50ms (one step out)
99
+ Item 3: 150ms (one step out)
100
+ Item 4: 0ms (edge)
101
+ Item 5: 200ms (edge)
102
+ ```
103
+ Focuses attention on center first, reveals context. Use when center is most important.
104
+
105
+ ### Decelerating (Slowing)
106
+ ```
107
+ Item 1: 0ms
108
+ Item 2: 50ms (50ms after previous)
109
+ Item 3: 120ms (70ms after previous)
110
+ Item 4: 220ms (100ms after previous)
111
+ ```
112
+ Gentle arrival, emphasizes final items. Use for settling into place.
113
+
114
+ ## Reading Order
115
+
116
+ **Respect natural reading patterns unless intentionally disrupting:**
117
+
118
+ ### Western Reading (Left → Right, Top → Bottom)
119
+ ```
120
+ Grid animation order:
121
+ [1] [2] [3]
122
+ [4] [5] [6]
123
+ [7] [8] [9]
124
+ ```
125
+
126
+ ### Alternative Orders
127
+
128
+ **Diagonal (energetic):**
129
+ ```
130
+ [1] [2] [4]
131
+ [3] [5] [7]
132
+ [6] [8] [9]
133
+ ```
134
+
135
+ **Column-by-column (technical/data):**
136
+ ```
137
+ [1] [4] [7]
138
+ [2] [5] [8]
139
+ [3] [6] [9]
140
+ ```
141
+
142
+ **Center-out (focal emphasis):**
143
+ ```
144
+ [5] [2] [4]
145
+ [7] [1] [3]
146
+ [9] [6] [8]
147
+ ```
148
+
149
+ ## Overlapping vs Sequential
150
+
151
+ ### Full Sequential (Clear but Slow)
152
+ ```
153
+ Item 1: 0-300ms
154
+ Item 2: 300-600ms ← starts when Item 1 ends
155
+ Item 3: 600-900ms
156
+ Total: 900ms
157
+ ```
158
+
159
+ ### Overlapping (Faster, Still Clear)
160
+ ```
161
+ Item 1: 0-300ms
162
+ Item 2: 120-420ms ← starts at 40% of Item 1
163
+ Item 3: 240-540ms
164
+ Total: 540ms (40% faster)
165
+ ```
166
+
167
+ **Optimal overlap: 30-50%** of item duration.
168
+
169
+ Too much overlap → feels simultaneous, loses sequence.
170
+ No overlap → feels sluggish, artificially delayed.
171
+
172
+ ## Grouping: Treating Multiple as One
173
+
174
+ **Exception to "one focus" rule:** Elements that form a single conceptual unit can move together.
175
+
176
+ ### Valid Grouping
177
+ ```
178
+ Title card contains:
179
+ - Main headline
180
+ - Subheadline
181
+ - Decorative line
182
+
183
+ All animate together as one unit.
184
+ ```
185
+
186
+ ### Invalid Grouping (Should be Separate)
187
+ ```
188
+ Bad: Animating title AND background graphic together
189
+ → These aren't a conceptual unit
190
+ → Should be sequenced (background first, then title)
191
+ ```
192
+
193
+ **Test:** Would a viewer naturally perceive these as one element or separate elements?
194
+
195
+ ## Attention Choreography Process
196
+
197
+ ### 1. List All Elements
198
+ Identify everything that will move.
199
+
200
+ ### 2. Prioritize by Importance
201
+ What must viewer see first, second, third?
202
+
203
+ ### 3. Determine Groups
204
+ Which elements are conceptual units?
205
+
206
+ ### 4. Assign Sequence
207
+ Create timeline respecting priority.
208
+
209
+ ### 5. Add Stagger Within Groups
210
+ Apply appropriate delays for rhythm.
211
+
212
+ ### Example: Explainer Video Opening
213
+
214
+ **Elements:**
215
+ - Brand logo
216
+ - Video title
217
+ - Subtitle text
218
+ - 4 key statistics
219
+ - Background graphic
220
+
221
+ **Priority:**
222
+ 1. Logo (establishes brand)
223
+ 2. Title (main message)
224
+ 3. Subtitle (supports title)
225
+ 4. Statistics (supporting data)
226
+ 5. Background (context)
227
+
228
+ **Timeline at 30fps:**
229
+ ```
230
+ 0ms: Logo animates (600ms / 18 frames)
231
+ 300ms: Title slides in (400ms / 12 frames) ← 50% overlap
232
+ 500ms: Subtitle fades in (300ms / 9 frames)
233
+ 700ms: Stat 1 (300ms / 9 frames)
234
+ 800ms: Stat 2 (300ms / 9 frames) ← 100ms stagger
235
+ 900ms: Stat 3 (300ms / 9 frames)
236
+ 1000ms: Stat 4 (300ms / 9 frames)
237
+ 1300ms: Background subtle fade (600ms / 18 frames) ← ambient
238
+
239
+ Total: 1900ms (~57 frames)
240
+ ```
241
+
242
+ ## Background Motion Exception
243
+
244
+ **Ambient/background motion can run during foreground focus:**
245
+
246
+ ```
247
+ Foreground: Title animates (400ms) ← PRIMARY FOCUS
248
+ Background: Particle drift (continuous) ← ambient, not competing
249
+ ```
250
+
251
+ **Requirements for background motion:**
252
+ - Much slower than foreground (or continuous loop)
253
+ - Very subtle (barely noticeable, 20-30% opacity)
254
+ - Clearly secondary (out of focus, low contrast, or peripheral)
255
+ - Enhances without distracting
256
+ - Never competes with primary narrative elements
257
+
258
+ ## Anti-Patterns
259
+
260
+ ### Simultaneous Unrelated Motion
261
+ ```
262
+ Bad:
263
+ - Main title appears
264
+ - Background changes
265
+ - Lower third animates
266
+ All at same time
267
+
268
+ Fix: Sequence them. Background → wait 200ms → Title → wait 400ms → Lower third
269
+ ```
270
+
271
+ ### Too Many Staggers
272
+ ```
273
+ Bad: 20 text lines with 200ms stagger = 4000ms (4 seconds!)
274
+ Result: Feels sluggish, viewer loses interest
275
+
276
+ Fix:
277
+ - Reduce stagger to 80ms (1600ms total)
278
+ - Or: Group into 3 sets of lines, stagger sets not lines
279
+ - Or: Only stagger first 5 lines, remaining fade in together
280
+ ```
281
+
282
+ ### Ignoring Reading Order
283
+ ```
284
+ Bad: Grid animates right-to-left (against Western reading)
285
+ Result: Feels backwards, unnatural
286
+
287
+ Fix: Animate in reading order unless intentionally surprising
288
+ ```
289
+
290
+ ### False Grouping
291
+ ```
292
+ Bad: Entire page (50+ elements) animates as one unit
293
+ Result: Overwhelming, no guided attention
294
+
295
+ Fix: Break into logical groups, sequence the groups
296
+ ```
297
+
298
+ ## Implementation Example
299
+
300
+ **Text line reveal with stagger (30fps):**
301
+
302
+ ```javascript
303
+ // In video composition at 30fps (33ms per frame)
304
+ const lines = ['Line 1', 'Line 2', 'Line 3', 'Line 4'];
305
+ const staggerFrames = 6; // 6 frames = ~200ms at 30fps
306
+ const durationFrames = 9; // 9 frames = ~300ms at 30fps
307
+
308
+ lines.forEach((line, i) => {
309
+ const startFrame = i * staggerFrames;
310
+ const endFrame = startFrame + durationFrames;
311
+
312
+ // Create keyframes for this line
313
+ animateLine(line, {
314
+ startFrame: startFrame,
315
+ endFrame: endFrame,
316
+ easing: 'ease-out'
317
+ });
318
+ });
319
+
320
+ // Total duration: (4-1) × 6 + 9 = 27 frames (~900ms at 30fps)
321
+ ```
322
+
323
+ ## Attention Budget
324
+
325
+ **Users have limited attention. Spend it wisely.**
326
+
327
+ **High attention cost:**
328
+ - Large motion (200px+ movement)
329
+ - Color changes
330
+ - Multiple properties animating
331
+ - Long duration (800ms+)
332
+
333
+ **Low attention cost:**
334
+ - Small motion (20px movement)
335
+ - Opacity only
336
+ - Brief duration (200ms)
337
+
338
+ **Budget rule:** Reserve high-cost motion for primary actions. Use low-cost for secondary.
339
+
340
+ ## Testing Attention Flow
341
+
342
+ **Watch the animation with these questions:**
343
+
344
+ 1. Where does my eye go at each moment?
345
+ 2. Is that where I *should* be looking?
346
+ 3. Do I understand the sequence of importance?
347
+ 4. Does anything compete for attention?
348
+ 5. Is the total duration comfortable?
349
+
350
+ If any answer is no, revise the sequence.