takomi 2.5.1 → 2.5.4
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/.pi/agents/worker.md +32 -32
- package/.pi/extensions/oauth-router/README.md +3 -3
- package/.pi/extensions/oauth-router/config.ts +34 -34
- package/.pi/extensions/oauth-router/report-ui.ts +205 -205
- package/.pi/extensions/oauth-router/scripts/vibe-verify.py +5 -5
- package/.pi/extensions/takomi-context-manager/diagnostics.ts +560 -560
- package/.pi/extensions/takomi-context-manager/policy-tools.ts +93 -93
- package/.pi/extensions/takomi-context-manager/skill-categories.d.ts +11 -11
- package/.pi/extensions/takomi-context-manager/skill-tools.ts +208 -208
- package/.pi/extensions/takomi-context-manager/tool-renderers.ts +112 -112
- package/.pi/extensions/takomi-runtime/gate-provenance.ts +24 -24
- package/.pi/extensions/takomi-runtime/model-routing-defaults.ts +262 -262
- package/.pi/extensions/takomi-runtime/tool-renderers.ts +234 -234
- package/.pi/extensions/takomi-runtime/workflow-catalog.ts +54 -54
- package/.pi/extensions/takomi-subagents/async-lifecycle.ts +401 -401
- package/.pi/extensions/takomi-subagents/detached-results.ts +940 -940
- package/.pi/extensions/takomi-subagents/native-render.ts +253 -250
- package/.pi/extensions/takomi-subagents/result-heartbeat.ts +55 -55
- package/.pi/extensions/takomi-subagents/subagent-ux.ts +162 -162
- package/.pi/extensions/takomi-subagents/tool-runner.ts +25 -0
- package/.pi/takomi-profile.json +54 -54
- package/README.md +1 -1
- package/assets/.agent/skills/embedded-captions/CATALOG.md +93 -93
- package/assets/.agent/skills/embedded-captions/SKILL.md +286 -286
- package/assets/.agent/skills/embedded-captions/assets/brand/CDPR-fankit-terms.txt +35 -35
- package/assets/.agent/skills/embedded-captions/assets/brand/cyberpunk-widths.json +115 -115
- package/assets/.agent/skills/embedded-captions/assets/fonts/char-widths.json +2211 -2211
- package/assets/.agent/skills/embedded-captions/assets/strokefonts/HersheyScript1.svg +241 -241
- package/assets/.agent/skills/embedded-captions/assets/strokefonts/HersheyScriptMed.svg +241 -241
- package/assets/.agent/skills/embedded-captions/dna/README.md +148 -148
- package/assets/.agent/skills/embedded-captions/dna/chrome.json +68 -68
- package/assets/.agent/skills/embedded-captions/dna/cream.json +69 -69
- package/assets/.agent/skills/embedded-captions/dna/documentary.json +62 -62
- package/assets/.agent/skills/embedded-captions/dna/editorial.json +70 -70
- package/assets/.agent/skills/embedded-captions/dna/glitch.json +82 -82
- package/assets/.agent/skills/embedded-captions/dna/ink.json +65 -65
- package/assets/.agent/skills/embedded-captions/dna/keynote.json +62 -62
- package/assets/.agent/skills/embedded-captions/dna/loud.json +75 -75
- package/assets/.agent/skills/embedded-captions/dna/neon.json +58 -58
- package/assets/.agent/skills/embedded-captions/dna/velocity.json +89 -89
- package/assets/.agent/skills/embedded-captions/modes/cinematic/README.md +48 -48
- package/assets/.agent/skills/embedded-captions/modes/cinematic/_archive/champion/spec.md +98 -98
- package/assets/.agent/skills/embedded-captions/modes/cinematic/_archive/champion/template.html +188 -188
- package/assets/.agent/skills/embedded-captions/modes/cinematic/_archive/memory-wall/spec.md +134 -134
- package/assets/.agent/skills/embedded-captions/modes/cinematic/_archive/memory-wall/template.html +179 -179
- package/assets/.agent/skills/embedded-captions/modes/cinematic/_archive/portrait-header/spec.md +81 -81
- package/assets/.agent/skills/embedded-captions/modes/cinematic/_archive/portrait-header/template.html +170 -170
- package/assets/.agent/skills/embedded-captions/modes/cinematic/cinematic-cream/spec.md +16 -16
- package/assets/.agent/skills/embedded-captions/modes/cinematic/cinematic-cream/template.html +226 -226
- package/assets/.agent/skills/embedded-captions/modes/cinematic/engine.html +355 -355
- package/assets/.agent/skills/embedded-captions/modes/standard/_anatomy.md +233 -233
- package/assets/.agent/skills/embedded-captions/modes/standard/_motion.md +192 -192
- package/assets/.agent/skills/embedded-captions/modes/standard/fonts/build-fonts-css.cjs +97 -97
- package/assets/.agent/skills/embedded-captions/references/aesthetic-principles.md +168 -168
- package/assets/.agent/skills/embedded-captions/references/anti-patterns.md +188 -188
- package/assets/.agent/skills/embedded-captions/references/bespoke-vs-presets.md +178 -178
- package/assets/.agent/skills/embedded-captions/references/caption-grouping.md +130 -130
- package/assets/.agent/skills/embedded-captions/references/composition-craft.md +522 -522
- package/assets/.agent/skills/embedded-captions/references/direction-catalog.md +138 -138
- package/assets/.agent/skills/embedded-captions/references/example-renders/champion.html +371 -371
- package/assets/.agent/skills/embedded-captions/references/example-renders/memory-wall.html +334 -334
- package/assets/.agent/skills/embedded-captions/references/failure-modes.md +145 -145
- package/assets/.agent/skills/embedded-captions/references/layout-heuristics.md +238 -238
- package/assets/.agent/skills/embedded-captions/references/motion-vocabulary.md +148 -148
- package/assets/.agent/skills/embedded-captions/references/rail.md +68 -68
- package/assets/.agent/skills/embedded-captions/references/reference-bar.md +47 -47
- package/assets/.agent/skills/embedded-captions/references/scene-types.md +94 -94
- package/assets/.agent/skills/embedded-captions/references/test-set.md +66 -66
- package/assets/.agent/skills/embedded-captions/references/typographic-moves.md +266 -266
- package/assets/.agent/skills/embedded-captions/references/typography-presets.md +63 -63
- package/assets/.agent/skills/embedded-captions/scripts/audio-envelope.cjs +95 -95
- package/assets/.agent/skills/embedded-captions/scripts/check-occlusion.cjs +250 -250
- package/assets/.agent/skills/embedded-captions/scripts/check-overflow.cjs +194 -194
- package/assets/.agent/skills/embedded-captions/scripts/check-rail-climax.cjs +233 -233
- package/assets/.agent/skills/embedded-captions/scripts/check-timing.cjs +173 -173
- package/assets/.agent/skills/embedded-captions/scripts/fill-timings.cjs +124 -124
- package/assets/.agent/skills/embedded-captions/scripts/fit-fonts.cjs +158 -158
- package/assets/.agent/skills/embedded-captions/scripts/gen-stroke-path.py +46 -46
- package/assets/.agent/skills/embedded-captions/scripts/inject-fonts.cjs +169 -169
- package/assets/.agent/skills/embedded-captions/scripts/lib-dna.cjs +201 -201
- package/assets/.agent/skills/embedded-captions/scripts/make-cinematic.cjs +1205 -1205
- package/assets/.agent/skills/embedded-captions/scripts/make-composition.cjs +404 -404
- package/assets/.agent/skills/embedded-captions/scripts/make-theme.cjs +8781 -8781
- package/assets/.agent/skills/embedded-captions/scripts/matte.cjs +279 -279
- package/assets/.agent/skills/embedded-captions/scripts/measure-layout.cjs +293 -293
- package/assets/.agent/skills/embedded-captions/scripts/prepare.sh +39 -39
- package/assets/.agent/skills/embedded-captions/scripts/preview-frames.cjs +268 -268
- package/assets/.agent/skills/embedded-captions/scripts/render-and-composite.sh +469 -469
- package/assets/.agent/skills/embedded-captions/scripts/render-theme.sh +34 -34
- package/assets/.agent/skills/embedded-captions/scripts/safe-zones.cjs +813 -813
- package/assets/.agent/skills/embedded-captions/scripts/transcribe.cjs +332 -332
- package/assets/.agent/skills/embedded-captions/themes/PORTING.md +49 -49
- package/assets/.agent/skills/embedded-captions/themes/README.md +244 -244
- package/assets/.agent/skills/embedded-captions/themes/anchor.json +27 -27
- package/assets/.agent/skills/embedded-captions/themes/arcade.json +51 -51
- package/assets/.agent/skills/embedded-captions/themes/aurora.json +41 -41
- package/assets/.agent/skills/embedded-captions/themes/biolume.json +35 -35
- package/assets/.agent/skills/embedded-captions/themes/brush.json +74 -74
- package/assets/.agent/skills/embedded-captions/themes/chalkboard.json +52 -52
- package/assets/.agent/skills/embedded-captions/themes/dossier.json +56 -56
- package/assets/.agent/skills/embedded-captions/themes/graffiti.json +62 -62
- package/assets/.agent/skills/embedded-captions/themes/hologram.json +41 -41
- package/assets/.agent/skills/embedded-captions/themes/inkwater.json +43 -43
- package/assets/.agent/skills/embedded-captions/themes/laser.json +46 -46
- package/assets/.agent/skills/embedded-captions/themes/lastpage.json +33 -33
- package/assets/.agent/skills/embedded-captions/themes/neonsign.json +53 -53
- package/assets/.agent/skills/embedded-captions/themes/nightcity.json +56 -56
- package/assets/.agent/skills/embedded-captions/themes/ordnance.json +54 -54
- package/assets/.agent/skills/embedded-captions/themes/papercut.json +37 -37
- package/assets/.agent/skills/embedded-captions/themes/popup.json +46 -46
- package/assets/.agent/skills/embedded-captions/themes/ransom.json +62 -62
- package/assets/.agent/skills/embedded-captions/themes/scoreboard.json +54 -54
- package/assets/.agent/skills/embedded-captions/themes/spectrum.json +46 -46
- package/assets/.agent/skills/embedded-captions/themes/stardust.json +29 -29
- package/assets/.agent/skills/embedded-captions/themes/stomp.json +43 -43
- package/assets/.agent/skills/embedded-captions/themes/terminal.json +49 -49
- package/assets/.agent/skills/embedded-captions/themes/thunder.json +44 -44
- package/assets/.agent/skills/embedded-captions/themes/transit.json +44 -44
- package/assets/.agent/skills/embedded-captions/themes/vhs.json +47 -47
- package/assets/.agent/skills/faceless-explainer/SKILL.md +209 -209
- package/assets/.agent/skills/faceless-explainer/references/cut-catalog.md +215 -215
- package/assets/.agent/skills/faceless-explainer/references/motion-language.md +156 -156
- package/assets/.agent/skills/faceless-explainer/references/story-design.md +248 -248
- package/assets/.agent/skills/faceless-explainer/references/visual-design.md +146 -146
- package/assets/.agent/skills/faceless-explainer/scripts/assemble-index.mjs +570 -570
- package/assets/.agent/skills/faceless-explainer/scripts/audio.mjs +253 -253
- package/assets/.agent/skills/faceless-explainer/scripts/build-frame.mjs +536 -536
- package/assets/.agent/skills/faceless-explainer/scripts/captions.mjs +508 -508
- package/assets/.agent/skills/faceless-explainer/scripts/lib/assets.mjs +55 -55
- package/assets/.agent/skills/faceless-explainer/scripts/lib/dimensions.mjs +45 -45
- package/assets/.agent/skills/faceless-explainer/scripts/lib/storyboard.mjs +249 -249
- package/assets/.agent/skills/faceless-explainer/scripts/lib/tokens.mjs +204 -204
- package/assets/.agent/skills/faceless-explainer/scripts/lib/transition-registry.mjs +38 -38
- package/assets/.agent/skills/faceless-explainer/scripts/lib/transitions.json +71 -71
- package/assets/.agent/skills/faceless-explainer/scripts/transitions.mjs +320 -320
- package/assets/.agent/skills/faceless-explainer/sub-agents/frame-worker.md +75 -75
- package/assets/.agent/skills/figma/SKILL.md +121 -121
- package/assets/.agent/skills/general-video/SKILL.md +143 -143
- package/assets/.agent/skills/hyperframes/SKILL.md +164 -164
- package/assets/.agent/skills/hyperframes-animation/SKILL.md +84 -84
- package/assets/.agent/skills/hyperframes-animation/adapters/animate-text.md +64 -64
- package/assets/.agent/skills/hyperframes-animation/adapters/animejs.md +114 -114
- package/assets/.agent/skills/hyperframes-animation/adapters/css-animations.md +143 -143
- package/assets/.agent/skills/hyperframes-animation/adapters/gsap-easing-and-stagger.md +118 -118
- package/assets/.agent/skills/hyperframes-animation/adapters/gsap-timeline-and-labels.md +96 -96
- package/assets/.agent/skills/hyperframes-animation/adapters/gsap-transforms-and-perf.md +96 -96
- package/assets/.agent/skills/hyperframes-animation/adapters/gsap.md +105 -105
- package/assets/.agent/skills/hyperframes-animation/adapters/html-in-canvas-patterns.md +507 -507
- package/assets/.agent/skills/hyperframes-animation/adapters/lottie.md +117 -117
- package/assets/.agent/skills/hyperframes-animation/adapters/three.md +131 -131
- package/assets/.agent/skills/hyperframes-animation/adapters/typegpu.md +178 -178
- package/assets/.agent/skills/hyperframes-animation/adapters/waapi.md +101 -101
- package/assets/.agent/skills/hyperframes-animation/blueprints/comparison-split.md +27 -27
- package/assets/.agent/skills/hyperframes-animation/blueprints/constellation-hub.md +44 -44
- package/assets/.agent/skills/hyperframes-animation/blueprints/cta-morph-press.md +28 -28
- package/assets/.agent/skills/hyperframes-animation/blueprints/cursor-ui-demo.md +57 -57
- package/assets/.agent/skills/hyperframes-animation/blueprints/dataviz-countup.md +46 -46
- package/assets/.agent/skills/hyperframes-animation/blueprints/device-surface-showcase.md +53 -53
- package/assets/.agent/skills/hyperframes-animation/blueprints/grid-card-assemble.md +66 -66
- package/assets/.agent/skills/hyperframes-animation/blueprints/kinetic-type-beats.md +78 -78
- package/assets/.agent/skills/hyperframes-animation/blueprints/logo-assemble-lockup.md +69 -69
- package/assets/.agent/skills/hyperframes-animation/blueprints/overwhelm-surround.md +28 -28
- package/assets/.agent/skills/hyperframes-animation/blueprints/spatial-pan-stations.md +37 -37
- package/assets/.agent/skills/hyperframes-animation/blueprints/ticker-takeover.md +29 -29
- package/assets/.agent/skills/hyperframes-animation/blueprints/titlecard-reveal.md +42 -42
- package/assets/.agent/skills/hyperframes-animation/blueprints/typewriter-reveal.md +51 -51
- package/assets/.agent/skills/hyperframes-animation/blueprints/video-text-pivot.md +30 -30
- package/assets/.agent/skills/hyperframes-animation/blueprints-index.md +146 -146
- package/assets/.agent/skills/hyperframes-animation/examples/brand-reveal-assemble-zoom.html +382 -382
- package/assets/.agent/skills/hyperframes-animation/examples/comparison-split-cards.html +649 -649
- package/assets/.agent/skills/hyperframes-animation/examples/concept-demo-decode-pan.html +520 -520
- package/assets/.agent/skills/hyperframes-animation/examples/cta-morph-press.html +468 -468
- package/assets/.agent/skills/hyperframes-animation/examples/cta-orbit-collapse.html +1298 -1298
- package/assets/.agent/skills/hyperframes-animation/examples/demo-page-scroll-spotlight.html +759 -759
- package/assets/.agent/skills/hyperframes-animation/examples/hook-counter-burst.html +729 -729
- package/assets/.agent/skills/hyperframes-animation/examples/messaging-multi-phrase.html +352 -352
- package/assets/.agent/skills/hyperframes-animation/examples/metric-video-text-pivot.html +779 -779
- package/assets/.agent/skills/hyperframes-animation/examples/problem-mockup-overwhelm.html +1374 -1374
- package/assets/.agent/skills/hyperframes-animation/examples/proof-logo-chain.html +861 -861
- package/assets/.agent/skills/hyperframes-animation/examples/takeover-ticker-displace.html +347 -347
- package/assets/.agent/skills/hyperframes-animation/examples/workflow-approve-press.html +606 -606
- package/assets/.agent/skills/hyperframes-animation/rules/3d-page-scroll.md +227 -227
- package/assets/.agent/skills/hyperframes-animation/rules/3d-text-depth-layers.md +297 -297
- package/assets/.agent/skills/hyperframes-animation/rules/ai-tracking-box.md +382 -382
- package/assets/.agent/skills/hyperframes-animation/rules/ambient-glow-bloom.md +305 -305
- package/assets/.agent/skills/hyperframes-animation/rules/asr-keyword-glow.md +286 -286
- package/assets/.agent/skills/hyperframes-animation/rules/avatar-cloud-network.md +371 -371
- package/assets/.agent/skills/hyperframes-animation/rules/camera-cursor-tracking.md +246 -246
- package/assets/.agent/skills/hyperframes-animation/rules/card-morph-anchor.md +267 -267
- package/assets/.agent/skills/hyperframes-animation/rules/center-outward-expansion.md +227 -227
- package/assets/.agent/skills/hyperframes-animation/rules/context-sensitive-cursor.md +257 -257
- package/assets/.agent/skills/hyperframes-animation/rules/coordinate-target-zoom.md +332 -332
- package/assets/.agent/skills/hyperframes-animation/rules/counting-dynamic-scale.md +283 -283
- package/assets/.agent/skills/hyperframes-animation/rules/css-marker-patterns.md +373 -373
- package/assets/.agent/skills/hyperframes-animation/rules/cursor-click-ripple.md +262 -262
- package/assets/.agent/skills/hyperframes-animation/rules/depth-of-field-blur.md +313 -313
- package/assets/.agent/skills/hyperframes-animation/rules/depth-scatter-assemble.md +303 -303
- package/assets/.agent/skills/hyperframes-animation/rules/discrete-text-sequence.md +273 -273
- package/assets/.agent/skills/hyperframes-animation/rules/dynamic-content-sequencing.md +307 -307
- package/assets/.agent/skills/hyperframes-animation/rules/gsap-effects.md +299 -299
- package/assets/.agent/skills/hyperframes-animation/rules/hacker-flip-3d.md +223 -223
- package/assets/.agent/skills/hyperframes-animation/rules/kinetic-beat-slam.md +183 -183
- package/assets/.agent/skills/hyperframes-animation/rules/motion-blur-streak.md +328 -328
- package/assets/.agent/skills/hyperframes-animation/rules/multi-phase-camera.md +273 -273
- package/assets/.agent/skills/hyperframes-animation/rules/orbit-3d-entry.md +301 -301
- package/assets/.agent/skills/hyperframes-animation/rules/physics-press-reaction.md +350 -350
- package/assets/.agent/skills/hyperframes-animation/rules/press-release-spring.md +296 -296
- package/assets/.agent/skills/hyperframes-animation/rules/reactive-displacement.md +277 -277
- package/assets/.agent/skills/hyperframes-animation/rules/scale-swap-transition.md +298 -298
- package/assets/.agent/skills/hyperframes-animation/rules/sine-wave-loop.md +278 -278
- package/assets/.agent/skills/hyperframes-animation/rules/split-tilt-cards.md +277 -277
- package/assets/.agent/skills/hyperframes-animation/rules/spring-pop-entrance.md +273 -273
- package/assets/.agent/skills/hyperframes-animation/rules/stat-bars-and-fills.md +156 -156
- package/assets/.agent/skills/hyperframes-animation/rules/svg-icon-enrichment.md +329 -329
- package/assets/.agent/skills/hyperframes-animation/rules/svg-path-draw.md +274 -274
- package/assets/.agent/skills/hyperframes-animation/rules/vertical-spring-ticker.md +239 -239
- package/assets/.agent/skills/hyperframes-animation/rules/viewport-change.md +349 -349
- package/assets/.agent/skills/hyperframes-animation/rules-index.md +86 -86
- package/assets/.agent/skills/hyperframes-animation/scripts/animation-map.mjs +606 -606
- package/assets/.agent/skills/hyperframes-animation/scripts/package-loader.mjs +288 -288
- package/assets/.agent/skills/hyperframes-animation/scripts/package-loader.test.mjs +62 -62
- package/assets/.agent/skills/hyperframes-animation/techniques.md +507 -507
- package/assets/.agent/skills/hyperframes-animation/transitions/TRANSITION-REGISTRY.md +167 -167
- package/assets/.agent/skills/hyperframes-animation/transitions/catalog.md +127 -127
- package/assets/.agent/skills/hyperframes-animation/transitions/css-3d.md +12 -12
- package/assets/.agent/skills/hyperframes-animation/transitions/css-blur.md +51 -51
- package/assets/.agent/skills/hyperframes-animation/transitions/css-cover.md +43 -43
- package/assets/.agent/skills/hyperframes-animation/transitions/css-destruction.md +95 -95
- package/assets/.agent/skills/hyperframes-animation/transitions/css-dissolve.md +66 -66
- package/assets/.agent/skills/hyperframes-animation/transitions/css-distortion.md +45 -45
- package/assets/.agent/skills/hyperframes-animation/transitions/css-grid.md +10 -10
- package/assets/.agent/skills/hyperframes-animation/transitions/css-light.md +49 -49
- package/assets/.agent/skills/hyperframes-animation/transitions/css-mechanical.md +30 -30
- package/assets/.agent/skills/hyperframes-animation/transitions/css-other.md +25 -25
- package/assets/.agent/skills/hyperframes-animation/transitions/css-push.md +41 -41
- package/assets/.agent/skills/hyperframes-animation/transitions/css-radial.md +37 -37
- package/assets/.agent/skills/hyperframes-animation/transitions/css-scale.md +24 -24
- package/assets/.agent/skills/hyperframes-animation/transitions/overview.md +153 -153
- package/assets/.agent/skills/hyperframes-cli/SKILL.md +113 -113
- package/assets/.agent/skills/hyperframes-cli/references/doctor-browser.md +45 -45
- package/assets/.agent/skills/hyperframes-cli/references/init-and-scaffold.md +51 -51
- package/assets/.agent/skills/hyperframes-cli/references/lambda.md +132 -132
- package/assets/.agent/skills/hyperframes-cli/references/lint-validate-inspect.md +121 -121
- package/assets/.agent/skills/hyperframes-cli/references/preview-render.md +164 -164
- package/assets/.agent/skills/hyperframes-cli/references/upgrade-info-misc.md +75 -75
- package/assets/.agent/skills/hyperframes-core/SKILL.md +78 -78
- package/assets/.agent/skills/hyperframes-core/references/composition-patterns.md +263 -263
- package/assets/.agent/skills/hyperframes-core/references/data-attributes.md +70 -70
- package/assets/.agent/skills/hyperframes-core/references/determinism-rules.md +68 -68
- package/assets/.agent/skills/hyperframes-core/references/full-screen-motion.md +62 -62
- package/assets/.agent/skills/hyperframes-core/references/minimal-composition.md +66 -66
- package/assets/.agent/skills/hyperframes-core/references/script-format.md +49 -49
- package/assets/.agent/skills/hyperframes-core/references/storyboard-format.md +95 -95
- package/assets/.agent/skills/hyperframes-core/references/sub-compositions.md +237 -237
- package/assets/.agent/skills/hyperframes-core/references/subagent-dispatch.md +41 -41
- package/assets/.agent/skills/hyperframes-core/references/tailwind.md +125 -125
- package/assets/.agent/skills/hyperframes-core/references/tracks-and-clips.md +76 -76
- package/assets/.agent/skills/hyperframes-core/references/variables-and-media.md +90 -90
- package/assets/.agent/skills/hyperframes-creative/SKILL.md +70 -70
- package/assets/.agent/skills/hyperframes-creative/frame-presets/biennale-yellow/FRAME.md +289 -289
- package/assets/.agent/skills/hyperframes-creative/frame-presets/biennale-yellow/caption-skin.html +221 -221
- package/assets/.agent/skills/hyperframes-creative/frame-presets/biennale-yellow/frame-showcase.html +1214 -1214
- package/assets/.agent/skills/hyperframes-creative/frame-presets/blockframe/FRAME.md +275 -275
- package/assets/.agent/skills/hyperframes-creative/frame-presets/blockframe/caption-skin.html +224 -224
- package/assets/.agent/skills/hyperframes-creative/frame-presets/blockframe/frame-showcase.html +1347 -1347
- package/assets/.agent/skills/hyperframes-creative/frame-presets/blue-professional/FRAME.md +307 -307
- package/assets/.agent/skills/hyperframes-creative/frame-presets/blue-professional/caption-skin.html +223 -223
- package/assets/.agent/skills/hyperframes-creative/frame-presets/blue-professional/frame-showcase.html +1372 -1372
- package/assets/.agent/skills/hyperframes-creative/frame-presets/bold-poster/FRAME.md +275 -275
- package/assets/.agent/skills/hyperframes-creative/frame-presets/bold-poster/caption-skin.html +230 -230
- package/assets/.agent/skills/hyperframes-creative/frame-presets/bold-poster/frame-showcase.html +1140 -1140
- package/assets/.agent/skills/hyperframes-creative/frame-presets/broadside/FRAME.md +284 -284
- package/assets/.agent/skills/hyperframes-creative/frame-presets/broadside/caption-skin.html +225 -225
- package/assets/.agent/skills/hyperframes-creative/frame-presets/broadside/frame-showcase.html +1166 -1166
- package/assets/.agent/skills/hyperframes-creative/frame-presets/capsule/FRAME.md +284 -284
- package/assets/.agent/skills/hyperframes-creative/frame-presets/capsule/caption-skin.html +224 -224
- package/assets/.agent/skills/hyperframes-creative/frame-presets/capsule/frame-showcase.html +1465 -1465
- package/assets/.agent/skills/hyperframes-creative/frame-presets/cartesian/FRAME.md +278 -278
- package/assets/.agent/skills/hyperframes-creative/frame-presets/cartesian/caption-skin.html +222 -222
- package/assets/.agent/skills/hyperframes-creative/frame-presets/cartesian/frame-showcase.html +1263 -1263
- package/assets/.agent/skills/hyperframes-creative/frame-presets/claude/FRAME.md +277 -277
- package/assets/.agent/skills/hyperframes-creative/frame-presets/claude/caption-skin.html +224 -224
- package/assets/.agent/skills/hyperframes-creative/frame-presets/claude/frame-showcase.html +1439 -1439
- package/assets/.agent/skills/hyperframes-creative/frame-presets/cobalt-grid/FRAME.md +265 -265
- package/assets/.agent/skills/hyperframes-creative/frame-presets/cobalt-grid/caption-skin.html +238 -238
- package/assets/.agent/skills/hyperframes-creative/frame-presets/cobalt-grid/frame-showcase.html +1468 -1468
- package/assets/.agent/skills/hyperframes-creative/frame-presets/coral/FRAME.md +314 -314
- package/assets/.agent/skills/hyperframes-creative/frame-presets/coral/caption-skin.html +226 -226
- package/assets/.agent/skills/hyperframes-creative/frame-presets/coral/frame-showcase.html +1268 -1268
- package/assets/.agent/skills/hyperframes-creative/frame-presets/creative-mode/FRAME.md +333 -333
- package/assets/.agent/skills/hyperframes-creative/frame-presets/creative-mode/caption-skin.html +227 -227
- package/assets/.agent/skills/hyperframes-creative/frame-presets/creative-mode/frame-showcase.html +1330 -1330
- package/assets/.agent/skills/hyperframes-creative/frame-presets/daisy-days/FRAME.md +274 -274
- package/assets/.agent/skills/hyperframes-creative/frame-presets/daisy-days/caption-skin.html +230 -230
- package/assets/.agent/skills/hyperframes-creative/frame-presets/daisy-days/frame-showcase.html +1444 -1444
- package/assets/.agent/skills/hyperframes-creative/frame-presets/editorial-forest/FRAME.md +265 -265
- package/assets/.agent/skills/hyperframes-creative/frame-presets/editorial-forest/caption-skin.html +223 -223
- package/assets/.agent/skills/hyperframes-creative/frame-presets/editorial-forest/frame-showcase.html +1273 -1273
- package/assets/.agent/skills/hyperframes-creative/palettes/bold-energetic.md +14 -14
- package/assets/.agent/skills/hyperframes-creative/palettes/clean-corporate.md +14 -14
- package/assets/.agent/skills/hyperframes-creative/palettes/dark-premium.md +14 -14
- package/assets/.agent/skills/hyperframes-creative/palettes/jewel-rich.md +14 -14
- package/assets/.agent/skills/hyperframes-creative/palettes/monochrome.md +14 -14
- package/assets/.agent/skills/hyperframes-creative/palettes/nature-earth.md +14 -14
- package/assets/.agent/skills/hyperframes-creative/palettes/neon-electric.md +14 -14
- package/assets/.agent/skills/hyperframes-creative/palettes/pastel-soft.md +14 -14
- package/assets/.agent/skills/hyperframes-creative/palettes/warm-editorial.md +14 -14
- package/assets/.agent/skills/hyperframes-creative/references/audio-reactive.md +76 -76
- package/assets/.agent/skills/hyperframes-creative/references/beat-direction.md +164 -164
- package/assets/.agent/skills/hyperframes-creative/references/composition-patterns.md +199 -199
- package/assets/.agent/skills/hyperframes-creative/references/data-in-motion.md +19 -19
- package/assets/.agent/skills/hyperframes-creative/references/design-adherence.md +19 -19
- package/assets/.agent/skills/hyperframes-creative/references/design-picker.md +123 -123
- package/assets/.agent/skills/hyperframes-creative/references/design-spec.md +55 -55
- package/assets/.agent/skills/hyperframes-creative/references/house-style.md +73 -73
- package/assets/.agent/skills/hyperframes-creative/references/motion-principles.md +150 -150
- package/assets/.agent/skills/hyperframes-creative/references/narration.md +92 -92
- package/assets/.agent/skills/hyperframes-creative/references/prompt-expansion.md +68 -68
- package/assets/.agent/skills/hyperframes-creative/references/typography.md +218 -218
- package/assets/.agent/skills/hyperframes-creative/references/video-composition.md +63 -63
- package/assets/.agent/skills/hyperframes-creative/references/visual-styles.md +457 -457
- package/assets/.agent/skills/hyperframes-creative/scripts/contrast-report.mjs +353 -353
- package/assets/.agent/skills/hyperframes-creative/scripts/extract-audio-data.py +188 -188
- package/assets/.agent/skills/hyperframes-creative/scripts/package-loader.mjs +288 -288
- package/assets/.agent/skills/hyperframes-creative/scripts/package-loader.test.mjs +62 -62
- package/assets/.agent/skills/hyperframes-creative/templates/design-picker.html +1432 -1432
- package/assets/.agent/skills/hyperframes-keyframes/SKILL.md +237 -237
- package/assets/.agent/skills/hyperframes-keyframes/agents/openai.yaml +4 -4
- package/assets/.agent/skills/hyperframes-keyframes/references/keyframe-patterns.md +106 -106
- package/assets/.agent/skills/hyperframes-media/SKILL.md +97 -97
- package/assets/.agent/skills/hyperframes-media/assets/sfx/CREDITS.md +35 -35
- package/assets/.agent/skills/hyperframes-media/assets/sfx/manifest.json +97 -97
- package/assets/.agent/skills/hyperframes-media/references/bgm.md +72 -72
- package/assets/.agent/skills/hyperframes-media/references/captions/authoring.md +159 -159
- package/assets/.agent/skills/hyperframes-media/references/captions/motion.md +87 -87
- package/assets/.agent/skills/hyperframes-media/references/captions/transcript-handling.md +97 -97
- package/assets/.agent/skills/hyperframes-media/references/remove-background.md +143 -143
- package/assets/.agent/skills/hyperframes-media/references/requirements.md +29 -29
- package/assets/.agent/skills/hyperframes-media/references/sfx.md +42 -42
- package/assets/.agent/skills/hyperframes-media/references/transcribe.md +52 -52
- package/assets/.agent/skills/hyperframes-media/references/tts-to-captions.md +24 -24
- package/assets/.agent/skills/hyperframes-media/references/tts.md +135 -135
- package/assets/.agent/skills/hyperframes-media/scripts/audio.mjs +293 -293
- package/assets/.agent/skills/hyperframes-media/scripts/heygen-tts.mjs +121 -121
- package/assets/.agent/skills/hyperframes-media/scripts/lib/bgm.mjs +235 -235
- package/assets/.agent/skills/hyperframes-media/scripts/lib/concurrency.mjs +14 -14
- package/assets/.agent/skills/hyperframes-media/scripts/lib/concurrency.test.mjs +41 -41
- package/assets/.agent/skills/hyperframes-media/scripts/lib/heygen.mjs +131 -131
- package/assets/.agent/skills/hyperframes-media/scripts/lib/sfx.mjs +128 -128
- package/assets/.agent/skills/hyperframes-media/scripts/lib/tts.mjs +298 -298
- package/assets/.agent/skills/hyperframes-media/scripts/lib/tts.spawn.test.mjs +97 -97
- package/assets/.agent/skills/hyperframes-media/scripts/lib/tts.test.mjs +66 -66
- package/assets/.agent/skills/hyperframes-media/scripts/lyria-recipe.py +128 -128
- package/assets/.agent/skills/hyperframes-media/scripts/wait-bgm.mjs +167 -167
- package/assets/.agent/skills/hyperframes-registry/SKILL.md +101 -101
- package/assets/.agent/skills/hyperframes-registry/examples/add-block.md +51 -51
- package/assets/.agent/skills/hyperframes-registry/examples/add-component.md +73 -73
- package/assets/.agent/skills/hyperframes-registry/references/contributing.md +166 -166
- package/assets/.agent/skills/hyperframes-registry/references/demo-html-pattern.md +54 -54
- package/assets/.agent/skills/hyperframes-registry/references/discovery.md +215 -215
- package/assets/.agent/skills/hyperframes-registry/references/install-locations.md +45 -45
- package/assets/.agent/skills/hyperframes-registry/references/templates.md +417 -417
- package/assets/.agent/skills/hyperframes-registry/references/wiring-blocks.md +61 -61
- package/assets/.agent/skills/hyperframes-registry/references/wiring-components.md +39 -39
- package/assets/.agent/skills/media-use/SKILL.md +124 -124
- package/assets/.agent/skills/media-use/scripts/eval.mjs +369 -369
- package/assets/.agent/skills/media-use/scripts/lib/adopt.mjs +112 -112
- package/assets/.agent/skills/media-use/scripts/lib/bgm-provider.mjs +20 -20
- package/assets/.agent/skills/media-use/scripts/lib/brand-provider.mjs +59 -59
- package/assets/.agent/skills/media-use/scripts/lib/cache.mjs +114 -114
- package/assets/.agent/skills/media-use/scripts/lib/freeze.mjs +26 -26
- package/assets/.agent/skills/media-use/scripts/lib/heygen-search.mjs +51 -51
- package/assets/.agent/skills/media-use/scripts/lib/image-provider.mjs +44 -44
- package/assets/.agent/skills/media-use/scripts/lib/index-gen.mjs +63 -63
- package/assets/.agent/skills/media-use/scripts/lib/manifest.mjs +91 -91
- package/assets/.agent/skills/media-use/scripts/lib/manifest.test.mjs +293 -293
- package/assets/.agent/skills/media-use/scripts/lib/probe.mjs +39 -39
- package/assets/.agent/skills/media-use/scripts/lib/probe.test.mjs +31 -31
- package/assets/.agent/skills/media-use/scripts/lib/providers.mjs +29 -29
- package/assets/.agent/skills/media-use/scripts/lib/sfx-provider.mjs +23 -23
- package/assets/.agent/skills/media-use/scripts/resolve.mjs +247 -247
- package/assets/.agent/skills/media-use/scripts/resolve.test.mjs +247 -247
- package/assets/.agent/skills/motion-graphics/SKILL.md +172 -172
- package/assets/.agent/skills/motion-graphics/agents/builder.md +40 -40
- package/assets/.agent/skills/motion-graphics/agents/director.md +53 -53
- package/assets/.agent/skills/motion-graphics/agents/finalize.md +17 -17
- package/assets/.agent/skills/motion-graphics/catalog-map.md +40 -40
- package/assets/.agent/skills/motion-graphics/categories/asset-fusion/module.md +37 -37
- package/assets/.agent/skills/motion-graphics/categories/charts/module.md +21 -21
- package/assets/.agent/skills/motion-graphics/categories/kinetic-type/module.md +19 -19
- package/assets/.agent/skills/motion-graphics/categories/logo-reveal/module.md +17 -17
- package/assets/.agent/skills/motion-graphics/categories/lower-thirds/module.md +16 -16
- package/assets/.agent/skills/motion-graphics/categories/maps/bake-basemap.mjs +273 -273
- package/assets/.agent/skills/motion-graphics/categories/maps/module.md +61 -61
- package/assets/.agent/skills/motion-graphics/categories/news/module.md +56 -56
- package/assets/.agent/skills/motion-graphics/categories/stat/module.md +21 -21
- package/assets/.agent/skills/motion-graphics/categories/tweet/module.md +16 -16
- package/assets/.agent/skills/motion-graphics/categories/webpage/module.md +21 -21
- package/assets/.agent/skills/motion-graphics/grounding/PROTOCOL.md +64 -64
- package/assets/.agent/skills/motion-graphics/grounding/locate.mjs +227 -227
- package/assets/.agent/skills/motion-graphics/phases/source/guide.md +21 -21
- package/assets/.agent/skills/motion-graphics/references/builder-contract.md +38 -38
- package/assets/.agent/skills/motion-graphics/references/motion-vocabulary.md +43 -43
- package/assets/.agent/skills/motion-graphics/references/shot-plan-ir.md +54 -54
- package/assets/.agent/skills/motion-graphics/samples/asset-fusion/_ref-circle-highlight.html +306 -306
- package/assets/.agent/skills/music-to-video/SKILL.md +197 -197
- package/assets/.agent/skills/music-to-video/references/frame-skeleton.md +100 -100
- package/assets/.agent/skills/music-to-video/references/montage.md +58 -58
- package/assets/.agent/skills/music-to-video/references/motion-primitive-catalog.md +75 -75
- package/assets/.agent/skills/music-to-video/references/motion-primitives/3d-card-flip/index.html +154 -154
- package/assets/.agent/skills/music-to-video/references/motion-primitives/assets/gsap.min.js +11 -11
- package/assets/.agent/skills/music-to-video/references/motion-primitives/bg-flow-field/index.html +326 -326
- package/assets/.agent/skills/music-to-video/references/motion-primitives/binary-decrypt/index.html +120 -120
- package/assets/.agent/skills/music-to-video/references/motion-primitives/blur-resolve/index.html +95 -95
- package/assets/.agent/skills/music-to-video/references/motion-primitives/braam-punch/index.html +135 -135
- package/assets/.agent/skills/music-to-video/references/motion-primitives/chromatic-split/index.html +146 -146
- package/assets/.agent/skills/music-to-video/references/motion-primitives/chrome-sweep/index.html +103 -103
- package/assets/.agent/skills/music-to-video/references/motion-primitives/counting-punch/index.html +154 -154
- package/assets/.agent/skills/music-to-video/references/motion-primitives/crash-zoom-in/index.html +155 -155
- package/assets/.agent/skills/music-to-video/references/motion-primitives/datamosh-smear/index.html +166 -166
- package/assets/.agent/skills/music-to-video/references/motion-primitives/directional-fill/index.html +133 -133
- package/assets/.agent/skills/music-to-video/references/motion-primitives/dolly-zoom/index.html +137 -137
- package/assets/.agent/skills/music-to-video/references/motion-primitives/electric-arc/index.html +144 -144
- package/assets/.agent/skills/music-to-video/references/motion-primitives/flash-cut/index.html +132 -132
- package/assets/.agent/skills/music-to-video/references/motion-primitives/gooey-metaball/index.html +241 -241
- package/assets/.agent/skills/music-to-video/references/motion-primitives/hard-cut/index.html +117 -117
- package/assets/.agent/skills/music-to-video/references/motion-primitives/hypercut-whip/index.html +79 -79
- package/assets/.agent/skills/music-to-video/references/motion-primitives/iris-open/index.html +104 -104
- package/assets/.agent/skills/music-to-video/references/motion-primitives/kinetic-letter-in/index.html +92 -92
- package/assets/.agent/skills/music-to-video/references/motion-primitives/liquid-morph/index.html +131 -131
- package/assets/.agent/skills/music-to-video/references/motion-primitives/mask-reveal/index.html +109 -109
- package/assets/.agent/skills/music-to-video/references/motion-primitives/mosaic-pack/index.html +124 -124
- package/assets/.agent/skills/music-to-video/references/motion-primitives/neon-flicker/index.html +108 -108
- package/assets/.agent/skills/music-to-video/references/motion-primitives/outline-to-fill/index.html +117 -117
- package/assets/.agent/skills/music-to-video/references/motion-primitives/palette-flip/index.html +132 -132
- package/assets/.agent/skills/music-to-video/references/motion-primitives/particle-burst/index.html +141 -141
- package/assets/.agent/skills/music-to-video/references/motion-primitives/pixel-dissolve/index.html +121 -121
- package/assets/.agent/skills/music-to-video/references/motion-primitives/radial-burst-lines/index.html +160 -160
- package/assets/.agent/skills/music-to-video/references/motion-primitives/screen-shake/index.html +113 -113
- package/assets/.agent/skills/music-to-video/references/motion-primitives/slot-machine-reveal/index.html +130 -130
- package/assets/.agent/skills/music-to-video/references/motion-primitives/spotlight-sweep/index.html +137 -137
- package/assets/.agent/skills/music-to-video/references/motion-primitives/staggered-exit/index.html +117 -117
- package/assets/.agent/skills/music-to-video/references/motion-primitives/text-spectral-rays/USAGE.md +42 -42
- package/assets/.agent/skills/music-to-video/references/motion-primitives/text-spectral-rays/index.html +313 -313
- package/assets/.agent/skills/music-to-video/references/motion-primitives/text-wave-distort/index.html +136 -136
- package/assets/.agent/skills/music-to-video/references/motion-primitives/tile-mosaic/index.html +144 -144
- package/assets/.agent/skills/music-to-video/references/motion-primitives/typewriter-reveal/index.html +122 -122
- package/assets/.agent/skills/music-to-video/references/motion-primitives/word-grid-burst/index.html +126 -126
- package/assets/.agent/skills/music-to-video/references/planning.md +104 -104
- package/assets/.agent/skills/music-to-video/references/storyboard-format.md +94 -94
- package/assets/.agent/skills/music-to-video/references/template-catalog.md +106 -106
- package/assets/.agent/skills/music-to-video/references/templates/card-flyby/index.html +527 -527
- package/assets/.agent/skills/music-to-video/references/templates/card-flyby/program.json +13 -13
- package/assets/.agent/skills/music-to-video/references/templates/held-message-living-field/index.html +485 -485
- package/assets/.agent/skills/music-to-video/references/templates/held-text-strobe-burst/index.html +302 -302
- package/assets/.agent/skills/music-to-video/references/templates/intro-kinetic-cascade/index.html +610 -610
- package/assets/.agent/skills/music-to-video/references/templates/intro-kinetic-cascade/program.json +41 -41
- package/assets/.agent/skills/music-to-video/references/templates/logo-split-lockup-pulse/index.html +596 -596
- package/assets/.agent/skills/music-to-video/references/templates/poster-tile-mosaic/index.html +589 -589
- package/assets/.agent/skills/music-to-video/references/templates/poster-tile-mosaic/program.json +25 -25
- package/assets/.agent/skills/music-to-video/references/templates/roll-flipbook-word-cycle/index.html +267 -267
- package/assets/.agent/skills/music-to-video/references/templates/split-anchor-word-slot/index.html +594 -594
- package/assets/.agent/skills/music-to-video/references/templates/split-anchor-word-slot/program.json +39 -39
- package/assets/.agent/skills/music-to-video/references/templates/typewriter-phrase-keyword-shuffle/index.html +238 -238
- package/assets/.agent/skills/music-to-video/scripts/analyze-beatgrid.py +531 -531
- package/assets/.agent/skills/music-to-video/scripts/assemble-index.mjs +218 -218
- package/assets/.agent/skills/music-to-video/scripts/lib/storyboard.mjs +249 -249
- package/assets/.agent/skills/music-to-video/scripts/stage-assets.mjs +58 -58
- package/assets/.agent/skills/music-to-video/scripts/validate-plan.mjs +161 -161
- package/assets/.agent/skills/music-to-video/sub-agents/frame-worker.md +75 -75
- package/assets/.agent/skills/pr-to-video/SKILL.md +240 -240
- package/assets/.agent/skills/pr-to-video/references/code-vocabulary.md +111 -111
- package/assets/.agent/skills/pr-to-video/references/cut-catalog.md +215 -215
- package/assets/.agent/skills/pr-to-video/references/motion-language.md +156 -156
- package/assets/.agent/skills/pr-to-video/references/story-design.md +211 -211
- package/assets/.agent/skills/pr-to-video/references/visual-design.md +164 -164
- package/assets/.agent/skills/pr-to-video/scripts/assemble-index.mjs +570 -570
- package/assets/.agent/skills/pr-to-video/scripts/audio.mjs +253 -253
- package/assets/.agent/skills/pr-to-video/scripts/build-frame.mjs +536 -536
- package/assets/.agent/skills/pr-to-video/scripts/captions.mjs +508 -508
- package/assets/.agent/skills/pr-to-video/scripts/fetch-people-avatars.mjs +157 -157
- package/assets/.agent/skills/pr-to-video/scripts/fetch-pr.mjs +164 -164
- package/assets/.agent/skills/pr-to-video/scripts/ingest.mjs +539 -539
- package/assets/.agent/skills/pr-to-video/scripts/lib/assets.mjs +55 -55
- package/assets/.agent/skills/pr-to-video/scripts/lib/dimensions.mjs +45 -45
- package/assets/.agent/skills/pr-to-video/scripts/lib/storyboard.mjs +249 -249
- package/assets/.agent/skills/pr-to-video/scripts/lib/tokens.mjs +204 -204
- package/assets/.agent/skills/pr-to-video/scripts/lib/transition-registry.mjs +38 -38
- package/assets/.agent/skills/pr-to-video/scripts/lib/transitions.json +71 -71
- package/assets/.agent/skills/pr-to-video/scripts/transitions.mjs +320 -320
- package/assets/.agent/skills/pr-to-video/sub-agents/frame-worker.md +95 -95
- package/assets/.agent/skills/product-launch-video/SKILL.md +208 -208
- package/assets/.agent/skills/product-launch-video/references/cut-catalog.md +220 -220
- package/assets/.agent/skills/product-launch-video/references/motion-language.md +156 -156
- package/assets/.agent/skills/product-launch-video/references/story-design.md +373 -373
- package/assets/.agent/skills/product-launch-video/references/visual-design.md +126 -126
- package/assets/.agent/skills/product-launch-video/scripts/assemble-index.mjs +570 -570
- package/assets/.agent/skills/product-launch-video/scripts/audio.mjs +253 -253
- package/assets/.agent/skills/product-launch-video/scripts/build-frame.mjs +536 -536
- package/assets/.agent/skills/product-launch-video/scripts/captions.mjs +508 -508
- package/assets/.agent/skills/product-launch-video/scripts/lib/assets.mjs +55 -55
- package/assets/.agent/skills/product-launch-video/scripts/lib/dimensions.mjs +45 -45
- package/assets/.agent/skills/product-launch-video/scripts/lib/storyboard.mjs +249 -249
- package/assets/.agent/skills/product-launch-video/scripts/lib/tokens.mjs +204 -204
- package/assets/.agent/skills/product-launch-video/scripts/lib/transition-registry.mjs +38 -38
- package/assets/.agent/skills/product-launch-video/scripts/lib/transitions.json +71 -71
- package/assets/.agent/skills/product-launch-video/scripts/stage-assets.mjs +39 -39
- package/assets/.agent/skills/product-launch-video/scripts/transitions.mjs +320 -320
- package/assets/.agent/skills/product-launch-video/sub-agents/frame-worker.md +75 -75
- package/assets/.agent/skills/remotion/SKILL.md +357 -38
- package/assets/.agent/skills/remotion/rules/3d.md +5 -5
- package/assets/.agent/skills/remotion/rules/assets/text-animations-word-highlight.tsx +1 -6
- package/assets/.agent/skills/remotion/rules/audio-visualization.md +198 -0
- package/assets/.agent/skills/remotion/rules/audio.md +1 -4
- package/assets/.agent/skills/remotion/rules/calculate-metadata.md +48 -18
- package/assets/.agent/skills/remotion/rules/compositions.md +16 -24
- package/assets/.agent/skills/remotion/rules/display-captions.md +79 -21
- package/assets/.agent/skills/remotion/rules/effects.md +235 -0
- package/assets/.agent/skills/remotion/rules/ffmpeg.md +34 -0
- package/assets/.agent/skills/remotion/rules/get-audio-duration.md +13 -13
- package/assets/.agent/skills/remotion/rules/get-video-dimensions.md +1 -1
- package/assets/.agent/skills/remotion/rules/get-video-duration.md +12 -10
- package/assets/.agent/skills/remotion/rules/gifs.md +21 -18
- package/assets/.agent/skills/remotion/rules/google-fonts.md +72 -0
- package/assets/.agent/skills/remotion/rules/html-in-canvas.md +122 -0
- package/assets/.agent/skills/remotion/rules/images.md +5 -64
- package/assets/.agent/skills/remotion/rules/import-srt-captions.md +9 -7
- package/assets/.agent/skills/remotion/rules/light-leaks.md +73 -0
- package/assets/.agent/skills/remotion/rules/local-fonts.md +65 -0
- package/assets/.agent/skills/remotion/rules/lottie.md +10 -8
- package/assets/.agent/skills/remotion/rules/maplibre.md +458 -0
- package/assets/.agent/skills/remotion/rules/measuring-dom-nodes.md +0 -1
- package/assets/.agent/skills/remotion/rules/measuring-text.md +2 -5
- package/assets/.agent/skills/remotion/rules/parameters.md +21 -10
- package/assets/.agent/skills/remotion/rules/sequencing.md +35 -9
- package/assets/.agent/skills/remotion/rules/sfx.md +51 -0
- package/assets/.agent/skills/remotion/rules/silence-detection.md +71 -0
- package/assets/.agent/skills/remotion/rules/subtitles.md +36 -0
- package/assets/.agent/skills/remotion/rules/tailwind.md +2 -2
- package/assets/.agent/skills/remotion/rules/timing.md +89 -106
- package/assets/.agent/skills/remotion/rules/transcribe-captions.md +58 -7
- package/assets/.agent/skills/remotion/rules/transitions.md +117 -42
- package/assets/.agent/skills/remotion/rules/transparent-videos.md +106 -0
- package/assets/.agent/skills/remotion/rules/trimming.md +1 -3
- package/assets/.agent/skills/remotion/rules/video-layout.md +68 -0
- package/assets/.agent/skills/remotion/rules/voiceover.md +99 -0
- package/assets/.agent/skills/remotion-real-ui-video/SKILL.md +264 -264
- package/assets/.agent/skills/remotion-real-ui-video/references/anti-patterns.md +114 -114
- package/assets/.agent/skills/remotion-real-ui-video/references/completion-checklist.md +75 -75
- package/assets/.agent/skills/remotion-real-ui-video/references/real-ui-bridge-example.md +93 -93
- package/assets/.agent/skills/remotion-to-hyperframes/SKILL.md +127 -127
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/run.sh +249 -249
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-1-title-card/README.md +41 -41
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-1-title-card/expected.json +26 -26
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-1-title-card/hf-src/index.html +61 -61
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-1-title-card/remotion-src/package.json +14 -14
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-1-title-card/remotion-src/remotion.config.ts +13 -13
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-1-title-card/remotion-src/src/Root.tsx +13 -13
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-1-title-card/remotion-src/src/TitleCard.tsx +34 -34
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-1-title-card/remotion-src/src/index.ts +4 -4
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-1-title-card/remotion-src/tsconfig.json +15 -15
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-2-multi-scene/README.md +54 -54
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-2-multi-scene/expected.json +29 -29
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-2-multi-scene/hf-src/index.html +118 -118
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-2-multi-scene/remotion-src/package.json +14 -14
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-2-multi-scene/remotion-src/remotion.config.ts +13 -13
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-2-multi-scene/remotion-src/src/MultiScene.tsx +105 -105
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-2-multi-scene/remotion-src/src/Root.tsx +13 -13
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-2-multi-scene/remotion-src/src/index.ts +4 -4
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-2-multi-scene/remotion-src/tsconfig.json +15 -15
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-2-multi-scene/setup.sh +34 -34
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-3-data-driven/README.md +85 -85
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-3-data-driven/expected.json +41 -41
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-3-data-driven/hf-src/index.html +269 -269
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-3-data-driven/remotion-src/package.json +15 -15
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-3-data-driven/remotion-src/remotion.config.ts +13 -13
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-3-data-driven/remotion-src/src/Root.tsx +27 -27
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-3-data-driven/remotion-src/src/Stargazed.tsx +37 -37
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-3-data-driven/remotion-src/src/components/AnimatedNumber.tsx +23 -23
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-3-data-driven/remotion-src/src/components/StatCard.tsx +59 -59
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-3-data-driven/remotion-src/src/components/UnderlinedText.tsx +47 -47
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-3-data-driven/remotion-src/src/index.ts +4 -4
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-3-data-driven/remotion-src/src/scenes/OutroScene.tsx +18 -18
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-3-data-driven/remotion-src/src/scenes/StatsScene.tsx +34 -34
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-3-data-driven/remotion-src/src/scenes/TitleScene.tsx +55 -55
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-3-data-driven/remotion-src/tsconfig.json +15 -15
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-4-escape-hatch/README.md +51 -51
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-4-escape-hatch/cases/01-use-state.tsx +29 -29
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-4-escape-hatch/cases/02-use-effect-deps.tsx +29 -29
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-4-escape-hatch/cases/03-async-metadata.tsx +39 -39
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-4-escape-hatch/cases/04-third-party-react.tsx +30 -30
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-4-escape-hatch/cases/05-lambda-config.tsx +38 -38
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-4-escape-hatch/cases/06-warnings-only.tsx +36 -36
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-4-escape-hatch/cases/07-custom-hook.tsx +28 -28
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-4-escape-hatch/cases/08-mixed.tsx +41 -41
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-4-escape-hatch/expected.json +85 -85
- package/assets/.agent/skills/remotion-to-hyperframes/assets/test-corpus/tier-4-escape-hatch/validate.sh +110 -110
- package/assets/.agent/skills/remotion-to-hyperframes/references/api-map.md +142 -142
- package/assets/.agent/skills/remotion-to-hyperframes/references/escape-hatch.md +115 -115
- package/assets/.agent/skills/remotion-to-hyperframes/references/eval.md +140 -140
- package/assets/.agent/skills/remotion-to-hyperframes/references/fonts.md +112 -112
- package/assets/.agent/skills/remotion-to-hyperframes/references/limitations.md +136 -136
- package/assets/.agent/skills/remotion-to-hyperframes/references/lottie.md +121 -121
- package/assets/.agent/skills/remotion-to-hyperframes/references/media.md +149 -149
- package/assets/.agent/skills/remotion-to-hyperframes/references/parameters.md +167 -167
- package/assets/.agent/skills/remotion-to-hyperframes/references/sequencing.md +195 -195
- package/assets/.agent/skills/remotion-to-hyperframes/references/timing.md +165 -165
- package/assets/.agent/skills/remotion-to-hyperframes/references/transitions.md +114 -114
- package/assets/.agent/skills/remotion-to-hyperframes/scripts/frame_strip.sh +107 -107
- package/assets/.agent/skills/remotion-to-hyperframes/scripts/lint_source.py +358 -358
- package/assets/.agent/skills/remotion-to-hyperframes/scripts/render_diff.sh +103 -103
- package/assets/.agent/skills/remotion-to-hyperframes/scripts/tests/fixtures/blocker.tsx +50 -50
- package/assets/.agent/skills/remotion-to-hyperframes/scripts/tests/fixtures/clean.tsx +46 -46
- package/assets/.agent/skills/remotion-to-hyperframes/scripts/tests/smoke.sh +90 -90
- package/assets/.agent/skills/shared-resend-portfolio/SKILL.md +124 -124
- package/assets/.agent/skills/slideshow/SKILL.md +550 -550
- package/assets/.agent/skills/slideshow/references/standalone-harness.md +1020 -1020
- package/assets/.agent/skills/talking-head-recut/NOTICE.md +39 -39
- package/assets/.agent/skills/talking-head-recut/SKILL.md +1191 -1191
- package/assets/.agent/skills/talking-head-recut/assets/vendor/gsap.min.js +10 -10
- package/assets/.agent/skills/talking-head-recut/references/DESIGN_INDEX.md +145 -145
- package/assets/.agent/skills/talking-head-recut/references/frames/clean.html +92 -92
- package/assets/.agent/skills/talking-head-recut/references/frames/hairline.html +171 -171
- package/assets/.agent/skills/talking-head-recut/references/frames/polaroid.html +131 -131
- package/assets/.agent/skills/talking-head-recut/references/layouts/overlay.html +164 -164
- package/assets/.agent/skills/talking-head-recut/references/layouts/pip.html +143 -143
- package/assets/.agent/skills/talking-head-recut/references/layouts/split.html +121 -121
- package/assets/.agent/skills/talking-head-recut/references/layouts/stack.html +109 -109
- package/assets/.agent/skills/talking-head-recut/references/styles/academic.html +172 -172
- package/assets/.agent/skills/talking-head-recut/references/styles/audit.html +170 -170
- package/assets/.agent/skills/talking-head-recut/references/styles/editorial.html +189 -189
- package/assets/.agent/skills/talking-head-recut/references/styles/geom.html +181 -181
- package/assets/.agent/skills/talking-head-recut/references/styles/minimal.html +130 -130
- package/assets/.agent/skills/talking-head-recut/references/styles/spotlight.html +142 -142
- package/assets/.agent/skills/talking-head-recut/references/styles/swiss.html +188 -188
- package/assets/.agent/skills/talking-head-recut/references/styles/terminal.html +196 -196
- package/assets/.agent/skills/talking-head-recut/references/styles/whiteboard.html +170 -170
- package/assets/.agent/skills/talking-head-recut/references/styles/xhs.html +206 -206
- package/assets/.agent/skills/website-to-video/SKILL.md +145 -145
- package/assets/.agent/skills/website-to-video/assets/sfx/CREDITS.md +35 -35
- package/assets/.agent/skills/website-to-video/assets/sfx/manifest.json +97 -97
- package/assets/.agent/skills/website-to-video/references/beat-builder-guide.md +263 -263
- package/assets/.agent/skills/website-to-video/references/capabilities.md +713 -713
- package/assets/.agent/skills/website-to-video/references/step-0-capture.md +55 -55
- package/assets/.agent/skills/website-to-video/references/step-1-design.md +333 -333
- package/assets/.agent/skills/website-to-video/references/step-2-brief.md +178 -178
- package/assets/.agent/skills/website-to-video/references/step-3-storyboard.md +572 -572
- package/assets/.agent/skills/website-to-video/references/step-4-vo.md +230 -230
- package/assets/.agent/skills/website-to-video/references/step-5-build.md +483 -483
- package/assets/.agent/skills/website-to-video/references/step-6-validate.md +341 -341
- package/assets/.agent/skills/website-to-video/scripts/w2h-verify.mjs +759 -759
- package/package.json +5 -4
- package/src/pi-takomi-core/workflows.ts +86 -86
- package/src/takomi-stats.js +5 -5
- package/assets/.agent/skills/remotion/rules/animations.md +0 -29
- package/assets/.agent/skills/remotion/rules/assets.md +0 -78
- package/assets/.agent/skills/remotion/rules/can-decode.md +0 -75
- package/assets/.agent/skills/remotion/rules/charts.md +0 -58
- package/assets/.agent/skills/remotion/rules/extract-frames.md +0 -229
- package/assets/.agent/skills/remotion/rules/fonts.md +0 -152
- package/assets/.agent/skills/remotion/rules/maps.md +0 -403
|
@@ -1,227 +1,227 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: 3d-page-scroll
|
|
3
|
-
description: Full webpage rendered as tilted 3D card that scrolls to reveal specific sections.
|
|
4
|
-
metadata:
|
|
5
|
-
tags: 3d, page, scroll, webpage, tilt, product-demo, perspective
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
# 3D Page Scroll
|
|
9
|
-
|
|
10
|
-
A webpage (or long content) presented as a tilted 3D card. Spring-eased scroll reveals specific sections while the static 3D perspective adds physical depth.
|
|
11
|
-
|
|
12
|
-
## How It Works
|
|
13
|
-
|
|
14
|
-
Two independent transforms combine:
|
|
15
|
-
|
|
16
|
-
1. **3D tilt** — Static `rotateY` + `rotateX` with `perspective` on the card. The angle does **not** change during the scene.
|
|
17
|
-
2. **Scroll** — The content inside the card translates vertically (`translateY` / `y` in GSAP) within a clipped container, driven by a GSAP tween. Spring-like deceleration via `ease: "power3.out"` or `"power4.out"`.
|
|
18
|
-
|
|
19
|
-
Optional layer:
|
|
20
|
-
|
|
21
|
-
3. **Spotlight overlay** — A radial-gradient mask dims everything except a focal region after the scroll lands. Use to draw attention to one section.
|
|
22
|
-
|
|
23
|
-
For multi-step scrolling (scroll → pause → scroll), use multiple `tl.to(".page-content", { y: -<distance>, ... }, <position>)` calls at different timeline positions.
|
|
24
|
-
|
|
25
|
-
## HTML
|
|
26
|
-
|
|
27
|
-
```html
|
|
28
|
-
<div
|
|
29
|
-
class="scene"
|
|
30
|
-
id="page-scroll-scene"
|
|
31
|
-
data-composition-id="page-scroll-scene"
|
|
32
|
-
data-start="0"
|
|
33
|
-
data-duration="5"
|
|
34
|
-
data-track-index="0"
|
|
35
|
-
>
|
|
36
|
-
<div class="tilt-card">
|
|
37
|
-
<div class="page-content">
|
|
38
|
-
<!-- Full {Brand} webpage recreation, taller than card height so
|
|
39
|
-
scrolling matters. Each section is real DOM, not a screenshot. -->
|
|
40
|
-
<section class="page-hero">{heroContents}</section>
|
|
41
|
-
<section class="page-features">{featuresContents}</section>
|
|
42
|
-
<section class="page-target" id="target-section">{targetContents}</section>
|
|
43
|
-
<section class="page-cta">{ctaContents}</section>
|
|
44
|
-
</div>
|
|
45
|
-
|
|
46
|
-
<div class="spotlight"></div>
|
|
47
|
-
</div>
|
|
48
|
-
</div>
|
|
49
|
-
```
|
|
50
|
-
|
|
51
|
-
## CSS (hero-frame layout)
|
|
52
|
-
|
|
53
|
-
```css
|
|
54
|
-
.scene {
|
|
55
|
-
position: relative;
|
|
56
|
-
width: 100%;
|
|
57
|
-
height: 100%;
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
.tilt-card {
|
|
61
|
-
position: absolute;
|
|
62
|
-
left: 50%;
|
|
63
|
-
top: 50%;
|
|
64
|
-
/* tilt + perspective set in CSS only if no other transform tween touches
|
|
65
|
-
this element. If GSAP also tweens scale on .tilt-card, set the tilt
|
|
66
|
-
via gsap.set() to avoid matrix overwrites. */
|
|
67
|
-
transform: translate(-50%, -50%) perspective({perspectivePx}) rotateY({tiltYDeg}) rotateX({tiltXDeg});
|
|
68
|
-
transform-style: preserve-3d;
|
|
69
|
-
width: {cardWidth};
|
|
70
|
-
height: {cardHeight};
|
|
71
|
-
border-radius: 24px;
|
|
72
|
-
background: {cardBackgroundColor};
|
|
73
|
-
overflow: hidden; /* clip the scrolling content */
|
|
74
|
-
/* shadow X-offset sign must match tiltY sign (negative tiltY ⇒ positive X) */
|
|
75
|
-
box-shadow: 40px 30px 80px rgba(0, 0, 0, 0.45);
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
.page-content {
|
|
79
|
-
position: absolute;
|
|
80
|
-
top: 0;
|
|
81
|
-
left: 0;
|
|
82
|
-
width: 100%;
|
|
83
|
-
/* height is intrinsic from sections — taller than .tilt-card.height */
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
.page-content section {
|
|
87
|
-
height: {sectionHeight}; /* sections sized so cumulative offset = target distance */
|
|
88
|
-
padding: 64px;
|
|
89
|
-
/* section-specific styling … */
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
.spotlight {
|
|
93
|
-
position: absolute;
|
|
94
|
-
inset: 0;
|
|
95
|
-
pointer-events: none;
|
|
96
|
-
opacity: 0;
|
|
97
|
-
background: radial-gradient(
|
|
98
|
-
ellipse 60% 35% at 50% 50%,
|
|
99
|
-
transparent 50%,
|
|
100
|
-
{spotlightDimColor} 100%
|
|
101
|
-
);
|
|
102
|
-
}
|
|
103
|
-
```
|
|
104
|
-
|
|
105
|
-
## GSAP Timeline
|
|
106
|
-
|
|
107
|
-
```html
|
|
108
|
-
<script src="https://cdn.jsdelivr.net/npm/gsap@3.14.2/dist/gsap.min.js"></script>
|
|
109
|
-
<script>
|
|
110
|
-
window.__timelines = window.__timelines || {};
|
|
111
|
-
const tl = gsap.timeline({ paused: true });
|
|
112
|
-
|
|
113
|
-
// Phase 1 — Card enters (optional, can skip if card is in from t=0)
|
|
114
|
-
// Phase 2 — Scroll to the target section.
|
|
115
|
-
// SCROLL_DISTANCE is measured at design time from the page layout
|
|
116
|
-
// (top of .page-content origin to vertical center of #target-section,
|
|
117
|
-
// accounting for card height).
|
|
118
|
-
tl.to(
|
|
119
|
-
".page-content",
|
|
120
|
-
{
|
|
121
|
-
y: -SCROLL_DISTANCE,
|
|
122
|
-
duration: SCROLL_DUR,
|
|
123
|
-
ease: "power3.out",
|
|
124
|
-
},
|
|
125
|
-
SCROLL_AT,
|
|
126
|
-
);
|
|
127
|
-
|
|
128
|
-
// Phase 3 — Spotlight fades in on the target after scroll settles
|
|
129
|
-
tl.to(
|
|
130
|
-
".spotlight",
|
|
131
|
-
{
|
|
132
|
-
opacity: 1,
|
|
133
|
-
duration: SPOTLIGHT_FADE_DUR,
|
|
134
|
-
ease: "power1.inOut",
|
|
135
|
-
},
|
|
136
|
-
SPOTLIGHT_AT,
|
|
137
|
-
);
|
|
138
|
-
|
|
139
|
-
window.__timelines["page-scroll-scene"] = tl;
|
|
140
|
-
</script>
|
|
141
|
-
```
|
|
142
|
-
|
|
143
|
-
### Multi-phase scroll variant
|
|
144
|
-
|
|
145
|
-
```js
|
|
146
|
-
// Scroll to section A → hold → scroll to section B.
|
|
147
|
-
// SCROLL_DISTANCE_A and SCROLL_DISTANCE_B are both measured from the
|
|
148
|
-
// .page-content origin (NOT delta from previous step).
|
|
149
|
-
tl.to(
|
|
150
|
-
".page-content",
|
|
151
|
-
{ y: -SCROLL_DISTANCE_A, duration: SCROLL_DUR, ease: "power3.out" },
|
|
152
|
-
SCROLL_AT_A,
|
|
153
|
-
);
|
|
154
|
-
tl.to(
|
|
155
|
-
".page-content",
|
|
156
|
-
{ y: -SCROLL_DISTANCE_B, duration: SCROLL_DUR, ease: "power3.out" },
|
|
157
|
-
SCROLL_AT_B,
|
|
158
|
-
);
|
|
159
|
-
```
|
|
160
|
-
|
|
161
|
-
GSAP composes successive `y:` tweens additively when targeting the same property — each tween starts from the value left by the previous tween.
|
|
162
|
-
|
|
163
|
-
## How to Choose Values
|
|
164
|
-
|
|
165
|
-
- **tiltYDeg** — static Y rotation in CSS (or via `gsap.set()`).
|
|
166
|
-
- Range: -12 to -4 (left-leaning) or 4 to 12 (right-leaning); 0 = no perspective rotation.
|
|
167
|
-
- Effects: bigger magnitude = more dramatic 3D; near 0 collapses to a flat panel.
|
|
168
|
-
- Constraints: shadow X-offset sign must match (negative tiltY ⇒ positive box-shadow X).
|
|
169
|
-
- **tiltXDeg** — static X rotation.
|
|
170
|
-
- Range: 0-6
|
|
171
|
-
- Effects: positive tilts the top edge away from the viewer.
|
|
172
|
-
- **perspectivePx** — perspective distance.
|
|
173
|
-
- Range: 800-2000 px
|
|
174
|
-
- Effects: smaller = more dramatic foreshortening; larger = nearly orthographic.
|
|
175
|
-
- **cardWidth / cardHeight** — card frame size.
|
|
176
|
-
- Constraints: card height < total content height, otherwise scroll has nothing to reveal.
|
|
177
|
-
- **sectionHeight** — height of each scrolled section.
|
|
178
|
-
- Constraints: sum of all section heights ≥ cardHeight + SCROLL_DISTANCE so the target section ends up within frame after scroll.
|
|
179
|
-
- **SCROLL_AT** — timeline second at which the scroll tween begins.
|
|
180
|
-
- Constraints: must be ≥ end of any prior fade-in tweens on `.page-content`.
|
|
181
|
-
- **SCROLL_DUR** — duration of one scroll tween.
|
|
182
|
-
- Range: 0.8-1.8 s
|
|
183
|
-
- Effects: shorter feels like a hard cut; longer feels programmatic.
|
|
184
|
-
- **SCROLL_DISTANCE** — pixels to translate `.page-content` upward.
|
|
185
|
-
- Constraints: measured once at design time from the target section's offset; NOT a free tunable.
|
|
186
|
-
- **SPOTLIGHT_AT** — timeline second at which the spotlight begins fading in.
|
|
187
|
-
- Constraints: should be ≥ SCROLL_AT + SCROLL_DUR (or slightly earlier for overlapping handoff) so the spotlight reveals the freshly-arrived section.
|
|
188
|
-
- **SPOTLIGHT_FADE_DUR** — spotlight opacity fade-in duration.
|
|
189
|
-
- Range: 0.4-0.8 s
|
|
190
|
-
- Multi-phase variant — **SCROLL_AT_A / SCROLL_AT_B**: must satisfy `SCROLL_AT_A + SCROLL_DUR ≤ SCROLL_AT_B` so the two scrolls don't fight for the y property.
|
|
191
|
-
|
|
192
|
-
Ease family — discrete choice:
|
|
193
|
-
|
|
194
|
-
- `power3.out` — heavy deceleration; reads as a programmatic scroll that "lands". Default.
|
|
195
|
-
- `power4.out` — even heavier; reads as a momentum-driven scroll.
|
|
196
|
-
- `power2.inOut` — symmetric; reads as a cinematic camera pan rather than UI scroll.
|
|
197
|
-
|
|
198
|
-
Pick one and use it across all scrolls in the scene — mixing easings within one scene reads as jerky.
|
|
199
|
-
|
|
200
|
-
## Key Principles
|
|
201
|
-
|
|
202
|
-
- **Tilt is static**, not animated. The card holds its angle the whole scene.
|
|
203
|
-
- **Shadow direction matches tilt**: a left-leaning card casts shadow to the right (positive X shadow offset). Mismatch breaks the 3D illusion.
|
|
204
|
-
- **Page content is real HTML**, not a screenshot. Screenshots can't be individually highlighted or scrolled-to with precision.
|
|
205
|
-
- **Use real layout for distances**: scroll target distance comes from the actual cumulative section heights, not estimated pixel values.
|
|
206
|
-
- **Spotlight as overlay**, not inside the page-content — overlay sits above scrolling content and stays fixed relative to the card.
|
|
207
|
-
|
|
208
|
-
## Critical Constraints
|
|
209
|
-
|
|
210
|
-
- **`overflow: hidden` on `.tilt-card`** — scrolling content must clip at card boundaries, otherwise it leaks past the rounded corners
|
|
211
|
-
- **`transform-style: preserve-3d`** on `.tilt-card` — required for any 3D children (or for combining `perspective` with rotations cleanly)
|
|
212
|
-
- **Timeline must be paused**: `gsap.timeline({ paused: true })`. Never `tl.play()` — HF seeks frame-by-frame
|
|
213
|
-
- **Registry key = `data-composition-id`**: `window.__timelines["page-scroll-scene"]` must match scene root's `data-composition-id`
|
|
214
|
-
- **Finite scroll distance** — compute from actual content geometry; don't use arbitrary values that may overshoot the content end
|
|
215
|
-
- **Same easing across multi-phase scroll** — mixing `power3.out` and `power1.inOut` looks jerky; pick one for the scene
|
|
216
|
-
|
|
217
|
-
## Combinations
|
|
218
|
-
|
|
219
|
-
- [asr-keyword-glow.md](asr-keyword-glow.md) — highlight elements on the page synced to voiceover word timestamps
|
|
220
|
-
- [multi-phase-camera.md](multi-phase-camera.md) — overall camera zoom while the page scrolls (zoom-in to target section as it lands)
|
|
221
|
-
- [cursor-click-ripple.md](cursor-click-ripple.md) — cursor lands on a UI element within the scrolled-into-view section
|
|
222
|
-
|
|
223
|
-
## Pairs with HF skills
|
|
224
|
-
|
|
225
|
-
- `/hyperframes-animation` — timeline + ease reference; `y:` tween basics
|
|
226
|
-
- `/hyperframes-core` — composition wiring, `data-*` attributes
|
|
227
|
-
- `/hyperframes-cli` — `hyperframes lint` to verify the registry key + duration
|
|
1
|
+
---
|
|
2
|
+
name: 3d-page-scroll
|
|
3
|
+
description: Full webpage rendered as tilted 3D card that scrolls to reveal specific sections.
|
|
4
|
+
metadata:
|
|
5
|
+
tags: 3d, page, scroll, webpage, tilt, product-demo, perspective
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# 3D Page Scroll
|
|
9
|
+
|
|
10
|
+
A webpage (or long content) presented as a tilted 3D card. Spring-eased scroll reveals specific sections while the static 3D perspective adds physical depth.
|
|
11
|
+
|
|
12
|
+
## How It Works
|
|
13
|
+
|
|
14
|
+
Two independent transforms combine:
|
|
15
|
+
|
|
16
|
+
1. **3D tilt** — Static `rotateY` + `rotateX` with `perspective` on the card. The angle does **not** change during the scene.
|
|
17
|
+
2. **Scroll** — The content inside the card translates vertically (`translateY` / `y` in GSAP) within a clipped container, driven by a GSAP tween. Spring-like deceleration via `ease: "power3.out"` or `"power4.out"`.
|
|
18
|
+
|
|
19
|
+
Optional layer:
|
|
20
|
+
|
|
21
|
+
3. **Spotlight overlay** — A radial-gradient mask dims everything except a focal region after the scroll lands. Use to draw attention to one section.
|
|
22
|
+
|
|
23
|
+
For multi-step scrolling (scroll → pause → scroll), use multiple `tl.to(".page-content", { y: -<distance>, ... }, <position>)` calls at different timeline positions.
|
|
24
|
+
|
|
25
|
+
## HTML
|
|
26
|
+
|
|
27
|
+
```html
|
|
28
|
+
<div
|
|
29
|
+
class="scene"
|
|
30
|
+
id="page-scroll-scene"
|
|
31
|
+
data-composition-id="page-scroll-scene"
|
|
32
|
+
data-start="0"
|
|
33
|
+
data-duration="5"
|
|
34
|
+
data-track-index="0"
|
|
35
|
+
>
|
|
36
|
+
<div class="tilt-card">
|
|
37
|
+
<div class="page-content">
|
|
38
|
+
<!-- Full {Brand} webpage recreation, taller than card height so
|
|
39
|
+
scrolling matters. Each section is real DOM, not a screenshot. -->
|
|
40
|
+
<section class="page-hero">{heroContents}</section>
|
|
41
|
+
<section class="page-features">{featuresContents}</section>
|
|
42
|
+
<section class="page-target" id="target-section">{targetContents}</section>
|
|
43
|
+
<section class="page-cta">{ctaContents}</section>
|
|
44
|
+
</div>
|
|
45
|
+
|
|
46
|
+
<div class="spotlight"></div>
|
|
47
|
+
</div>
|
|
48
|
+
</div>
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
## CSS (hero-frame layout)
|
|
52
|
+
|
|
53
|
+
```css
|
|
54
|
+
.scene {
|
|
55
|
+
position: relative;
|
|
56
|
+
width: 100%;
|
|
57
|
+
height: 100%;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
.tilt-card {
|
|
61
|
+
position: absolute;
|
|
62
|
+
left: 50%;
|
|
63
|
+
top: 50%;
|
|
64
|
+
/* tilt + perspective set in CSS only if no other transform tween touches
|
|
65
|
+
this element. If GSAP also tweens scale on .tilt-card, set the tilt
|
|
66
|
+
via gsap.set() to avoid matrix overwrites. */
|
|
67
|
+
transform: translate(-50%, -50%) perspective({perspectivePx}) rotateY({tiltYDeg}) rotateX({tiltXDeg});
|
|
68
|
+
transform-style: preserve-3d;
|
|
69
|
+
width: {cardWidth};
|
|
70
|
+
height: {cardHeight};
|
|
71
|
+
border-radius: 24px;
|
|
72
|
+
background: {cardBackgroundColor};
|
|
73
|
+
overflow: hidden; /* clip the scrolling content */
|
|
74
|
+
/* shadow X-offset sign must match tiltY sign (negative tiltY ⇒ positive X) */
|
|
75
|
+
box-shadow: 40px 30px 80px rgba(0, 0, 0, 0.45);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
.page-content {
|
|
79
|
+
position: absolute;
|
|
80
|
+
top: 0;
|
|
81
|
+
left: 0;
|
|
82
|
+
width: 100%;
|
|
83
|
+
/* height is intrinsic from sections — taller than .tilt-card.height */
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
.page-content section {
|
|
87
|
+
height: {sectionHeight}; /* sections sized so cumulative offset = target distance */
|
|
88
|
+
padding: 64px;
|
|
89
|
+
/* section-specific styling … */
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
.spotlight {
|
|
93
|
+
position: absolute;
|
|
94
|
+
inset: 0;
|
|
95
|
+
pointer-events: none;
|
|
96
|
+
opacity: 0;
|
|
97
|
+
background: radial-gradient(
|
|
98
|
+
ellipse 60% 35% at 50% 50%,
|
|
99
|
+
transparent 50%,
|
|
100
|
+
{spotlightDimColor} 100%
|
|
101
|
+
);
|
|
102
|
+
}
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
## GSAP Timeline
|
|
106
|
+
|
|
107
|
+
```html
|
|
108
|
+
<script src="https://cdn.jsdelivr.net/npm/gsap@3.14.2/dist/gsap.min.js"></script>
|
|
109
|
+
<script>
|
|
110
|
+
window.__timelines = window.__timelines || {};
|
|
111
|
+
const tl = gsap.timeline({ paused: true });
|
|
112
|
+
|
|
113
|
+
// Phase 1 — Card enters (optional, can skip if card is in from t=0)
|
|
114
|
+
// Phase 2 — Scroll to the target section.
|
|
115
|
+
// SCROLL_DISTANCE is measured at design time from the page layout
|
|
116
|
+
// (top of .page-content origin to vertical center of #target-section,
|
|
117
|
+
// accounting for card height).
|
|
118
|
+
tl.to(
|
|
119
|
+
".page-content",
|
|
120
|
+
{
|
|
121
|
+
y: -SCROLL_DISTANCE,
|
|
122
|
+
duration: SCROLL_DUR,
|
|
123
|
+
ease: "power3.out",
|
|
124
|
+
},
|
|
125
|
+
SCROLL_AT,
|
|
126
|
+
);
|
|
127
|
+
|
|
128
|
+
// Phase 3 — Spotlight fades in on the target after scroll settles
|
|
129
|
+
tl.to(
|
|
130
|
+
".spotlight",
|
|
131
|
+
{
|
|
132
|
+
opacity: 1,
|
|
133
|
+
duration: SPOTLIGHT_FADE_DUR,
|
|
134
|
+
ease: "power1.inOut",
|
|
135
|
+
},
|
|
136
|
+
SPOTLIGHT_AT,
|
|
137
|
+
);
|
|
138
|
+
|
|
139
|
+
window.__timelines["page-scroll-scene"] = tl;
|
|
140
|
+
</script>
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
### Multi-phase scroll variant
|
|
144
|
+
|
|
145
|
+
```js
|
|
146
|
+
// Scroll to section A → hold → scroll to section B.
|
|
147
|
+
// SCROLL_DISTANCE_A and SCROLL_DISTANCE_B are both measured from the
|
|
148
|
+
// .page-content origin (NOT delta from previous step).
|
|
149
|
+
tl.to(
|
|
150
|
+
".page-content",
|
|
151
|
+
{ y: -SCROLL_DISTANCE_A, duration: SCROLL_DUR, ease: "power3.out" },
|
|
152
|
+
SCROLL_AT_A,
|
|
153
|
+
);
|
|
154
|
+
tl.to(
|
|
155
|
+
".page-content",
|
|
156
|
+
{ y: -SCROLL_DISTANCE_B, duration: SCROLL_DUR, ease: "power3.out" },
|
|
157
|
+
SCROLL_AT_B,
|
|
158
|
+
);
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
GSAP composes successive `y:` tweens additively when targeting the same property — each tween starts from the value left by the previous tween.
|
|
162
|
+
|
|
163
|
+
## How to Choose Values
|
|
164
|
+
|
|
165
|
+
- **tiltYDeg** — static Y rotation in CSS (or via `gsap.set()`).
|
|
166
|
+
- Range: -12 to -4 (left-leaning) or 4 to 12 (right-leaning); 0 = no perspective rotation.
|
|
167
|
+
- Effects: bigger magnitude = more dramatic 3D; near 0 collapses to a flat panel.
|
|
168
|
+
- Constraints: shadow X-offset sign must match (negative tiltY ⇒ positive box-shadow X).
|
|
169
|
+
- **tiltXDeg** — static X rotation.
|
|
170
|
+
- Range: 0-6
|
|
171
|
+
- Effects: positive tilts the top edge away from the viewer.
|
|
172
|
+
- **perspectivePx** — perspective distance.
|
|
173
|
+
- Range: 800-2000 px
|
|
174
|
+
- Effects: smaller = more dramatic foreshortening; larger = nearly orthographic.
|
|
175
|
+
- **cardWidth / cardHeight** — card frame size.
|
|
176
|
+
- Constraints: card height < total content height, otherwise scroll has nothing to reveal.
|
|
177
|
+
- **sectionHeight** — height of each scrolled section.
|
|
178
|
+
- Constraints: sum of all section heights ≥ cardHeight + SCROLL_DISTANCE so the target section ends up within frame after scroll.
|
|
179
|
+
- **SCROLL_AT** — timeline second at which the scroll tween begins.
|
|
180
|
+
- Constraints: must be ≥ end of any prior fade-in tweens on `.page-content`.
|
|
181
|
+
- **SCROLL_DUR** — duration of one scroll tween.
|
|
182
|
+
- Range: 0.8-1.8 s
|
|
183
|
+
- Effects: shorter feels like a hard cut; longer feels programmatic.
|
|
184
|
+
- **SCROLL_DISTANCE** — pixels to translate `.page-content` upward.
|
|
185
|
+
- Constraints: measured once at design time from the target section's offset; NOT a free tunable.
|
|
186
|
+
- **SPOTLIGHT_AT** — timeline second at which the spotlight begins fading in.
|
|
187
|
+
- Constraints: should be ≥ SCROLL_AT + SCROLL_DUR (or slightly earlier for overlapping handoff) so the spotlight reveals the freshly-arrived section.
|
|
188
|
+
- **SPOTLIGHT_FADE_DUR** — spotlight opacity fade-in duration.
|
|
189
|
+
- Range: 0.4-0.8 s
|
|
190
|
+
- Multi-phase variant — **SCROLL_AT_A / SCROLL_AT_B**: must satisfy `SCROLL_AT_A + SCROLL_DUR ≤ SCROLL_AT_B` so the two scrolls don't fight for the y property.
|
|
191
|
+
|
|
192
|
+
Ease family — discrete choice:
|
|
193
|
+
|
|
194
|
+
- `power3.out` — heavy deceleration; reads as a programmatic scroll that "lands". Default.
|
|
195
|
+
- `power4.out` — even heavier; reads as a momentum-driven scroll.
|
|
196
|
+
- `power2.inOut` — symmetric; reads as a cinematic camera pan rather than UI scroll.
|
|
197
|
+
|
|
198
|
+
Pick one and use it across all scrolls in the scene — mixing easings within one scene reads as jerky.
|
|
199
|
+
|
|
200
|
+
## Key Principles
|
|
201
|
+
|
|
202
|
+
- **Tilt is static**, not animated. The card holds its angle the whole scene.
|
|
203
|
+
- **Shadow direction matches tilt**: a left-leaning card casts shadow to the right (positive X shadow offset). Mismatch breaks the 3D illusion.
|
|
204
|
+
- **Page content is real HTML**, not a screenshot. Screenshots can't be individually highlighted or scrolled-to with precision.
|
|
205
|
+
- **Use real layout for distances**: scroll target distance comes from the actual cumulative section heights, not estimated pixel values.
|
|
206
|
+
- **Spotlight as overlay**, not inside the page-content — overlay sits above scrolling content and stays fixed relative to the card.
|
|
207
|
+
|
|
208
|
+
## Critical Constraints
|
|
209
|
+
|
|
210
|
+
- **`overflow: hidden` on `.tilt-card`** — scrolling content must clip at card boundaries, otherwise it leaks past the rounded corners
|
|
211
|
+
- **`transform-style: preserve-3d`** on `.tilt-card` — required for any 3D children (or for combining `perspective` with rotations cleanly)
|
|
212
|
+
- **Timeline must be paused**: `gsap.timeline({ paused: true })`. Never `tl.play()` — HF seeks frame-by-frame
|
|
213
|
+
- **Registry key = `data-composition-id`**: `window.__timelines["page-scroll-scene"]` must match scene root's `data-composition-id`
|
|
214
|
+
- **Finite scroll distance** — compute from actual content geometry; don't use arbitrary values that may overshoot the content end
|
|
215
|
+
- **Same easing across multi-phase scroll** — mixing `power3.out` and `power1.inOut` looks jerky; pick one for the scene
|
|
216
|
+
|
|
217
|
+
## Combinations
|
|
218
|
+
|
|
219
|
+
- [asr-keyword-glow.md](asr-keyword-glow.md) — highlight elements on the page synced to voiceover word timestamps
|
|
220
|
+
- [multi-phase-camera.md](multi-phase-camera.md) — overall camera zoom while the page scrolls (zoom-in to target section as it lands)
|
|
221
|
+
- [cursor-click-ripple.md](cursor-click-ripple.md) — cursor lands on a UI element within the scrolled-into-view section
|
|
222
|
+
|
|
223
|
+
## Pairs with HF skills
|
|
224
|
+
|
|
225
|
+
- `/hyperframes-animation` — timeline + ease reference; `y:` tween basics
|
|
226
|
+
- `/hyperframes-core` — composition wiring, `data-*` attributes
|
|
227
|
+
- `/hyperframes-cli` — `hyperframes lint` to verify the registry key + duration
|