greenlight-motion 0.3.3 → 0.4.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 +15 -10
- package/dist/bundle-inputs.json +23 -1
- package/dist/greenlight-motion-script.mjs +549 -80
- package/dist/greenlight-motion.js +1078 -747
- package/dist/greenlight-motion.mjs +44077 -41999
- package/dist/script-inputs.json +3 -1
- package/package.json +1 -1
- package/schema/capabilities.json +1 -1
- package/skill/SKILL.md +10 -10
- package/skill/references/scene-script.md +2 -2
- package/skill/references/video-3d.md +107 -100
- package/skill/references/video-backgrounds.md +89 -41
- package/skill/references/video-camera.md +158 -83
- package/skill/references/video-design.md +39 -7
- package/skill/references/video-effects.md +936 -620
- package/skill/references/video-grid.md +24 -24
- package/skill/references/video-keyframes.md +145 -52
- package/skill/references/video-particles.md +48 -29
- package/skill/references/video-paths.md +69 -65
- package/skill/references/video-projects.md +159 -89
- package/skill/references/video-shapes.md +94 -31
- package/skill/references/video-text-kinetic.md +78 -27
- package/skill/references/video-text-presets.md +738 -17
- package/skill/references/video-text.md +171 -79
- package/skill/references/video-transitions.md +72 -17
package/README.md
CHANGED
|
@@ -17,16 +17,16 @@ The agent writes the video as data: a `project.json` and its files. The engine t
|
|
|
17
17
|
## Quick start
|
|
18
18
|
|
|
19
19
|
```bash
|
|
20
|
-
npx greenlight-motion@0.
|
|
21
|
-
npx greenlight-motion@0.
|
|
20
|
+
npx greenlight-motion@0.4.0 doctor # Node 18+, Chrome or Edge, WebGPU, H.264: what's missing and how to fix it
|
|
21
|
+
npx greenlight-motion@0.4.0 init my-video # a working starter: index.html, project.json, assets/
|
|
22
22
|
# edit my-video/project.json, put pictures / video / sound in my-video/assets/
|
|
23
23
|
# or: write my-video/script.json (a scene script, skill/references/scene-script.md), then
|
|
24
|
-
npx greenlight-motion@0.
|
|
25
|
-
npx greenlight-motion@0.
|
|
26
|
-
npx greenlight-motion@0.
|
|
27
|
-
npx greenlight-motion@0.
|
|
28
|
-
npx greenlight-motion@0.
|
|
29
|
-
npx greenlight-motion@0.
|
|
24
|
+
npx greenlight-motion@0.4.0 script my-video # script.json → project.json with the Video Editor's own presets
|
|
25
|
+
npx greenlight-motion@0.4.0 check my-video # what to fix: missing files, template mistakes, blank frames, broken plugins
|
|
26
|
+
npx greenlight-motion@0.4.0 stills my-video # frames + a labelled contact sheet, to look at
|
|
27
|
+
npx greenlight-motion@0.4.0 render my-video --fps 60 --motion-blur
|
|
28
|
+
npx greenlight-motion@0.4.0 pack my-video # everything in ONE html file
|
|
29
|
+
npx greenlight-motion@0.4.0 pack my-video --glvideo # ONE .glvideo: double-clicked, it opens in GreenLight Dash
|
|
30
30
|
```
|
|
31
31
|
|
|
32
32
|
Also: `trace` (every animated layer's values frame by frame, plus the layer's moments), `set key=value`
|
|
@@ -72,7 +72,7 @@ The engine is one classic script, so it runs from a double-clicked file, a CDN o
|
|
|
72
72
|
|
|
73
73
|
```html
|
|
74
74
|
<div id="app"></div>
|
|
75
|
-
<script src="https://cdn.jsdelivr.net/npm/greenlight-motion@0.
|
|
75
|
+
<script src="https://cdn.jsdelivr.net/npm/greenlight-motion@0.4.0/dist/greenlight-motion.js"></script>
|
|
76
76
|
<script>
|
|
77
77
|
GreenLightMotion.mountStudio(document.getElementById('app'), {
|
|
78
78
|
project: { /* project.json */ },
|
|
@@ -87,7 +87,12 @@ Its review (notes with drawings, highlights, changes) is text to copy for your a
|
|
|
87
87
|
(`config.save`). In a narrow frame — a chat's column, a card — pass `chat: { height, full, onExpand }`: up to 900 px
|
|
88
88
|
wide it becomes the mobile editor in a box `height` px tall (the whole frame with `full: true`), the timeline across the
|
|
89
89
|
width with its panels as sheets over it; wider, the full studio. `onExpand(full)` puts a Full screen button in the app
|
|
90
|
-
bar for a host that can go full screen; the returned studio's `chat.set({ height, full })` follows the host.
|
|
90
|
+
bar for a host that can go full screen; the returned studio's `chat.set({ height, full })` follows the host. The mobile
|
|
91
|
+
editor has Undo / Redo in its app bar and Go to start / end in its play row. On a touch device the page keeps memory low
|
|
92
|
+
(a preview at most 960 px long, pictures at the size they are drawn, only the scene on screen and the next held), renders
|
|
93
|
+
the seconds a phone plays too slowly into a cache of its own (a line over the ruler, a status beside the time; the files
|
|
94
|
+
stay in the browser), and asks before the first Play of a film too heavy for a phone. The page's `cache` API and
|
|
95
|
+
`memoryStats()` read all of it.
|
|
91
96
|
`GreenLightMotion.mountPage(el, { project, assets, theme })` is the plain page under it, without the review interface.
|
|
92
97
|
|
|
93
98
|
Without the page UI (in the browser, through a bundler or the ESM build; Node runs only the CLI):
|
package/dist/bundle-inputs.json
CHANGED
|
@@ -88,6 +88,7 @@
|
|
|
88
88
|
"frontend/src/components/videoEditor/effectTransitionOrder.js",
|
|
89
89
|
"frontend/src/components/videoEditor/engine/adjustmentComposite.js",
|
|
90
90
|
"frontend/src/components/videoEditor/engine/background.js",
|
|
91
|
+
"frontend/src/components/videoEditor/engine/cachePlate.js",
|
|
91
92
|
"frontend/src/components/videoEditor/engine/camera.js",
|
|
92
93
|
"frontend/src/components/videoEditor/engine/canvasHelpers.js",
|
|
93
94
|
"frontend/src/components/videoEditor/engine/channelRender.js",
|
|
@@ -125,6 +126,8 @@
|
|
|
125
126
|
"frontend/src/components/videoEditor/engine/motionPasses.js",
|
|
126
127
|
"frontend/src/components/videoEditor/engine/passPool.js",
|
|
127
128
|
"frontend/src/components/videoEditor/engine/pathFx.js",
|
|
129
|
+
"frontend/src/components/videoEditor/engine/phoneMedia.js",
|
|
130
|
+
"frontend/src/components/videoEditor/engine/phoneMode.js",
|
|
128
131
|
"frontend/src/components/videoEditor/engine/previewMedia.js",
|
|
129
132
|
"frontend/src/components/videoEditor/engine/projectDerive.js",
|
|
130
133
|
"frontend/src/components/videoEditor/engine/recordingCursorPass.js",
|
|
@@ -144,7 +147,11 @@
|
|
|
144
147
|
"frontend/src/components/videoEditor/fxProbeBroker.js",
|
|
145
148
|
"frontend/src/components/videoEditor/glassEffect.js",
|
|
146
149
|
"frontend/src/components/videoEditor/glassNodes.js",
|
|
150
|
+
"frontend/src/components/videoEditor/gooeyEffect.js",
|
|
151
|
+
"frontend/src/components/videoEditor/gooeyNodes.js",
|
|
147
152
|
"frontend/src/components/videoEditor/gpuReset.js",
|
|
153
|
+
"frontend/src/components/videoEditor/gradientGlowEffect.js",
|
|
154
|
+
"frontend/src/components/videoEditor/gradientGlowNodes.js",
|
|
148
155
|
"frontend/src/components/videoEditor/gridLayout.js",
|
|
149
156
|
"frontend/src/components/videoEditor/gridLinesEffect.js",
|
|
150
157
|
"frontend/src/components/videoEditor/gridLinesNodes.js",
|
|
@@ -166,6 +173,8 @@
|
|
|
166
173
|
"frontend/src/components/videoEditor/layerVelocity.js",
|
|
167
174
|
"frontend/src/components/videoEditor/legacyTextAnimation.js",
|
|
168
175
|
"frontend/src/components/videoEditor/legacyTextAnimationMigrate.js",
|
|
176
|
+
"frontend/src/components/videoEditor/lightSweepEffect.js",
|
|
177
|
+
"frontend/src/components/videoEditor/lightSweepNodes.js",
|
|
169
178
|
"frontend/src/components/videoEditor/linesDrawProfiles.js",
|
|
170
179
|
"frontend/src/components/videoEditor/localAdvancedTransitions.js",
|
|
171
180
|
"frontend/src/components/videoEditor/localEffects.js",
|
|
@@ -226,12 +235,14 @@
|
|
|
226
235
|
"frontend/src/components/videoEditor/pathPointer.js",
|
|
227
236
|
"frontend/src/components/videoEditor/pathStroke.js",
|
|
228
237
|
"frontend/src/components/videoEditor/pathStrokeRenderer.js",
|
|
238
|
+
"frontend/src/components/videoEditor/pcssRadius.js",
|
|
229
239
|
"frontend/src/components/videoEditor/perfRegistry.js",
|
|
230
240
|
"frontend/src/components/videoEditor/photoSlots.js",
|
|
231
241
|
"frontend/src/components/videoEditor/pixelateEffect.js",
|
|
232
242
|
"frontend/src/components/videoEditor/pixelateNodes.js",
|
|
233
243
|
"frontend/src/components/videoEditor/pointLoupe.js",
|
|
234
244
|
"frontend/src/components/videoEditor/pointPickBroker.js",
|
|
245
|
+
"frontend/src/components/videoEditor/popoverSelect.css",
|
|
235
246
|
"frontend/src/components/videoEditor/posterizeEffect.js",
|
|
236
247
|
"frontend/src/components/videoEditor/posterizeNodes.js",
|
|
237
248
|
"frontend/src/components/videoEditor/posterizeTime.js",
|
|
@@ -293,6 +304,7 @@
|
|
|
293
304
|
"frontend/src/components/videoEditor/textAnimators.js",
|
|
294
305
|
"frontend/src/components/videoEditor/textCounter.js",
|
|
295
306
|
"frontend/src/components/videoEditor/textFootprint.js",
|
|
307
|
+
"frontend/src/components/videoEditor/textMorph.js",
|
|
296
308
|
"frontend/src/components/videoEditor/textPathCorners.js",
|
|
297
309
|
"frontend/src/components/videoEditor/textPlaceholders.js",
|
|
298
310
|
"frontend/src/components/videoEditor/threeDisplayTransform.js",
|
|
@@ -311,6 +323,7 @@
|
|
|
311
323
|
"frontend/src/components/videoEditor/tslStableHash.js",
|
|
312
324
|
"frontend/src/components/videoEditor/tslUserShader.js",
|
|
313
325
|
"frontend/src/components/videoEditor/types.js",
|
|
326
|
+
"frontend/src/components/videoEditor/useAudioRecording.js",
|
|
314
327
|
"frontend/src/components/videoEditor/usePreviewViewport.js",
|
|
315
328
|
"frontend/src/components/videoEditor/vectorMedia.js",
|
|
316
329
|
"frontend/src/components/videoEditor/videoEditorStore.js",
|
|
@@ -325,6 +338,8 @@
|
|
|
325
338
|
"frontend/src/components/videoEditor/webmClipDecoder.js",
|
|
326
339
|
"frontend/src/components/videoEditor/webmDemux.js",
|
|
327
340
|
"frontend/src/components/videoEditor/webmFrameCache.js",
|
|
341
|
+
"frontend/src/components/videoEditor/world3dLayer.js",
|
|
342
|
+
"frontend/src/components/videoEditor/world3dScene.js",
|
|
328
343
|
"frontend/src/hooks/appPrefs.js",
|
|
329
344
|
"frontend/src/hooks/useHoverTip.jsx",
|
|
330
345
|
"frontend/src/motionEngine/EngineCanvas.jsx",
|
|
@@ -333,11 +348,13 @@
|
|
|
333
348
|
"frontend/src/motionEngine/ReviewUI.jsx",
|
|
334
349
|
"frontend/src/motionEngine/assets.js",
|
|
335
350
|
"frontend/src/motionEngine/engineEntry.jsx",
|
|
351
|
+
"frontend/src/motionEngine/localRenderCache.js",
|
|
336
352
|
"frontend/src/motionEngine/mix.js",
|
|
337
353
|
"frontend/src/motionEngine/normalize.js",
|
|
338
354
|
"frontend/src/motionEngine/pageEdits.js",
|
|
339
355
|
"frontend/src/motionEngine/playerPage.css",
|
|
340
356
|
"frontend/src/motionEngine/reviewNotes.js",
|
|
357
|
+
"frontend/src/motionEngine/rulerSteps.js",
|
|
341
358
|
"frontend/src/motionEngine/sfx.js",
|
|
342
359
|
"frontend/src/motionEngine/soundCues.js",
|
|
343
360
|
"frontend/src/motionEngine/soundLibrary.js",
|
|
@@ -350,6 +367,7 @@
|
|
|
350
367
|
"frontend/src/motionEngine/studio/gizmo.js",
|
|
351
368
|
"frontend/src/motionEngine/studio/highlight.css",
|
|
352
369
|
"frontend/src/motionEngine/studio/highlight.js",
|
|
370
|
+
"frontend/src/motionEngine/studio/history.js",
|
|
353
371
|
"frontend/src/motionEngine/studio/index.js",
|
|
354
372
|
"frontend/src/motionEngine/studio/inspector.js",
|
|
355
373
|
"frontend/src/motionEngine/studio/lab.css",
|
|
@@ -359,11 +377,13 @@
|
|
|
359
377
|
"frontend/src/motionEngine/studio/notes.js",
|
|
360
378
|
"frontend/src/motionEngine/studio/review.css",
|
|
361
379
|
"frontend/src/motionEngine/studio/review.js",
|
|
380
|
+
"frontend/src/motionEngine/studio/timelineZoom.js",
|
|
362
381
|
"frontend/src/motionEngine/studio/voice.js",
|
|
363
382
|
"frontend/src/motionEngine/template.js",
|
|
364
383
|
"frontend/src/motionEngine/textWraps.js",
|
|
365
384
|
"frontend/src/motionEngine/trace.js",
|
|
366
385
|
"frontend/src/motionEngine/useReview.js",
|
|
386
|
+
"frontend/src/pipelines/pipelineUtils.js",
|
|
367
387
|
"frontend/src/platform/compact.js",
|
|
368
388
|
"frontend/src/platform/runtime.js",
|
|
369
389
|
"frontend/src/render-shims/FontFamilySelect.jsx",
|
|
@@ -398,7 +418,9 @@
|
|
|
398
418
|
"frontend/src/utils/cssGradient.js",
|
|
399
419
|
"frontend/src/utils/shaderBackground.js",
|
|
400
420
|
"frontend/src/utils/shaderPresetsLab.js",
|
|
401
|
-
"frontend/src/utils/
|
|
421
|
+
"frontend/src/utils/wgslSwizzleFix.js",
|
|
422
|
+
"frontend/src/utils/zoomRate.js",
|
|
423
|
+
"frontend/src/world3d/splat/readSplat.js"
|
|
402
424
|
],
|
|
403
425
|
"packages": [
|
|
404
426
|
{
|