freecodego 0.1.7-alpha.2.2 → 0.1.7-rc.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (593) hide show
  1. package/README.i18n.yaml +45 -5
  2. package/README.md +4 -4
  3. package/README.zh.md +4 -4
  4. package/cordis.patch.yml +230 -126
  5. package/dist/assets/design/craft/FUTURE_SECTIONS.md +9 -0
  6. package/dist/assets/design/craft/LICENSE +201 -0
  7. package/dist/assets/design/craft/PROVENANCE.md +77 -0
  8. package/dist/assets/design/craft/README.md +106 -0
  9. package/dist/assets/design/craft/accessibility-baseline.md +201 -0
  10. package/dist/assets/design/craft/animation-discipline.md +154 -0
  11. package/dist/assets/design/craft/anti-ai-slop.md +84 -0
  12. package/dist/assets/design/craft/color.md +88 -0
  13. package/dist/assets/design/craft/form-validation.md +221 -0
  14. package/dist/assets/design/craft/laws-of-ux.md +296 -0
  15. package/dist/assets/design/craft/rtl-and-bidi.md +186 -0
  16. package/dist/assets/design/craft/state-coverage.md +134 -0
  17. package/dist/assets/design/craft/typography-hierarchy-editorial.md +182 -0
  18. package/dist/assets/design/craft/typography-hierarchy.md +165 -0
  19. package/dist/assets/design/craft/typography.md +122 -0
  20. package/dist/assets/design/react-bits/SKILL.md +130 -0
  21. package/dist/assets/design/skills/embedded-captions/CATALOG.md +91 -0
  22. package/dist/assets/design/skills/embedded-captions/SKILL.md +260 -0
  23. package/dist/assets/design/skills/embedded-captions/assets/fonts/char-widths.json +2211 -0
  24. package/dist/assets/design/skills/embedded-captions/assets/strokefonts/HersheyScript1.svg +242 -0
  25. package/dist/assets/design/skills/embedded-captions/assets/strokefonts/HersheyScriptMed.svg +242 -0
  26. package/dist/assets/design/skills/embedded-captions/dna/README.md +148 -0
  27. package/dist/assets/design/skills/embedded-captions/dna/chrome.json +68 -0
  28. package/dist/assets/design/skills/embedded-captions/dna/cream.json +69 -0
  29. package/dist/assets/design/skills/embedded-captions/dna/documentary.json +62 -0
  30. package/dist/assets/design/skills/embedded-captions/dna/editorial.json +70 -0
  31. package/dist/assets/design/skills/embedded-captions/dna/glitch.json +82 -0
  32. package/dist/assets/design/skills/embedded-captions/dna/ink.json +65 -0
  33. package/dist/assets/design/skills/embedded-captions/dna/keynote.json +62 -0
  34. package/dist/assets/design/skills/embedded-captions/dna/loud.json +75 -0
  35. package/dist/assets/design/skills/embedded-captions/dna/neon.json +58 -0
  36. package/dist/assets/design/skills/embedded-captions/dna/velocity.json +89 -0
  37. package/dist/assets/design/skills/embedded-captions/modes/cinematic/README.md +48 -0
  38. package/dist/assets/design/skills/embedded-captions/modes/cinematic/_archive/champion/spec.md +98 -0
  39. package/dist/assets/design/skills/embedded-captions/modes/cinematic/_archive/champion/template.html +188 -0
  40. package/dist/assets/design/skills/embedded-captions/modes/cinematic/_archive/memory-wall/spec.md +134 -0
  41. package/dist/assets/design/skills/embedded-captions/modes/cinematic/_archive/memory-wall/template.html +179 -0
  42. package/dist/assets/design/skills/embedded-captions/modes/cinematic/_archive/portrait-header/spec.md +81 -0
  43. package/dist/assets/design/skills/embedded-captions/modes/cinematic/_archive/portrait-header/template.html +170 -0
  44. package/dist/assets/design/skills/embedded-captions/modes/cinematic/cinematic-cream/spec.md +16 -0
  45. package/dist/assets/design/skills/embedded-captions/modes/cinematic/cinematic-cream/template.html +226 -0
  46. package/dist/assets/design/skills/embedded-captions/modes/cinematic/engine.html +355 -0
  47. package/dist/assets/design/skills/embedded-captions/modes/standard/_anatomy.md +232 -0
  48. package/dist/assets/design/skills/embedded-captions/modes/standard/_motion.md +192 -0
  49. package/dist/assets/design/skills/embedded-captions/references/aesthetic-principles.md +167 -0
  50. package/dist/assets/design/skills/embedded-captions/references/anti-patterns.md +188 -0
  51. package/dist/assets/design/skills/embedded-captions/references/bespoke-vs-presets.md +178 -0
  52. package/dist/assets/design/skills/embedded-captions/references/caption-grouping.md +130 -0
  53. package/dist/assets/design/skills/embedded-captions/references/composition-craft.md +522 -0
  54. package/dist/assets/design/skills/embedded-captions/references/direction-catalog.md +138 -0
  55. package/dist/assets/design/skills/embedded-captions/references/example-renders/champion.html +371 -0
  56. package/dist/assets/design/skills/embedded-captions/references/example-renders/memory-wall.html +334 -0
  57. package/dist/assets/design/skills/embedded-captions/references/failure-modes.md +145 -0
  58. package/dist/assets/design/skills/embedded-captions/references/layout-heuristics.md +238 -0
  59. package/dist/assets/design/skills/embedded-captions/references/motion-vocabulary.md +148 -0
  60. package/dist/assets/design/skills/embedded-captions/references/rail.md +68 -0
  61. package/dist/assets/design/skills/embedded-captions/references/reference-bar.md +47 -0
  62. package/dist/assets/design/skills/embedded-captions/references/scene-types.md +94 -0
  63. package/dist/assets/design/skills/embedded-captions/references/typographic-moves.md +266 -0
  64. package/dist/assets/design/skills/embedded-captions/references/typography-presets.md +63 -0
  65. package/dist/assets/design/skills/embedded-captions/scripts/fixtures/heroless/theme.json +11 -0
  66. package/dist/assets/design/skills/embedded-captions/scripts/fixtures/heroless/transcript.json +10 -0
  67. package/dist/assets/design/skills/embedded-captions/themes/README.md +243 -0
  68. package/dist/assets/design/skills/embedded-captions/themes/anchor.json +27 -0
  69. package/dist/assets/design/skills/embedded-captions/themes/arcade.json +51 -0
  70. package/dist/assets/design/skills/embedded-captions/themes/aurora.json +41 -0
  71. package/dist/assets/design/skills/embedded-captions/themes/biolume.json +35 -0
  72. package/dist/assets/design/skills/embedded-captions/themes/brush.json +74 -0
  73. package/dist/assets/design/skills/embedded-captions/themes/chalkboard.json +52 -0
  74. package/dist/assets/design/skills/embedded-captions/themes/dossier.json +56 -0
  75. package/dist/assets/design/skills/embedded-captions/themes/graffiti.json +62 -0
  76. package/dist/assets/design/skills/embedded-captions/themes/hologram.json +41 -0
  77. package/dist/assets/design/skills/embedded-captions/themes/inkwater.json +43 -0
  78. package/dist/assets/design/skills/embedded-captions/themes/laser.json +46 -0
  79. package/dist/assets/design/skills/embedded-captions/themes/lastpage.json +33 -0
  80. package/dist/assets/design/skills/embedded-captions/themes/neonsign.json +53 -0
  81. package/dist/assets/design/skills/embedded-captions/themes/ordnance.json +54 -0
  82. package/dist/assets/design/skills/embedded-captions/themes/papercut.json +37 -0
  83. package/dist/assets/design/skills/embedded-captions/themes/popup.json +46 -0
  84. package/dist/assets/design/skills/embedded-captions/themes/ransom.json +62 -0
  85. package/dist/assets/design/skills/embedded-captions/themes/scoreboard.json +54 -0
  86. package/dist/assets/design/skills/embedded-captions/themes/spectrum.json +46 -0
  87. package/dist/assets/design/skills/embedded-captions/themes/stardust.json +29 -0
  88. package/dist/assets/design/skills/embedded-captions/themes/stomp.json +43 -0
  89. package/dist/assets/design/skills/embedded-captions/themes/terminal.json +49 -0
  90. package/dist/assets/design/skills/embedded-captions/themes/thunder.json +44 -0
  91. package/dist/assets/design/skills/embedded-captions/themes/transit.json +44 -0
  92. package/dist/assets/design/skills/embedded-captions/themes/vhs.json +47 -0
  93. package/dist/assets/design/skills/faceless-explainer/SKILL.md +235 -0
  94. package/dist/assets/design/skills/faceless-explainer/references/cut-catalog.md +215 -0
  95. package/dist/assets/design/skills/faceless-explainer/references/motion-language.md +156 -0
  96. package/dist/assets/design/skills/faceless-explainer/references/story-design.md +255 -0
  97. package/dist/assets/design/skills/faceless-explainer/references/visual-design.md +146 -0
  98. package/dist/assets/design/skills/faceless-explainer/sub-agents/frame-worker.md +12 -0
  99. package/dist/assets/design/skills/general-video/SKILL.md +164 -0
  100. package/dist/assets/design/skills/general-video/sub-agents/frame-worker.md +34 -0
  101. package/dist/assets/design/skills/hyperframes/SKILL.md +134 -0
  102. package/dist/assets/design/skills/hyperframes/references/brief-contract.md +108 -0
  103. package/dist/assets/design/skills/hyperframes/references/brief-format.md +72 -0
  104. package/dist/assets/design/skills/hyperframes/references/capability-menu.md +47 -0
  105. package/dist/assets/design/skills/hyperframes/references/frame-worker-core.md +80 -0
  106. package/dist/assets/design/skills/hyperframes/references/intent-interview.md +71 -0
  107. package/dist/assets/design/skills/hyperframes/references/pitch-round.md +40 -0
  108. package/dist/assets/design/skills/hyperframes/references/production-loop.md +26 -0
  109. package/dist/assets/design/skills/hyperframes/references/review-loop.md +37 -0
  110. package/dist/assets/design/skills/hyperframes/references/route-briefs.md +11 -0
  111. package/dist/assets/design/skills/hyperframes/references/routes/embedded-captions.md +11 -0
  112. package/dist/assets/design/skills/hyperframes/references/routes/faceless-explainer.md +12 -0
  113. package/dist/assets/design/skills/hyperframes/references/routes/general-video.md +12 -0
  114. package/dist/assets/design/skills/hyperframes/references/routes/motion-graphics.md +11 -0
  115. package/dist/assets/design/skills/hyperframes/references/routes/music-to-video.md +12 -0
  116. package/dist/assets/design/skills/hyperframes/references/routes/pr-to-video.md +28 -0
  117. package/dist/assets/design/skills/hyperframes/references/routes/product-launch-video.md +13 -0
  118. package/dist/assets/design/skills/hyperframes/references/routes/remotion-to-hyperframes.md +9 -0
  119. package/dist/assets/design/skills/hyperframes/references/routes/slideshow.md +11 -0
  120. package/dist/assets/design/skills/hyperframes/references/routes/talking-head-recut.md +11 -0
  121. package/dist/assets/design/skills/hyperframes/references/script-format.md +52 -0
  122. package/dist/assets/design/skills/hyperframes/references/skill-lifecycle.md +30 -0
  123. package/dist/assets/design/skills/hyperframes/references/storyboard-format.md +99 -0
  124. package/dist/assets/design/skills/hyperframes/references/subagent-dispatch.md +35 -0
  125. package/dist/assets/design/skills/hyperframes/references/workflow-catalog.md +10 -0
  126. package/dist/assets/design/skills/hyperframes-animation/SKILL.md +86 -0
  127. package/dist/assets/design/skills/hyperframes-animation/adapters/animate-text.md +64 -0
  128. package/dist/assets/design/skills/hyperframes-animation/adapters/animejs.md +130 -0
  129. package/dist/assets/design/skills/hyperframes-animation/adapters/css-animations.md +143 -0
  130. package/dist/assets/design/skills/hyperframes-animation/adapters/gsap-easing-and-stagger.md +199 -0
  131. package/dist/assets/design/skills/hyperframes-animation/adapters/gsap-timeline-and-labels.md +96 -0
  132. package/dist/assets/design/skills/hyperframes-animation/adapters/gsap-transforms-and-perf.md +129 -0
  133. package/dist/assets/design/skills/hyperframes-animation/adapters/gsap.md +105 -0
  134. package/dist/assets/design/skills/hyperframes-animation/adapters/html-in-canvas-patterns.md +507 -0
  135. package/dist/assets/design/skills/hyperframes-animation/adapters/lottie.md +130 -0
  136. package/dist/assets/design/skills/hyperframes-animation/adapters/three.md +145 -0
  137. package/dist/assets/design/skills/hyperframes-animation/adapters/typegpu.md +182 -0
  138. package/dist/assets/design/skills/hyperframes-animation/adapters/waapi.md +101 -0
  139. package/dist/assets/design/skills/hyperframes-animation/blueprints/agent-progress-theater.md +76 -0
  140. package/dist/assets/design/skills/hyperframes-animation/blueprints/camera-journey.md +61 -0
  141. package/dist/assets/design/skills/hyperframes-animation/blueprints/comparison-split.md +27 -0
  142. package/dist/assets/design/skills/hyperframes-animation/blueprints/constellation-hub.md +63 -0
  143. package/dist/assets/design/skills/hyperframes-animation/blueprints/cta-morph-press.md +63 -0
  144. package/dist/assets/design/skills/hyperframes-animation/blueprints/cursor-ui-demo.md +89 -0
  145. package/dist/assets/design/skills/hyperframes-animation/blueprints/dataviz-countup.md +59 -0
  146. package/dist/assets/design/skills/hyperframes-animation/blueprints/device-surface-showcase.md +68 -0
  147. package/dist/assets/design/skills/hyperframes-animation/blueprints/fixed-anchor-cycle.md +46 -0
  148. package/dist/assets/design/skills/hyperframes-animation/blueprints/grid-card-assemble.md +81 -0
  149. package/dist/assets/design/skills/hyperframes-animation/blueprints/kinetic-type-beats.md +133 -0
  150. package/dist/assets/design/skills/hyperframes-animation/blueprints/logo-assemble-lockup.md +121 -0
  151. package/dist/assets/design/skills/hyperframes-animation/blueprints/overwhelm-surround.md +58 -0
  152. package/dist/assets/design/skills/hyperframes-animation/blueprints/panel-edit-live-sync.md +73 -0
  153. package/dist/assets/design/skills/hyperframes-animation/blueprints/prompt-type-submit-generate.md +85 -0
  154. package/dist/assets/design/skills/hyperframes-animation/blueprints/spatial-pan-stations.md +37 -0
  155. package/dist/assets/design/skills/hyperframes-animation/blueprints/ticker-takeover.md +29 -0
  156. package/dist/assets/design/skills/hyperframes-animation/blueprints/titlecard-reveal.md +80 -0
  157. package/dist/assets/design/skills/hyperframes-animation/blueprints/transcript-scroll-artifact-reveal.md +45 -0
  158. package/dist/assets/design/skills/hyperframes-animation/blueprints/typewriter-reveal.md +51 -0
  159. package/dist/assets/design/skills/hyperframes-animation/blueprints/video-text-pivot.md +30 -0
  160. package/dist/assets/design/skills/hyperframes-animation/blueprints/zoom-out-workspace-reveal.md +68 -0
  161. package/dist/assets/design/skills/hyperframes-animation/blueprints-index.md +202 -0
  162. package/dist/assets/design/skills/hyperframes-animation/examples/brand-reveal-assemble-zoom.html +382 -0
  163. package/dist/assets/design/skills/hyperframes-animation/examples/comparison-split-cards.html +649 -0
  164. package/dist/assets/design/skills/hyperframes-animation/examples/concept-demo-decode-pan.html +520 -0
  165. package/dist/assets/design/skills/hyperframes-animation/examples/cta-morph-press.html +468 -0
  166. package/dist/assets/design/skills/hyperframes-animation/examples/cta-orbit-collapse.html +1298 -0
  167. package/dist/assets/design/skills/hyperframes-animation/examples/demo-page-scroll-spotlight.html +759 -0
  168. package/dist/assets/design/skills/hyperframes-animation/examples/hook-counter-burst.html +729 -0
  169. package/dist/assets/design/skills/hyperframes-animation/examples/messaging-multi-phrase.html +352 -0
  170. package/dist/assets/design/skills/hyperframes-animation/examples/metric-video-text-pivot.html +779 -0
  171. package/dist/assets/design/skills/hyperframes-animation/examples/problem-mockup-overwhelm.html +1374 -0
  172. package/dist/assets/design/skills/hyperframes-animation/examples/proof-logo-chain.html +861 -0
  173. package/dist/assets/design/skills/hyperframes-animation/examples/takeover-ticker-displace.html +347 -0
  174. package/dist/assets/design/skills/hyperframes-animation/examples/workflow-approve-press.html +606 -0
  175. package/dist/assets/design/skills/hyperframes-animation/references/motion-blur.md +133 -0
  176. package/dist/assets/design/skills/hyperframes-animation/rules/3d-camera-flight.md +180 -0
  177. package/dist/assets/design/skills/hyperframes-animation/rules/3d-page-scroll.md +135 -0
  178. package/dist/assets/design/skills/hyperframes-animation/rules/3d-text-depth-layers.md +128 -0
  179. package/dist/assets/design/skills/hyperframes-animation/rules/ai-tracking-box.md +139 -0
  180. package/dist/assets/design/skills/hyperframes-animation/rules/ambient-glow-bloom.md +133 -0
  181. package/dist/assets/design/skills/hyperframes-animation/rules/anchored-layout-expand.md +148 -0
  182. package/dist/assets/design/skills/hyperframes-animation/rules/asr-keyword-glow.md +128 -0
  183. package/dist/assets/design/skills/hyperframes-animation/rules/avatar-cloud-network.md +145 -0
  184. package/dist/assets/design/skills/hyperframes-animation/rules/camera-cursor-tracking.md +133 -0
  185. package/dist/assets/design/skills/hyperframes-animation/rules/card-morph-anchor.md +134 -0
  186. package/dist/assets/design/skills/hyperframes-animation/rules/center-outward-expansion.md +88 -0
  187. package/dist/assets/design/skills/hyperframes-animation/rules/chart-scrub-readout.md +151 -0
  188. package/dist/assets/design/skills/hyperframes-animation/rules/chromatic-glitch.md +150 -0
  189. package/dist/assets/design/skills/hyperframes-animation/rules/context-sensitive-cursor.md +140 -0
  190. package/dist/assets/design/skills/hyperframes-animation/rules/control-target-sync.md +131 -0
  191. package/dist/assets/design/skills/hyperframes-animation/rules/coordinate-target-zoom.md +138 -0
  192. package/dist/assets/design/skills/hyperframes-animation/rules/counting-dynamic-scale.md +115 -0
  193. package/dist/assets/design/skills/hyperframes-animation/rules/css-marker-patterns.md +208 -0
  194. package/dist/assets/design/skills/hyperframes-animation/rules/cursor-click-ripple.md +104 -0
  195. package/dist/assets/design/skills/hyperframes-animation/rules/cursor-drag.md +141 -0
  196. package/dist/assets/design/skills/hyperframes-animation/rules/depth-of-field-blur.md +112 -0
  197. package/dist/assets/design/skills/hyperframes-animation/rules/depth-scatter-assemble.md +139 -0
  198. package/dist/assets/design/skills/hyperframes-animation/rules/discrete-text-sequence.md +146 -0
  199. package/dist/assets/design/skills/hyperframes-animation/rules/dynamic-content-sequencing.md +149 -0
  200. package/dist/assets/design/skills/hyperframes-animation/rules/gradient-text-sweep.md +136 -0
  201. package/dist/assets/design/skills/hyperframes-animation/rules/gsap-effects.md +196 -0
  202. package/dist/assets/design/skills/hyperframes-animation/rules/hacker-flip-3d.md +123 -0
  203. package/dist/assets/design/skills/hyperframes-animation/rules/kinetic-beat-slam.md +137 -0
  204. package/dist/assets/design/skills/hyperframes-animation/rules/motion-blur-streak.md +130 -0
  205. package/dist/assets/design/skills/hyperframes-animation/rules/multi-cursor-choreography.md +133 -0
  206. package/dist/assets/design/skills/hyperframes-animation/rules/multi-phase-camera.md +129 -0
  207. package/dist/assets/design/skills/hyperframes-animation/rules/nudge-curve.md +47 -0
  208. package/dist/assets/design/skills/hyperframes-animation/rules/orbit-3d-entry.md +148 -0
  209. package/dist/assets/design/skills/hyperframes-animation/rules/particle-burst.md +149 -0
  210. package/dist/assets/design/skills/hyperframes-animation/rules/physics-press-reaction.md +101 -0
  211. package/dist/assets/design/skills/hyperframes-animation/rules/press-release-spring.md +108 -0
  212. package/dist/assets/design/skills/hyperframes-animation/rules/reactive-displacement.md +92 -0
  213. package/dist/assets/design/skills/hyperframes-animation/rules/scale-swap-transition.md +88 -0
  214. package/dist/assets/design/skills/hyperframes-animation/rules/sine-wave-loop.md +85 -0
  215. package/dist/assets/design/skills/hyperframes-animation/rules/split-tilt-cards.md +123 -0
  216. package/dist/assets/design/skills/hyperframes-animation/rules/spring-pop-entrance.md +107 -0
  217. package/dist/assets/design/skills/hyperframes-animation/rules/stat-bars-and-fills.md +145 -0
  218. package/dist/assets/design/skills/hyperframes-animation/rules/svg-icon-enrichment.md +141 -0
  219. package/dist/assets/design/skills/hyperframes-animation/rules/svg-path-draw.md +122 -0
  220. package/dist/assets/design/skills/hyperframes-animation/rules/theme-crossfade-morph.md +126 -0
  221. package/dist/assets/design/skills/hyperframes-animation/rules/vertical-spring-ticker.md +104 -0
  222. package/dist/assets/design/skills/hyperframes-animation/rules/viewport-change.md +148 -0
  223. package/dist/assets/design/skills/hyperframes-animation/rules/waterfall-entry.md +81 -0
  224. package/dist/assets/design/skills/hyperframes-animation/rules-index.md +113 -0
  225. package/dist/assets/design/skills/hyperframes-animation/techniques.md +507 -0
  226. package/dist/assets/design/skills/hyperframes-animation/transitions/TRANSITION-REGISTRY.md +168 -0
  227. package/dist/assets/design/skills/hyperframes-animation/transitions/catalog.md +127 -0
  228. package/dist/assets/design/skills/hyperframes-animation/transitions/css-3d.md +12 -0
  229. package/dist/assets/design/skills/hyperframes-animation/transitions/css-blur.md +51 -0
  230. package/dist/assets/design/skills/hyperframes-animation/transitions/css-cover.md +43 -0
  231. package/dist/assets/design/skills/hyperframes-animation/transitions/css-destruction.md +95 -0
  232. package/dist/assets/design/skills/hyperframes-animation/transitions/css-dissolve.md +66 -0
  233. package/dist/assets/design/skills/hyperframes-animation/transitions/css-distortion.md +45 -0
  234. package/dist/assets/design/skills/hyperframes-animation/transitions/css-grid.md +10 -0
  235. package/dist/assets/design/skills/hyperframes-animation/transitions/css-light.md +49 -0
  236. package/dist/assets/design/skills/hyperframes-animation/transitions/css-mechanical.md +30 -0
  237. package/dist/assets/design/skills/hyperframes-animation/transitions/css-other.md +25 -0
  238. package/dist/assets/design/skills/hyperframes-animation/transitions/css-push.md +41 -0
  239. package/dist/assets/design/skills/hyperframes-animation/transitions/css-radial.md +37 -0
  240. package/dist/assets/design/skills/hyperframes-animation/transitions/css-scale.md +24 -0
  241. package/dist/assets/design/skills/hyperframes-animation/transitions/overview.md +153 -0
  242. package/dist/assets/design/skills/hyperframes-audio/SKILL.md +476 -0
  243. package/dist/assets/design/skills/hyperframes-audio/references/attributes.md +138 -0
  244. package/dist/assets/design/skills/hyperframes-audio/references/diagnosis.md +274 -0
  245. package/dist/assets/design/skills/hyperframes-audio/references/fx-registry.md +84 -0
  246. package/dist/assets/design/skills/hyperframes-audio/references/presets.md +216 -0
  247. package/dist/assets/design/skills/hyperframes-core/SKILL.md +97 -0
  248. package/dist/assets/design/skills/hyperframes-core/references/composition-patterns.md +224 -0
  249. package/dist/assets/design/skills/hyperframes-core/references/creator-editing-recipes.md +491 -0
  250. package/dist/assets/design/skills/hyperframes-core/references/data-attributes.md +78 -0
  251. package/dist/assets/design/skills/hyperframes-core/references/determinism-rules.md +53 -0
  252. package/dist/assets/design/skills/hyperframes-core/references/full-screen-motion.md +67 -0
  253. package/dist/assets/design/skills/hyperframes-core/references/minimal-composition.md +69 -0
  254. package/dist/assets/design/skills/hyperframes-core/references/sub-compositions.md +176 -0
  255. package/dist/assets/design/skills/hyperframes-core/references/tailwind.md +104 -0
  256. package/dist/assets/design/skills/hyperframes-core/references/tracks-and-clips.md +87 -0
  257. package/dist/assets/design/skills/hyperframes-core/references/variables-and-media.md +107 -0
  258. package/dist/assets/design/skills/hyperframes-creative/SKILL.md +71 -0
  259. package/dist/assets/design/skills/hyperframes-creative/frame-presets/biennale-yellow/FRAME.md +289 -0
  260. package/dist/assets/design/skills/hyperframes-creative/frame-presets/biennale-yellow/caption-skin.html +221 -0
  261. package/dist/assets/design/skills/hyperframes-creative/frame-presets/biennale-yellow/frame-showcase.html +1214 -0
  262. package/dist/assets/design/skills/hyperframes-creative/frame-presets/blockframe/FRAME.md +275 -0
  263. package/dist/assets/design/skills/hyperframes-creative/frame-presets/blockframe/caption-skin.html +224 -0
  264. package/dist/assets/design/skills/hyperframes-creative/frame-presets/blockframe/frame-showcase.html +1347 -0
  265. package/dist/assets/design/skills/hyperframes-creative/frame-presets/blue-professional/FRAME.md +307 -0
  266. package/dist/assets/design/skills/hyperframes-creative/frame-presets/blue-professional/caption-skin.html +223 -0
  267. package/dist/assets/design/skills/hyperframes-creative/frame-presets/blue-professional/frame-showcase.html +1372 -0
  268. package/dist/assets/design/skills/hyperframes-creative/frame-presets/bold-poster/FRAME.md +275 -0
  269. package/dist/assets/design/skills/hyperframes-creative/frame-presets/bold-poster/caption-skin.html +230 -0
  270. package/dist/assets/design/skills/hyperframes-creative/frame-presets/bold-poster/frame-showcase.html +1140 -0
  271. package/dist/assets/design/skills/hyperframes-creative/frame-presets/broadside/FRAME.md +284 -0
  272. package/dist/assets/design/skills/hyperframes-creative/frame-presets/broadside/caption-skin.html +225 -0
  273. package/dist/assets/design/skills/hyperframes-creative/frame-presets/broadside/frame-showcase.html +1166 -0
  274. package/dist/assets/design/skills/hyperframes-creative/frame-presets/capsule/FRAME.md +284 -0
  275. package/dist/assets/design/skills/hyperframes-creative/frame-presets/capsule/caption-skin.html +224 -0
  276. package/dist/assets/design/skills/hyperframes-creative/frame-presets/capsule/frame-showcase.html +1465 -0
  277. package/dist/assets/design/skills/hyperframes-creative/frame-presets/cartesian/FRAME.md +278 -0
  278. package/dist/assets/design/skills/hyperframes-creative/frame-presets/cartesian/caption-skin.html +222 -0
  279. package/dist/assets/design/skills/hyperframes-creative/frame-presets/cartesian/frame-showcase.html +1263 -0
  280. package/dist/assets/design/skills/hyperframes-creative/frame-presets/cobalt-grid/FRAME.md +265 -0
  281. package/dist/assets/design/skills/hyperframes-creative/frame-presets/cobalt-grid/caption-skin.html +238 -0
  282. package/dist/assets/design/skills/hyperframes-creative/frame-presets/cobalt-grid/frame-showcase.html +1468 -0
  283. package/dist/assets/design/skills/hyperframes-creative/frame-presets/code-editorial/FRAME.md +277 -0
  284. package/dist/assets/design/skills/hyperframes-creative/frame-presets/code-editorial/caption-skin.html +224 -0
  285. package/dist/assets/design/skills/hyperframes-creative/frame-presets/code-editorial/fonts/OFL-eb-garamond.txt +93 -0
  286. package/dist/assets/design/skills/hyperframes-creative/frame-presets/code-editorial/fonts/OFL-inter.txt +93 -0
  287. package/dist/assets/design/skills/hyperframes-creative/frame-presets/code-editorial/fonts/OFL-jetbrains-mono.txt +93 -0
  288. package/dist/assets/design/skills/hyperframes-creative/frame-presets/code-editorial/frame-showcase.html +1438 -0
  289. package/dist/assets/design/skills/hyperframes-creative/frame-presets/coral/FRAME.md +314 -0
  290. package/dist/assets/design/skills/hyperframes-creative/frame-presets/coral/caption-skin.html +226 -0
  291. package/dist/assets/design/skills/hyperframes-creative/frame-presets/coral/frame-showcase.html +1268 -0
  292. package/dist/assets/design/skills/hyperframes-creative/frame-presets/creative-mode/FRAME.md +333 -0
  293. package/dist/assets/design/skills/hyperframes-creative/frame-presets/creative-mode/caption-skin.html +227 -0
  294. package/dist/assets/design/skills/hyperframes-creative/frame-presets/creative-mode/frame-showcase.html +1330 -0
  295. package/dist/assets/design/skills/hyperframes-creative/frame-presets/daisy-days/FRAME.md +274 -0
  296. package/dist/assets/design/skills/hyperframes-creative/frame-presets/daisy-days/caption-skin.html +230 -0
  297. package/dist/assets/design/skills/hyperframes-creative/frame-presets/daisy-days/frame-showcase.html +1444 -0
  298. package/dist/assets/design/skills/hyperframes-creative/frame-presets/editorial-forest/FRAME.md +265 -0
  299. package/dist/assets/design/skills/hyperframes-creative/frame-presets/editorial-forest/caption-skin.html +223 -0
  300. package/dist/assets/design/skills/hyperframes-creative/frame-presets/editorial-forest/frame-showcase.html +1273 -0
  301. package/dist/assets/design/skills/hyperframes-creative/palettes/bold-energetic.md +14 -0
  302. package/dist/assets/design/skills/hyperframes-creative/palettes/clean-corporate.md +14 -0
  303. package/dist/assets/design/skills/hyperframes-creative/palettes/dark-premium.md +14 -0
  304. package/dist/assets/design/skills/hyperframes-creative/palettes/jewel-rich.md +14 -0
  305. package/dist/assets/design/skills/hyperframes-creative/palettes/monochrome.md +14 -0
  306. package/dist/assets/design/skills/hyperframes-creative/palettes/nature-earth.md +14 -0
  307. package/dist/assets/design/skills/hyperframes-creative/palettes/neon-electric.md +14 -0
  308. package/dist/assets/design/skills/hyperframes-creative/palettes/pastel-soft.md +14 -0
  309. package/dist/assets/design/skills/hyperframes-creative/palettes/warm-editorial.md +14 -0
  310. package/dist/assets/design/skills/hyperframes-creative/references/audio-reactive.md +76 -0
  311. package/dist/assets/design/skills/hyperframes-creative/references/beat-direction.md +164 -0
  312. package/dist/assets/design/skills/hyperframes-creative/references/composition-patterns.md +199 -0
  313. package/dist/assets/design/skills/hyperframes-creative/references/data-in-motion.md +19 -0
  314. package/dist/assets/design/skills/hyperframes-creative/references/design-adherence.md +19 -0
  315. package/dist/assets/design/skills/hyperframes-creative/references/design-picker.md +123 -0
  316. package/dist/assets/design/skills/hyperframes-creative/references/design-spec.md +55 -0
  317. package/dist/assets/design/skills/hyperframes-creative/references/house-style.md +73 -0
  318. package/dist/assets/design/skills/hyperframes-creative/references/motion-principles.md +151 -0
  319. package/dist/assets/design/skills/hyperframes-creative/references/narration.md +92 -0
  320. package/dist/assets/design/skills/hyperframes-creative/references/prompt-expansion.md +68 -0
  321. package/dist/assets/design/skills/hyperframes-creative/references/story-spine.md +45 -0
  322. package/dist/assets/design/skills/hyperframes-creative/references/storyboard-recipe.md +57 -0
  323. package/dist/assets/design/skills/hyperframes-creative/references/typography.md +218 -0
  324. package/dist/assets/design/skills/hyperframes-creative/references/video-composition.md +63 -0
  325. package/dist/assets/design/skills/hyperframes-creative/references/visual-styles.md +457 -0
  326. package/dist/assets/design/skills/hyperframes-creative/templates/design-picker.html +1432 -0
  327. package/dist/assets/design/skills/hyperframes-keyframes/SKILL.md +262 -0
  328. package/dist/assets/design/skills/hyperframes-keyframes/agents/openai.yaml +4 -0
  329. package/dist/assets/design/skills/hyperframes-keyframes/references/keyframe-patterns.md +108 -0
  330. package/dist/assets/design/skills/hyperframes-studio/SKILL.md +75 -0
  331. package/dist/assets/design/skills/motion-graphics/SKILL.md +175 -0
  332. package/dist/assets/design/skills/motion-graphics/agents/builder.md +41 -0
  333. package/dist/assets/design/skills/motion-graphics/agents/director.md +54 -0
  334. package/dist/assets/design/skills/motion-graphics/agents/finalize.md +17 -0
  335. package/dist/assets/design/skills/motion-graphics/catalog-map.md +52 -0
  336. package/dist/assets/design/skills/motion-graphics/categories/asset-fusion/module.md +37 -0
  337. package/dist/assets/design/skills/motion-graphics/categories/charts/module.md +22 -0
  338. package/dist/assets/design/skills/motion-graphics/categories/kinetic-type/module.md +19 -0
  339. package/dist/assets/design/skills/motion-graphics/categories/logo-reveal/module.md +17 -0
  340. package/dist/assets/design/skills/motion-graphics/categories/lower-thirds/module.md +20 -0
  341. package/dist/assets/design/skills/motion-graphics/categories/maps/module.md +61 -0
  342. package/dist/assets/design/skills/motion-graphics/categories/news/module.md +56 -0
  343. package/dist/assets/design/skills/motion-graphics/categories/stat/module.md +21 -0
  344. package/dist/assets/design/skills/motion-graphics/categories/tweet/module.md +16 -0
  345. package/dist/assets/design/skills/motion-graphics/categories/webpage/module.md +30 -0
  346. package/dist/assets/design/skills/motion-graphics/grounding/PROTOCOL.md +64 -0
  347. package/dist/assets/design/skills/motion-graphics/phases/source/guide.md +21 -0
  348. package/dist/assets/design/skills/motion-graphics/references/builder-contract.md +38 -0
  349. package/dist/assets/design/skills/motion-graphics/references/motion-vocabulary.md +47 -0
  350. package/dist/assets/design/skills/motion-graphics/references/shot-plan-ir.md +54 -0
  351. package/dist/assets/design/skills/motion-graphics/samples/asset-fusion/_ref-circle-highlight.html +306 -0
  352. package/dist/assets/design/skills/music-to-video/SKILL.md +207 -0
  353. package/dist/assets/design/skills/music-to-video/references/frame-skeleton.md +100 -0
  354. package/dist/assets/design/skills/music-to-video/references/montage.md +55 -0
  355. package/dist/assets/design/skills/music-to-video/references/motion-primitive-catalog.md +75 -0
  356. package/dist/assets/design/skills/music-to-video/references/motion-primitives/3d-card-flip/index.html +53 -0
  357. package/dist/assets/design/skills/music-to-video/references/motion-primitives/3d-card-flip/scene.html +119 -0
  358. package/dist/assets/design/skills/music-to-video/references/motion-primitives/bg-flow-field/index.html +53 -0
  359. package/dist/assets/design/skills/music-to-video/references/motion-primitives/bg-flow-field/scene.html +294 -0
  360. package/dist/assets/design/skills/music-to-video/references/motion-primitives/binary-decrypt/index.html +54 -0
  361. package/dist/assets/design/skills/music-to-video/references/motion-primitives/binary-decrypt/scene.html +85 -0
  362. package/dist/assets/design/skills/music-to-video/references/motion-primitives/blur-resolve/index.html +53 -0
  363. package/dist/assets/design/skills/music-to-video/references/motion-primitives/blur-resolve/scene.html +60 -0
  364. package/dist/assets/design/skills/music-to-video/references/motion-primitives/braam-punch/index.html +53 -0
  365. package/dist/assets/design/skills/music-to-video/references/motion-primitives/braam-punch/scene.html +100 -0
  366. package/dist/assets/design/skills/music-to-video/references/motion-primitives/chromatic-split/index.html +53 -0
  367. package/dist/assets/design/skills/music-to-video/references/motion-primitives/chromatic-split/scene.html +111 -0
  368. package/dist/assets/design/skills/music-to-video/references/motion-primitives/chrome-sweep/index.html +53 -0
  369. package/dist/assets/design/skills/music-to-video/references/motion-primitives/chrome-sweep/scene.html +68 -0
  370. package/dist/assets/design/skills/music-to-video/references/motion-primitives/counting-punch/index.html +54 -0
  371. package/dist/assets/design/skills/music-to-video/references/motion-primitives/counting-punch/scene.html +119 -0
  372. package/dist/assets/design/skills/music-to-video/references/motion-primitives/crash-zoom-in/index.html +53 -0
  373. package/dist/assets/design/skills/music-to-video/references/motion-primitives/crash-zoom-in/scene.html +120 -0
  374. package/dist/assets/design/skills/music-to-video/references/motion-primitives/datamosh-smear/index.html +55 -0
  375. package/dist/assets/design/skills/music-to-video/references/motion-primitives/datamosh-smear/scene.html +131 -0
  376. package/dist/assets/design/skills/music-to-video/references/motion-primitives/directional-fill/index.html +53 -0
  377. package/dist/assets/design/skills/music-to-video/references/motion-primitives/directional-fill/scene.html +103 -0
  378. package/dist/assets/design/skills/music-to-video/references/motion-primitives/dolly-zoom/index.html +53 -0
  379. package/dist/assets/design/skills/music-to-video/references/motion-primitives/dolly-zoom/scene.html +102 -0
  380. package/dist/assets/design/skills/music-to-video/references/motion-primitives/electric-arc/index.html +54 -0
  381. package/dist/assets/design/skills/music-to-video/references/motion-primitives/electric-arc/scene.html +105 -0
  382. package/dist/assets/design/skills/music-to-video/references/motion-primitives/flash-cut/index.html +53 -0
  383. package/dist/assets/design/skills/music-to-video/references/motion-primitives/flash-cut/scene.html +97 -0
  384. package/dist/assets/design/skills/music-to-video/references/motion-primitives/gooey-metaball/index.html +54 -0
  385. package/dist/assets/design/skills/music-to-video/references/motion-primitives/gooey-metaball/scene.html +206 -0
  386. package/dist/assets/design/skills/music-to-video/references/motion-primitives/hard-cut/index.html +53 -0
  387. package/dist/assets/design/skills/music-to-video/references/motion-primitives/hard-cut/scene.html +82 -0
  388. package/dist/assets/design/skills/music-to-video/references/motion-primitives/hypercut-whip/index.html +53 -0
  389. package/dist/assets/design/skills/music-to-video/references/motion-primitives/hypercut-whip/scene.html +44 -0
  390. package/dist/assets/design/skills/music-to-video/references/motion-primitives/iris-open/index.html +53 -0
  391. package/dist/assets/design/skills/music-to-video/references/motion-primitives/iris-open/scene.html +69 -0
  392. package/dist/assets/design/skills/music-to-video/references/motion-primitives/kinetic-letter-in/index.html +53 -0
  393. package/dist/assets/design/skills/music-to-video/references/motion-primitives/kinetic-letter-in/scene.html +64 -0
  394. package/dist/assets/design/skills/music-to-video/references/motion-primitives/liquid-morph/index.html +53 -0
  395. package/dist/assets/design/skills/music-to-video/references/motion-primitives/liquid-morph/scene.html +96 -0
  396. package/dist/assets/design/skills/music-to-video/references/motion-primitives/mask-reveal/index.html +53 -0
  397. package/dist/assets/design/skills/music-to-video/references/motion-primitives/mask-reveal/scene.html +74 -0
  398. package/dist/assets/design/skills/music-to-video/references/motion-primitives/mosaic-pack/index.html +53 -0
  399. package/dist/assets/design/skills/music-to-video/references/motion-primitives/mosaic-pack/scene.html +89 -0
  400. package/dist/assets/design/skills/music-to-video/references/motion-primitives/neon-flicker/index.html +53 -0
  401. package/dist/assets/design/skills/music-to-video/references/motion-primitives/neon-flicker/scene.html +73 -0
  402. package/dist/assets/design/skills/music-to-video/references/motion-primitives/outline-to-fill/index.html +53 -0
  403. package/dist/assets/design/skills/music-to-video/references/motion-primitives/outline-to-fill/scene.html +82 -0
  404. package/dist/assets/design/skills/music-to-video/references/motion-primitives/palette-flip/index.html +53 -0
  405. package/dist/assets/design/skills/music-to-video/references/motion-primitives/palette-flip/scene.html +97 -0
  406. package/dist/assets/design/skills/music-to-video/references/motion-primitives/particle-burst/index.html +53 -0
  407. package/dist/assets/design/skills/music-to-video/references/motion-primitives/particle-burst/scene.html +106 -0
  408. package/dist/assets/design/skills/music-to-video/references/motion-primitives/pixel-dissolve/index.html +53 -0
  409. package/dist/assets/design/skills/music-to-video/references/motion-primitives/pixel-dissolve/scene.html +86 -0
  410. package/dist/assets/design/skills/music-to-video/references/motion-primitives/radial-burst-lines/index.html +53 -0
  411. package/dist/assets/design/skills/music-to-video/references/motion-primitives/radial-burst-lines/scene.html +130 -0
  412. package/dist/assets/design/skills/music-to-video/references/motion-primitives/screen-shake/index.html +53 -0
  413. package/dist/assets/design/skills/music-to-video/references/motion-primitives/screen-shake/scene.html +78 -0
  414. package/dist/assets/design/skills/music-to-video/references/motion-primitives/slot-machine-reveal/index.html +53 -0
  415. package/dist/assets/design/skills/music-to-video/references/motion-primitives/slot-machine-reveal/scene.html +100 -0
  416. package/dist/assets/design/skills/music-to-video/references/motion-primitives/spotlight-sweep/index.html +53 -0
  417. package/dist/assets/design/skills/music-to-video/references/motion-primitives/spotlight-sweep/scene.html +102 -0
  418. package/dist/assets/design/skills/music-to-video/references/motion-primitives/staggered-exit/index.html +53 -0
  419. package/dist/assets/design/skills/music-to-video/references/motion-primitives/staggered-exit/scene.html +82 -0
  420. package/dist/assets/design/skills/music-to-video/references/motion-primitives/text-spectral-rays/USAGE.md +42 -0
  421. package/dist/assets/design/skills/music-to-video/references/motion-primitives/text-spectral-rays/index.html +53 -0
  422. package/dist/assets/design/skills/music-to-video/references/motion-primitives/text-spectral-rays/scene.html +280 -0
  423. package/dist/assets/design/skills/music-to-video/references/motion-primitives/text-wave-distort/index.html +54 -0
  424. package/dist/assets/design/skills/music-to-video/references/motion-primitives/text-wave-distort/scene.html +106 -0
  425. package/dist/assets/design/skills/music-to-video/references/motion-primitives/tile-mosaic/index.html +53 -0
  426. package/dist/assets/design/skills/music-to-video/references/motion-primitives/tile-mosaic/scene.html +109 -0
  427. package/dist/assets/design/skills/music-to-video/references/motion-primitives/typewriter-reveal/index.html +53 -0
  428. package/dist/assets/design/skills/music-to-video/references/motion-primitives/typewriter-reveal/scene.html +91 -0
  429. package/dist/assets/design/skills/music-to-video/references/motion-primitives/word-grid-burst/index.html +53 -0
  430. package/dist/assets/design/skills/music-to-video/references/motion-primitives/word-grid-burst/scene.html +96 -0
  431. package/dist/assets/design/skills/music-to-video/references/planning.md +104 -0
  432. package/dist/assets/design/skills/music-to-video/references/storyboard-format.md +94 -0
  433. package/dist/assets/design/skills/music-to-video/references/template-catalog.md +106 -0
  434. package/dist/assets/design/skills/music-to-video/references/templates/card-flyby/index.html +527 -0
  435. package/dist/assets/design/skills/music-to-video/references/templates/card-flyby/program.json +13 -0
  436. package/dist/assets/design/skills/music-to-video/references/templates/held-message-living-field/index.html +485 -0
  437. package/dist/assets/design/skills/music-to-video/references/templates/held-text-strobe-burst/index.html +302 -0
  438. package/dist/assets/design/skills/music-to-video/references/templates/intro-kinetic-cascade/index.html +610 -0
  439. package/dist/assets/design/skills/music-to-video/references/templates/intro-kinetic-cascade/program.json +41 -0
  440. package/dist/assets/design/skills/music-to-video/references/templates/logo-split-lockup-pulse/index.html +596 -0
  441. package/dist/assets/design/skills/music-to-video/references/templates/poster-tile-mosaic/index.html +589 -0
  442. package/dist/assets/design/skills/music-to-video/references/templates/poster-tile-mosaic/program.json +25 -0
  443. package/dist/assets/design/skills/music-to-video/references/templates/roll-flipbook-word-cycle/index.html +267 -0
  444. package/dist/assets/design/skills/music-to-video/references/templates/split-anchor-word-slot/index.html +594 -0
  445. package/dist/assets/design/skills/music-to-video/references/templates/split-anchor-word-slot/program.json +39 -0
  446. package/dist/assets/design/skills/music-to-video/references/templates/typewriter-phrase-keyword-shuffle/index.html +238 -0
  447. package/dist/assets/design/skills/music-to-video/sub-agents/frame-worker.md +49 -0
  448. package/dist/assets/design/skills/pr-to-video/SKILL.md +271 -0
  449. package/dist/assets/design/skills/pr-to-video/references/code-vocabulary.md +112 -0
  450. package/dist/assets/design/skills/pr-to-video/references/cut-catalog.md +215 -0
  451. package/dist/assets/design/skills/pr-to-video/references/motion-language.md +156 -0
  452. package/dist/assets/design/skills/pr-to-video/references/story-design.md +230 -0
  453. package/dist/assets/design/skills/pr-to-video/references/visual-design.md +164 -0
  454. package/dist/assets/design/skills/pr-to-video/sub-agents/frame-worker.md +38 -0
  455. package/dist/assets/design/skills/product-launch-video/SKILL.md +262 -0
  456. package/dist/assets/design/skills/product-launch-video/references/cut-catalog.md +220 -0
  457. package/dist/assets/design/skills/product-launch-video/references/motion-language.md +156 -0
  458. package/dist/assets/design/skills/product-launch-video/references/story-design.md +508 -0
  459. package/dist/assets/design/skills/product-launch-video/references/visual-design.md +126 -0
  460. package/dist/assets/design/skills/product-launch-video/sub-agents/frame-worker.md +21 -0
  461. package/dist/assets/design/skills/remotion-to-hyperframes/SKILL.md +130 -0
  462. package/dist/assets/design/skills/remotion-to-hyperframes/assets/test-corpus/tier-1-title-card/README.md +41 -0
  463. package/dist/assets/design/skills/remotion-to-hyperframes/assets/test-corpus/tier-1-title-card/expected.json +26 -0
  464. package/dist/assets/design/skills/remotion-to-hyperframes/assets/test-corpus/tier-1-title-card/hf-src/compositions/title.html +31 -0
  465. package/dist/assets/design/skills/remotion-to-hyperframes/assets/test-corpus/tier-1-title-card/hf-src/index.html +46 -0
  466. package/dist/assets/design/skills/remotion-to-hyperframes/assets/test-corpus/tier-1-title-card/remotion-src/package.json +14 -0
  467. package/dist/assets/design/skills/remotion-to-hyperframes/assets/test-corpus/tier-1-title-card/remotion-src/tsconfig.json +15 -0
  468. package/dist/assets/design/skills/remotion-to-hyperframes/assets/test-corpus/tier-2-multi-scene/README.md +54 -0
  469. package/dist/assets/design/skills/remotion-to-hyperframes/assets/test-corpus/tier-2-multi-scene/expected.json +29 -0
  470. package/dist/assets/design/skills/remotion-to-hyperframes/assets/test-corpus/tier-2-multi-scene/hf-src/compositions/scene-1.html +35 -0
  471. package/dist/assets/design/skills/remotion-to-hyperframes/assets/test-corpus/tier-2-multi-scene/hf-src/compositions/scene-2.html +35 -0
  472. package/dist/assets/design/skills/remotion-to-hyperframes/assets/test-corpus/tier-2-multi-scene/hf-src/compositions/scene-3.html +36 -0
  473. package/dist/assets/design/skills/remotion-to-hyperframes/assets/test-corpus/tier-2-multi-scene/hf-src/index.html +75 -0
  474. package/dist/assets/design/skills/remotion-to-hyperframes/assets/test-corpus/tier-2-multi-scene/remotion-src/package.json +14 -0
  475. package/dist/assets/design/skills/remotion-to-hyperframes/assets/test-corpus/tier-2-multi-scene/remotion-src/tsconfig.json +15 -0
  476. package/dist/assets/design/skills/remotion-to-hyperframes/assets/test-corpus/tier-3-data-driven/README.md +85 -0
  477. package/dist/assets/design/skills/remotion-to-hyperframes/assets/test-corpus/tier-3-data-driven/expected.json +41 -0
  478. package/dist/assets/design/skills/remotion-to-hyperframes/assets/test-corpus/tier-3-data-driven/hf-src/compositions/scene-1.html +52 -0
  479. package/dist/assets/design/skills/remotion-to-hyperframes/assets/test-corpus/tier-3-data-driven/hf-src/compositions/scene-2.html +99 -0
  480. package/dist/assets/design/skills/remotion-to-hyperframes/assets/test-corpus/tier-3-data-driven/hf-src/compositions/scene-3.html +55 -0
  481. package/dist/assets/design/skills/remotion-to-hyperframes/assets/test-corpus/tier-3-data-driven/hf-src/index.html +70 -0
  482. package/dist/assets/design/skills/remotion-to-hyperframes/assets/test-corpus/tier-3-data-driven/remotion-src/package.json +15 -0
  483. package/dist/assets/design/skills/remotion-to-hyperframes/assets/test-corpus/tier-3-data-driven/remotion-src/tsconfig.json +15 -0
  484. package/dist/assets/design/skills/remotion-to-hyperframes/assets/test-corpus/tier-4-escape-hatch/README.md +51 -0
  485. package/dist/assets/design/skills/remotion-to-hyperframes/assets/test-corpus/tier-4-escape-hatch/expected.json +85 -0
  486. package/dist/assets/design/skills/remotion-to-hyperframes/references/api-map.md +142 -0
  487. package/dist/assets/design/skills/remotion-to-hyperframes/references/escape-hatch.md +115 -0
  488. package/dist/assets/design/skills/remotion-to-hyperframes/references/eval.md +140 -0
  489. package/dist/assets/design/skills/remotion-to-hyperframes/references/fonts.md +112 -0
  490. package/dist/assets/design/skills/remotion-to-hyperframes/references/limitations.md +136 -0
  491. package/dist/assets/design/skills/remotion-to-hyperframes/references/lottie.md +119 -0
  492. package/dist/assets/design/skills/remotion-to-hyperframes/references/media.md +149 -0
  493. package/dist/assets/design/skills/remotion-to-hyperframes/references/parameters.md +172 -0
  494. package/dist/assets/design/skills/remotion-to-hyperframes/references/sequencing.md +251 -0
  495. package/dist/assets/design/skills/remotion-to-hyperframes/references/timing.md +165 -0
  496. package/dist/assets/design/skills/remotion-to-hyperframes/references/transitions.md +113 -0
  497. package/dist/assets/design/skills/slideshow/SKILL.md +530 -0
  498. package/dist/assets/design/skills/slideshow/references/standalone-harness.md +1017 -0
  499. package/dist/assets/design/skills/talking-head-recut/NOTICE.md +39 -0
  500. package/dist/assets/design/skills/talking-head-recut/SKILL.md +1007 -0
  501. package/dist/assets/design/skills/talking-head-recut/references/DESIGN_INDEX.md +145 -0
  502. package/dist/assets/design/skills/talking-head-recut/references/confirm-visual-direction-with-user-do-this-first.md +211 -0
  503. package/dist/assets/design/skills/talking-head-recut/references/frames/clean.html +92 -0
  504. package/dist/assets/design/skills/talking-head-recut/references/frames/hairline.html +171 -0
  505. package/dist/assets/design/skills/talking-head-recut/references/frames/polaroid.html +131 -0
  506. package/dist/assets/design/skills/talking-head-recut/references/layouts/overlay.html +164 -0
  507. package/dist/assets/design/skills/talking-head-recut/references/layouts/pip.html +143 -0
  508. package/dist/assets/design/skills/talking-head-recut/references/layouts/split.html +121 -0
  509. package/dist/assets/design/skills/talking-head-recut/references/layouts/stack.html +109 -0
  510. package/dist/assets/design/skills/talking-head-recut/references/styles/academic.html +172 -0
  511. package/dist/assets/design/skills/talking-head-recut/references/styles/audit.html +170 -0
  512. package/dist/assets/design/skills/talking-head-recut/references/styles/editorial.html +189 -0
  513. package/dist/assets/design/skills/talking-head-recut/references/styles/geom.html +181 -0
  514. package/dist/assets/design/skills/talking-head-recut/references/styles/minimal.html +130 -0
  515. package/dist/assets/design/skills/talking-head-recut/references/styles/spotlight.html +142 -0
  516. package/dist/assets/design/skills/talking-head-recut/references/styles/swiss.html +188 -0
  517. package/dist/assets/design/skills/talking-head-recut/references/styles/terminal.html +196 -0
  518. package/dist/assets/design/skills/talking-head-recut/references/styles/whiteboard.html +170 -0
  519. package/dist/assets/design/skills/talking-head-recut/references/styles/xhs.html +206 -0
  520. package/dist/assets/design/taste/LICENSE +21 -0
  521. package/dist/assets/design/taste/PROVENANCE.md +70 -0
  522. package/dist/assets/design/taste/brandkit/SKILL.md +798 -0
  523. package/dist/assets/design/taste/brutalist-skill/SKILL.md +92 -0
  524. package/dist/assets/design/taste/gpt-tasteskill/SKILL.md +74 -0
  525. package/dist/assets/design/taste/image-to-code-skill/SKILL.md +1228 -0
  526. package/dist/assets/design/taste/imagegen-frontend-mobile/SKILL.md +1465 -0
  527. package/dist/assets/design/taste/imagegen-frontend-web/SKILL.md +987 -0
  528. package/dist/assets/design/taste/minimalist-skill/SKILL.md +85 -0
  529. package/dist/assets/design/taste/output-skill/SKILL.md +49 -0
  530. package/dist/assets/design/taste/redesign-skill/SKILL.md +178 -0
  531. package/dist/assets/design/taste/soft-skill/SKILL.md +98 -0
  532. package/dist/assets/design/taste/stitch-skill/DESIGN.md +121 -0
  533. package/dist/assets/design/taste/stitch-skill/SKILL.md +184 -0
  534. package/dist/assets/design/taste/taste-skill/SKILL.md +1043 -0
  535. package/dist/assets/design/taste/taste-skill/references/4-2-color-calibration.md +24 -0
  536. package/dist/assets/design/taste/taste-skill/references/4-7-layout-discipline-hard-rules-failing-any-of-.md +27 -0
  537. package/dist/assets/design/taste/taste-skill/references/4-8-image-visual-asset-strategy.md +35 -0
  538. package/dist/assets/design/taste/taste-skill/references/4-9-content-density.md +34 -0
  539. package/dist/assets/design/taste/taste-skill/references/9-f-production-test-tells-banned-outright.md +54 -0
  540. package/dist/assets/design/taste/taste-skill-v1/SKILL.md +226 -0
  541. package/dist/assets/engineering/skills-starter/engineering-ui-design/SKILL.md +84 -0
  542. package/dist/assets/engineering/skills-superpowers/subagent-driven-development/SKILL.md +68 -459
  543. package/dist/assets/engineering/skills-superpowers/subagent-driven-development/dispatch-and-review-rules.md +74 -0
  544. package/dist/assets/engineering/skills-superpowers/subagent-driven-development/example-workflow.md +70 -0
  545. package/dist/assets/engineering/skills-superpowers/subagent-driven-development/model-selection.md +40 -0
  546. package/dist/assets/engineering/skills-superpowers/subagent-driven-development/process-diagrams.md +92 -0
  547. package/dist/assets/engineering/skills-superpowers/subagent-driven-development/setup-and-ledger.md +75 -0
  548. package/dist/assets/uiux/LICENSE +21 -0
  549. package/dist/assets/uiux/PROVENANCE.md +110 -0
  550. package/dist/assets/uiux/data/app-interface.csv +33 -0
  551. package/dist/assets/uiux/data/charts.csv +26 -0
  552. package/dist/assets/uiux/data/colors.csv +193 -0
  553. package/dist/assets/uiux/data/icons.csv +106 -0
  554. package/dist/assets/uiux/data/landing.csv +35 -0
  555. package/dist/assets/uiux/data/motion.csv +18 -0
  556. package/dist/assets/uiux/data/products.csv +193 -0
  557. package/dist/assets/uiux/data/react-performance.csv +45 -0
  558. package/dist/assets/uiux/data/stacks/angular.csv +51 -0
  559. package/dist/assets/uiux/data/stacks/astro.csv +54 -0
  560. package/dist/assets/uiux/data/stacks/avalonia.csv +57 -0
  561. package/dist/assets/uiux/data/stacks/flutter.csv +53 -0
  562. package/dist/assets/uiux/data/stacks/html-tailwind.csv +60 -0
  563. package/dist/assets/uiux/data/stacks/javafx.csv +76 -0
  564. package/dist/assets/uiux/data/stacks/jetpack-compose.csv +53 -0
  565. package/dist/assets/uiux/data/stacks/laravel.csv +51 -0
  566. package/dist/assets/uiux/data/stacks/nextjs.csv +62 -0
  567. package/dist/assets/uiux/data/stacks/nuxt-ui.csv +77 -0
  568. package/dist/assets/uiux/data/stacks/nuxtjs.csv +68 -0
  569. package/dist/assets/uiux/data/stacks/react-native.csv +52 -0
  570. package/dist/assets/uiux/data/stacks/react.csv +67 -0
  571. package/dist/assets/uiux/data/stacks/shadcn.csv +69 -0
  572. package/dist/assets/uiux/data/stacks/svelte.csv +56 -0
  573. package/dist/assets/uiux/data/stacks/swiftui.csv +51 -0
  574. package/dist/assets/uiux/data/stacks/threejs.csv +54 -0
  575. package/dist/assets/uiux/data/stacks/uno.csv +60 -0
  576. package/dist/assets/uiux/data/stacks/uwp.csv +56 -0
  577. package/dist/assets/uiux/data/stacks/vue.csv +50 -0
  578. package/dist/assets/uiux/data/stacks/winui.csv +60 -0
  579. package/dist/assets/uiux/data/stacks/wpf.csv +57 -0
  580. package/dist/assets/uiux/data/styles.csv +89 -0
  581. package/dist/assets/uiux/data/typography.csv +75 -0
  582. package/dist/assets/uiux/data/ui-reasoning.csv +193 -0
  583. package/dist/assets/uiux/data/ux-guidelines.csv +120 -0
  584. package/dist/auto-review.js +38 -4
  585. package/dist/bootstrap.js +65061 -56810
  586. package/dist/client.cjs +4668 -3598
  587. package/dist/subagent-claude-code.js +493 -0
  588. package/dist/subagent-codex.js +1068 -0
  589. package/dist/tool-session-query.js +993 -0
  590. package/package.json +81 -74
  591. package/dist/agent-team.js +0 -16235
  592. package/dist/schedule.js +0 -15898
  593. package/dist/tool-agent-team.js +0 -16766
@@ -0,0 +1,115 @@
1
+ ---
2
+ name: counting-dynamic-scale
3
+ description: Counter animation where the value counts up while transform scale grows to its final size, creating escalating visual weight without per-frame text reflow.
4
+ metadata:
5
+ tags: counter, counting, scale, transform, number, dynamic, emphasis
6
+ ---
7
+
8
+ # Counting with Dynamic Scale
9
+
10
+ A number counts from A → B while its transform scale grows to the final size — escalating visual weight ("this is impressive") without tweening `font-size` or forcing text layout on every frame. The final font size is static CSS; only the transform changes.
11
+
12
+ ## How It Works
13
+
14
+ Two synchronized tweens at the SAME timeline position with the SAME ease: (1) a proxy value rendered as text via `onUpdate` (`Math.round(...).toLocaleString()`), (2) the counter's transform `scale: START_SCALE → 1`, where `START_SCALE = START_SIZE / END_SIZE`. A suffix (`%`, `×`, `+`) slides in AFTER the count lands — the number gets its own beat — and a label fades in early.
15
+
16
+ ## Recipe
17
+
18
+ ```html
19
+ <!-- inside a standard scene clip (hyperframes-core) -->
20
+ <div class="counter-wrap">
21
+ <span class="counter" id="counter">0</span><span class="counter-suffix">{suffix}</span>
22
+ </div>
23
+ <div class="counter-label">{label}</div>
24
+ ```
25
+
26
+ ```css
27
+ .counter-wrap {
28
+ display: flex;
29
+ align-items: baseline;
30
+ justify-content: center;
31
+ width: {counterContainerWidth}; /* fixed width — no layout shift as digit count changes */
32
+ }
33
+ .counter {
34
+ font-variant-numeric: tabular-nums; /* MANDATORY — digits keep equal width */
35
+ display: inline-block;
36
+ font-size: {endSize}; /* final size is static; GSAP animates scale, not font-size */
37
+ transform-origin: center center;
38
+ }
39
+ .counter-suffix {
40
+ opacity: 0;
41
+ transform: translateY(20px);
42
+ }
43
+ ```
44
+
45
+ ```js
46
+ const counter = document.getElementById("counter");
47
+ const state = { value: 0 };
48
+ const START_SCALE = START_SIZE / END_SIZE;
49
+
50
+ // Count value — onUpdate changes text only
51
+ tl.to(
52
+ state,
53
+ {
54
+ value: TARGET_VALUE,
55
+ duration: COUNT_DUR,
56
+ ease: COUNT_EASE,
57
+ onUpdate: () => {
58
+ counter.textContent = Math.round(state.value).toLocaleString();
59
+ },
60
+ },
61
+ 0,
62
+ );
63
+
64
+ // Visual growth — compositor transform sharing the count's timing + ease
65
+ tl.fromTo(counter, { scale: START_SCALE }, { scale: 1, duration: COUNT_DUR, ease: COUNT_EASE }, 0);
66
+
67
+ // Suffix slides in AFTER the count completes
68
+ tl.to(
69
+ ".counter-suffix",
70
+ { opacity: 1, y: 0, duration: SUFFIX_DUR, ease: `back.out(${SUFFIX_BOUNCE_FACTOR})` },
71
+ COUNT_DUR,
72
+ );
73
+
74
+ // Label fades in early
75
+ tl.from(".counter-label", { opacity: 0, y: 12, duration: LABEL_DUR, ease: "power2.out" }, LABEL_AT);
76
+ ```
77
+
78
+ ## Variations
79
+
80
+ - **Direct `innerText` tween (no proxy)** — GSAP can tween `innerText` directly for a number-only counter; keep the proxy form when you need locale formatting or suffix logic. The scale tween stays separate either way:
81
+
82
+ ```js
83
+ tl.to(
84
+ counter,
85
+ { innerText: TARGET_VALUE, duration: COUNT_DUR, ease: COUNT_EASE, snap: { innerText: 1 } },
86
+ 0,
87
+ );
88
+ ```
89
+
90
+ - **3D depth entry** — add a `tl.from(".counter", { z: -300, ... }, 0)` push-in; requires `perspective` on `.counter-wrap` and `transform-style: preserve-3d` on the counter.
91
+ - **Multi-stat coordinated reveal** — 3 stats counting in parallel share the SAME ease, duration, and start position so they finish together (a chord, not an arpeggio). Each stat usually also needs a paired graphic (bar / ring / stars) — don't stop at the number; see [stat-bars-and-fills.md](stat-bars-and-fills.md).
92
+
93
+ ## Values
94
+
95
+ | token | range | notes |
96
+ | --------------------- | ------------------------------------------- | ----------------------------------------------------------------------------- |
97
+ | TARGET_VALUE | 2–3 digits ideal | 4+ digits needs a wider container; must fit at END_SIZE without clipping |
98
+ | START_SIZE / END_SIZE | START ≈ 40–60% of END | design inputs used once for START_SCALE; never tween either |
99
+ | COUNT_DUR | 1.2–2.5s | below ~0.8s reads as a flash — the eye must read the digits scrolling past |
100
+ | COUNT_EASE | `power2.out` / `power3.out` / `expo.out` | shared by value + scale; more `.out` = more dramatic deceleration at the peak |
101
+ | SUFFIX_DUR | 0.3–0.6s | fires at `COUNT_DUR`, never during the count |
102
+ | SUFFIX_BOUNCE_FACTOR | 1.4–2.0 | overshoot is fine on the suffix (it's punctuation, not data) |
103
+ | LABEL_AT / LABEL_DUR | AT < COUNT_DUR/2; 0.4–0.7s | label arrives before the count peaks |
104
+
105
+ ## Critical Constraints
106
+
107
+ - **`tabular-nums` mandatory** + fixed-width container as belt-and-suspenders — without them digit-count transitions (9 → 10 → 100) jitter as glyph widths change.
108
+ - **Never set `fontSize` in `onUpdate`** — final type size is static CSS; only the transform changes per frame. Keep `onUpdate` O(1): set text only, no style writes or DOM creation.
109
+ - **`Math.round`, not `Math.floor`** — halfway through the final integer should already display the final value.
110
+ - **Avoid `back.out` / `elastic.out` on the counter itself** — overshoot makes the number look unstable (it's data, not decoration). Grow in place, don't bounce.
111
+ - **Label is BIG TEXT, not a page-style caption** — a tiny paragraph under a hero-size number reads as visual noise in video. Display-size, uppercase, tracked: the label is part of the headline.
112
+
113
+ ## See also
114
+
115
+ `stat-bars-and-fills` (the paired graphic — give it the same ease/duration so number and fill land as one beat) · `svg-path-draw` (icons drawing in around the number) · `center-outward-expansion` (icons bursting outward at the count peak).
@@ -0,0 +1,208 @@
1
+ # CSS Patterns for Marker Highlighting
2
+
3
+ Pure CSS + GSAP implementations of all five MarkerHighlight.js drawing modes — no external library dependency, full timeline control. Snippets show mechanism DOM only, inside a standard scene clip (hyperframes-core); assume `tl` exists.
4
+
5
+ Shared scaffold for every mode: the wrap is `position: relative; display: inline`; the text copy is `position: relative` and z-indexed **above** the accent (below it for sketchout, where the lines cross the text).
6
+
7
+ ## 1. Highlight Mode
8
+
9
+ Yellow marker sweep behind text — the most common mode.
10
+
11
+ ```html
12
+ <span class="mh-highlight-wrap">
13
+ <span class="mh-highlight-bar" id="hl-1"></span>
14
+ <span class="mh-highlight-text">highlighted text</span>
15
+ </span>
16
+ ```
17
+
18
+ ```css
19
+ .mh-highlight-bar {
20
+ position: absolute;
21
+ inset: 0 -6px; /* bleed past the text edges */
22
+ background: #fdd835;
23
+ opacity: 0.35;
24
+ transform: scaleX(0);
25
+ transform-origin: left center;
26
+ border-radius: 3px;
27
+ z-index: 0;
28
+ }
29
+ ```
30
+
31
+ ```js
32
+ tl.to("#hl-1", { scaleX: 1, duration: 0.5, ease: "power2.out" }, 0.6);
33
+ // Optional hand-drawn skew: gsap.set("#hl-1", { skewX: -2 });
34
+ // Multi-line: tl.to(".mh-highlight-bar", { scaleX: 1, ..., stagger: 0.3 }, 0.6);
35
+ ```
36
+
37
+ ## 2. Circle Mode
38
+
39
+ Hand-drawn ellipse around text — `border-radius: 50%` plus a slight rotation for organic feel.
40
+
41
+ ```html
42
+ <span class="mh-circle-wrap">
43
+ <span class="mh-circle-text">IMPORTANT</span>
44
+ <span class="mh-circle-ring" id="circle-1"></span>
45
+ </span>
46
+ ```
47
+
48
+ ```css
49
+ .mh-circle-ring {
50
+ position: absolute;
51
+ top: 50%;
52
+ left: 50%;
53
+ width: 130%; /* tight (short words): 150%; rounded-rect: 120% + border-radius: 30% */
54
+ height: 160%;
55
+ transform: translate(-50%, -50%) rotate(-3deg) scale(0);
56
+ border: 3px solid #e53935;
57
+ border-radius: 50%;
58
+ z-index: 0;
59
+ }
60
+ ```
61
+
62
+ ```js
63
+ tl.to("#circle-1", { scale: 1, rotation: -3, duration: 0.6, ease: "back.out(1.7)" }, 0.7);
64
+ ```
65
+
66
+ ## 3. Burst Mode
67
+
68
+ Radiating lines from text center — each line a positioned span rotated to its angle. Use ~12 lines at 30° steps and **vary `--len` (40–80px)**; equal lengths look mechanical.
69
+
70
+ ```html
71
+ <span class="mh-burst-wrap">
72
+ <span class="mh-burst-text">WOW</span>
73
+ <span class="mh-burst-container" id="burst-1">
74
+ <span class="mh-burst-line" style="--angle: 0deg; --len: 70px;"></span>
75
+ <span class="mh-burst-line" style="--angle: 30deg; --len: 55px;"></span>
76
+ <!-- …one line per 30° step through 330deg, --len varied 40-80px -->
77
+ </span>
78
+ </span>
79
+ ```
80
+
81
+ ```css
82
+ .mh-burst-container {
83
+ position: absolute;
84
+ top: 50%;
85
+ left: 50%;
86
+ width: 0;
87
+ height: 0;
88
+ z-index: 1; /* text copy at z-index: 2 */
89
+ }
90
+ .mh-burst-line {
91
+ position: absolute;
92
+ display: block;
93
+ width: 3px;
94
+ height: var(--len);
95
+ background: #1e88e5;
96
+ left: -1.5px;
97
+ top: calc(-1 * var(--len));
98
+ transform: rotate(var(--angle));
99
+ transform-origin: bottom center;
100
+ opacity: 0;
101
+ }
102
+ ```
103
+
104
+ ```js
105
+ tl.fromTo(
106
+ "#burst-1 .mh-burst-line",
107
+ { scaleY: 0, opacity: 0 },
108
+ { scaleY: 1, opacity: 1, duration: 0.4, ease: "power2.out", stagger: 0.03 },
109
+ 0.7,
110
+ );
111
+ ```
112
+
113
+ ## 4. Scribble Mode
114
+
115
+ Wavy SVG underline that draws itself via `stroke-dashoffset`.
116
+
117
+ ```html
118
+ <span class="mh-scribble-wrap">
119
+ <span class="mh-scribble-text">underlined text</span>
120
+ <svg class="mh-scribble-svg" viewBox="0 0 500 24" preserveAspectRatio="none">
121
+ <path
122
+ id="scribble-1"
123
+ d="M0,12 Q31,0 62,12 Q93,24 125,12 Q156,0 187,12 Q218,24 250,12 Q281,0 312,12 Q343,24 375,12 Q406,0 437,12 Q468,24 500,12"
124
+ fill="none"
125
+ stroke="#FDD835"
126
+ stroke-width="3"
127
+ stroke-linecap="round"
128
+ />
129
+ </svg>
130
+ </span>
131
+ ```
132
+
133
+ ```css
134
+ .mh-scribble-svg {
135
+ position: absolute;
136
+ left: 0;
137
+ bottom: -6px; /* strikethrough variant: top: 50%; transform: translateY(-50%) */
138
+ width: 100%;
139
+ height: 24px;
140
+ z-index: 0;
141
+ }
142
+ ```
143
+
144
+ ```js
145
+ const path = document.querySelector("#scribble-1");
146
+ const len = path.getTotalLength();
147
+ gsap.set(path, { strokeDasharray: len, strokeDashoffset: len });
148
+ tl.to("#scribble-1", { strokeDashoffset: 0, duration: 0.8, ease: "power1.inOut" }, 0.7);
149
+ ```
150
+
151
+ Path tuning: the `Q` control points alternate y between 0 and 24 for a natural wobble. Tighter waves = smaller x-increments (~25px per half-wave); looser = ~50px; subtler amplitude = y range 0–16.
152
+
153
+ ## 5. Sketchout Mode
154
+
155
+ Cross-hatch over de-emphasized text — two angled lines create a "crossed out" effect.
156
+
157
+ ```html
158
+ <span class="mh-sketchout-wrap">
159
+ <span class="mh-sketchout-text">old price</span>
160
+ <span class="mh-sketchout-lines" id="sketchout-1">
161
+ <span class="mh-sketchout-line mh-sketchout-fwd"></span>
162
+ <span class="mh-sketchout-line mh-sketchout-bwd"></span>
163
+ </span>
164
+ </span>
165
+ ```
166
+
167
+ ```css
168
+ .mh-sketchout-lines {
169
+ position: absolute;
170
+ inset: 0 -4px;
171
+ overflow: hidden;
172
+ z-index: 1; /* text at z-index: 0 — the lines cross OVER it */
173
+ }
174
+ .mh-sketchout-line {
175
+ position: absolute;
176
+ display: block;
177
+ top: 50%;
178
+ left: 0;
179
+ width: 100%;
180
+ height: 2px;
181
+ background: #e53935;
182
+ transform-origin: left center;
183
+ }
184
+ .mh-sketchout-fwd {
185
+ transform: scaleX(0) rotate(-12deg);
186
+ }
187
+ .mh-sketchout-bwd {
188
+ transform: scaleX(0) rotate(12deg);
189
+ }
190
+ ```
191
+
192
+ ```js
193
+ // Forward slash first, backward follows
194
+ tl.to("#sketchout-1 .mh-sketchout-fwd", { scaleX: 1, duration: 0.3, ease: "power2.out" }, 1.0);
195
+ tl.to("#sketchout-1 .mh-sketchout-bwd", { scaleX: 1, duration: 0.3, ease: "power2.out" }, 1.15);
196
+ ```
197
+
198
+ ## Combining Modes in Captions
199
+
200
+ Cycle modes across caption groups for visual variety — every 2-3 groups for high energy, 3-4 for medium, 4-5 for low:
201
+
202
+ ```js
203
+ const MODES = ["highlight", "circle", "burst", "scribble"];
204
+ GROUPS.forEach((group, gi) => {
205
+ const mode = MODES[gi % MODES.length];
206
+ group.emphasisWords.forEach((word) => applyMode(word.el, mode, tl, word.start));
207
+ });
208
+ ```
@@ -0,0 +1,104 @@
1
+ ---
2
+ name: cursor-click-ripple
3
+ description: Animated mouse cursor moves to target, clicks with scale depression and expanding ripple rings.
4
+ metadata:
5
+ tags: cursor, click, ripple, interaction, mouse, button
6
+ ---
7
+
8
+ # Cursor Click Ripple
9
+
10
+ An animated cursor moves to a target element, performs a click with visual depression, and emits expanding ripple rings from the click point. Three sequential phases on one timeline: **move** (eased translation to the target's center) → **click** (scale depression on cursor + target together, yoyo back) → **ripple** (1–3 staggered rings expand and fade from the click point). This is a _point event at one location_ — a sustained hold across space is [cursor-drag.md](cursor-drag.md).
11
+
12
+ ## Recipe
13
+
14
+ ```html
15
+ <button class="target-button">{ctaLabel}</button>
16
+ <div class="cursor"><!-- arrow SVG, positioned at the entry corner --></div>
17
+ <!-- Rings live in DOM from t=0 at the click-target CENTER, scale 0 + opacity 0 -->
18
+ <div class="ripple ripple-1"></div>
19
+ <div class="ripple ripple-2"></div>
20
+ <div class="ripple ripple-3"></div>
21
+ ```
22
+
23
+ ```css
24
+ .ripple {
25
+ position: absolute;
26
+ left: 50%;
27
+ top: 50%; /* click-target center */
28
+ width: 100px;
29
+ height: 100px;
30
+ border-radius: 50%;
31
+ border: 2px solid {rippleColor};
32
+ transform: translate(-50%, -50%) scale(0);
33
+ opacity: 0;
34
+ pointer-events: none;
35
+ }
36
+ ```
37
+
38
+ ```js
39
+ // Phase 1 — Move: eased, not linear
40
+ tl.to(".cursor", { x: TARGET_X, y: TARGET_Y, duration: MOVE_DUR, ease: MOVE_EASE }, 0);
41
+
42
+ // Phase 2 — Click: cursor + target depress together, then return
43
+ tl.to(
44
+ ".cursor",
45
+ { scale: CURSOR_PRESS_SCALE, duration: PRESS_DUR, ease: "power2.in", yoyo: true, repeat: 1 },
46
+ CLICK_AT,
47
+ );
48
+ tl.to(
49
+ ".target-button",
50
+ { scale: TARGET_PRESS_SCALE, duration: PRESS_DUR, ease: "power2.in", yoyo: true, repeat: 1 },
51
+ CLICK_AT,
52
+ );
53
+
54
+ // Phase 3 — Ripple burst, N rings staggered from the click point
55
+ tl.set([".ripple-1", ".ripple-2", ".ripple-3"], { opacity: 1 }, RIPPLE_AT);
56
+ tl.to(
57
+ [".ripple-1", ".ripple-2", ".ripple-3"],
58
+ {
59
+ scale: RIPPLE_SCALE,
60
+ opacity: 0,
61
+ duration: RIPPLE_DUR,
62
+ ease: RIPPLE_EASE,
63
+ stagger: RIPPLE_STAGGER,
64
+ immediateRender: false, // holds scale 0 / opacity 0 until the click moment
65
+ },
66
+ RIPPLE_AT,
67
+ );
68
+ ```
69
+
70
+ ## Variations
71
+
72
+ - **Single ring** — one `.ripple`, no stagger; more elegant when the rest of the scene is busy.
73
+ - **Keyframed attack-decay** — a `keyframes` block ramps opacity 0 → peak → 0 across the duration; a clearer "energy radiates and dissipates" envelope.
74
+ - **Multi-ring expanding pulse** — 3 rings at 0.08 s stagger when the click is the scene's climactic moment.
75
+
76
+ ## Values
77
+
78
+ | token | range | notes |
79
+ | --------------------------- | --------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
80
+ | MOVE_DUR | 0.4–1.0 s | short darts; long reads as a "considered click." Must end before CLICK_AT or it reads as a misclick |
81
+ | MOVE_EASE | discrete choice | `power2.inOut` calm · `power3.out` decisive · `back.out(1.2–1.4)` settles onto the button with a tiny recoil (higher reads cartoonish) |
82
+ | CLICK_AT | `MOVE_DUR + 0–0.3 s` | zero pause reads as autopilot; >0.3 s reads as hesitation |
83
+ | PRESS_DUR | 0.06–0.12 s (half; yoyo ×2) | short crisp, long mushy; must finish before the next phase needs normal scale |
84
+ | CURSOR / TARGET_PRESS_SCALE | 0.80–0.90 / 0.92–0.97 | cursor compresses MORE than the target — the cursor is the actor, the target the recipient |
85
+ | RIPPLE_AT | `CLICK_AT + 0–0.08 s` | simultaneous feels causal; slight delay feels acoustic |
86
+ | RIPPLE_DUR | 0.5–1.0 s | sharp ping vs soft sonar; must complete before anything that needs the ring gone |
87
+ | RIPPLE_SCALE | 3–6 | 3 stays near the click site; if the ring would exit the frame before fading, lower it |
88
+ | RIPPLE_STAGGER | 0.06–0.12 s (or 0) | below ~0.06 s reads as one thick ring; above ~0.12 s as separate events |
89
+ | RIPPLE_EASE | discrete choice | `power2.out` standard ping · `power3.out` sharper attack · `expo.out` strong distant pulse |
90
+ | TARGET_X / TARGET_Y | layout-derived | must match the target's visual centroid — a 4 px miss reads as missing the button |
91
+
92
+ Reference values: `../examples/cta-orbit-collapse.html` — 0.5 s move on `back.out(1.3)`, click +0.2 s, press 0.08 s at 0.85/0.95, single ring to 5× over 0.7 s `power2.out`.
93
+
94
+ ## Critical Constraints
95
+
96
+ - **Move before click** — trigger the click only after the move tween settles; clicking mid-motion reads as unintentional.
97
+ - **Rings live in DOM from t=0** at the click-target center with `scale: 0` + `opacity: 0` — never conditionally rendered; `immediateRender: false` on the expand so they hold invisible until the trigger.
98
+ - **Ripple from the click point** — the button's visual center, not any element's bounding-box origin.
99
+ - **Synchronized depression** — cursor + target depress at the same position with the same duration, and both yoyo back.
100
+ - **Cursor above all content** (high z-index) for the whole sequence; `pointer-events: none` on cursor + ripples.
101
+
102
+ ## See also
103
+
104
+ `orbit-3d-entry` (click as the pivot that collapses orbiters) · `center-outward-expansion` (click triggers an outward burst) · `press-release-spring` (stronger physical feel on the target) · `scale-swap-transition` (the button's post-click state change).
@@ -0,0 +1,141 @@
1
+ ---
2
+ name: cursor-drag
3
+ description: The drag verb for driven cursors — grab, lift, travel, drop-snap. A semi-transparent ghost chip rides the cursor in exact lockstep and snaps into a placed field with selection chrome; variants cover fill-handle auto-fill down rows, corner-handle proportional resize (uniform scale only), and grab-lift-reorder with the neighbor springing into the vacated slot.
4
+ metadata:
5
+ tags: cursor, drag, drop, ghost, handle, resize, reorder, snap, interaction, mouse
6
+ ---
7
+
8
+ # Cursor Drag
9
+
10
+ > Cursor look, sizing, off-screen entry, and tip-targeting defer to the **oversized-cursor house doctrine** — this rule owns the drag _mechanics_ only.
11
+
12
+ THE held-journey verb: the cursor presses down on a payload, carries it, and releases it somewhere else. The load-bearing law is **lockstep**: the cursor tip and the payload's grip point move as one rigid object for the entire travel — a one-frame drift reads as the chip slipping out of the hand. Distinct from [cursor-click-ripple.md](cursor-click-ripple.md) (move → point event at a single location): a drag is a _sustained hold across space_, and the payload is the co-star. Reuse [physics-press-reaction.md](physics-press-reaction.md) for the grab's press dip (cursor + payload compress together); for N simultaneous actors see [multi-cursor-choreography.md](multi-cursor-choreography.md) — this rule is one protagonist performing a workflow beat.
13
+
14
+ ## How It Works
15
+
16
+ Five beats: **approach** (cursor glides to the source chip, `power2.inOut`) → **grab** (press dip on cursor + chip together; on the down-beat `tl.set` reveals the **ghost** — a pre-rendered semi-transparent clone at the chip's position — plus a small lift `fromTo` to `GHOST_LIFT_SCALE` with a soft shadow, `immediateRender: false`) → **travel** (cursor and ghost move as **matched tweens**) → **drop** (ghost off, placed field pops in with selection chrome) → **adjust / exit** (optional handle resize, then the cursor glides to the next target).
17
+
18
+ Matched tweens = same timeline position, same duration, same ease, over straight lines — that keeps the pair rigidly locked at every eased midpoint. A shared `[cursor, ghost]` targets array only works when both need identical deltas; with different start points, use two matched `fromTo`s. Rule-specific corollary of the contract's absolute-values law: a relative `+=` travel on either partner breaks the lockstep under seek.
19
+
20
+ Measure chip and slot rects at build time — a 4 px miss on the drop line reads as a failed drag (montage: authored CSS-matched constants, per the contract). `TIP_OFFSET_X/Y` aligns the cursor's TIP (not its bbox) with the grip point.
21
+
22
+ ## Recipe
23
+
24
+ ```html
25
+ <!-- Ghost = clone of the chip AT the chip's position, in DOM from t=0, opacity: 0.
26
+ Same silhouette as the chip — or hand and payload read as different objects.
27
+ Placed field sits at the slot's final position, opacity: 0, with a .select-box
28
+ and four corner .handle elements inside. -->
29
+ <div class="tray-chip" id="source-chip"><span class="grip-dots">⋮⋮</span> {chipLabel}</div>
30
+ <div class="drag-ghost" id="drag-ghost"><span class="grip-dots">⋮⋮</span> {chipLabel}</div>
31
+ <div class="placed-field" id="placed-field">
32
+ {placedLabel}
33
+ <!-- + selection chrome -->
34
+ </div>
35
+ <div class="cursor" id="cursor"><!-- arrow SVG --></div>
36
+ ```
37
+
38
+ ```js
39
+ const chipRect = document.querySelector("#source-chip").getBoundingClientRect();
40
+ const slotRect = document.querySelector("#placed-field").getBoundingClientRect();
41
+ const TRAVEL_DX = slotRect.left - chipRect.left;
42
+ const TRAVEL_DY = slotRect.top - chipRect.top;
43
+
44
+ // Travel — MATCHED tweens: same position, duration, ease; absolute endpoints.
45
+ tl.fromTo(
46
+ "#drag-ghost",
47
+ { x: 0, y: 0 },
48
+ { x: TRAVEL_DX, y: TRAVEL_DY, duration: TRAVEL_DUR, ease: TRAVEL_EASE, immediateRender: false },
49
+ TRAVEL_AT,
50
+ );
51
+ tl.fromTo(
52
+ "#cursor",
53
+ { x: chipRect.left + TIP_OFFSET_X, y: chipRect.top + TIP_OFFSET_Y },
54
+ {
55
+ x: chipRect.left + TIP_OFFSET_X + TRAVEL_DX,
56
+ y: chipRect.top + TIP_OFFSET_Y + TRAVEL_DY,
57
+ duration: TRAVEL_DUR,
58
+ ease: TRAVEL_EASE,
59
+ immediateRender: false,
60
+ },
61
+ TRAVEL_AT,
62
+ );
63
+
64
+ // Drop is a state commit: ghost off + placed field on at the SAME position.
65
+ tl.set("#drag-ghost", { opacity: 0 }, DROP_AT);
66
+ tl.fromTo(
67
+ "#placed-field",
68
+ { opacity: 0, scale: 0.92 },
69
+ { opacity: 1, scale: 1, duration: SNAP_DUR, ease: "power3.out" },
70
+ DROP_AT,
71
+ );
72
+ tl.fromTo(
73
+ [".select-box", ".handle"],
74
+ { opacity: 0, scale: 0.6 },
75
+ { opacity: 1, scale: 1, duration: 0.18, ease: "power3.out", stagger: 0.02 },
76
+ DROP_AT + SNAP_DUR * 0.4,
77
+ );
78
+ ```
79
+
80
+ ## Variations
81
+
82
+ - **Corner-handle proportional resize** — width/height tweens are forbidden, so the resize renders as uniform `scale` with `transform-origin` at the **opposite (anchor) corner**: the anchor stays put, the dragged corner travels. The corner's position is _linear in scale_ (`corner = anchor + scale × (corner₀ − anchor)`), so a cursor tween to the corner's end position with the **same duration and ease** stays glued to the handle exactly:
83
+
84
+ ```js
85
+ tl.to(
86
+ "#placed-field",
87
+ { scale: RESIZE_SCALE, transformOrigin: "0% 0%", duration: RESIZE_DUR, ease: "power2.inOut" },
88
+ RESIZE_AT,
89
+ );
90
+ tl.to(
91
+ "#cursor",
92
+ { x: CORNER_END_X, y: CORNER_END_Y, duration: RESIZE_DUR, ease: "power2.inOut" },
93
+ RESIZE_AT,
94
+ );
95
+ ```
96
+
97
+ One-axis resizes are `scaleX`/`scaleY` on the same origin logic — stretch-safe boxes only; route to [anchored-layout-expand.md](anchored-layout-expand.md)'s counter-scale when content must stay undistorted.
98
+
99
+ - **Fill-handle auto-fill** — the spreadsheet verb: the cursor drags a cell's fill handle straight down on a `"none"` (linear) ease; each row commits via a snapped `tl.set` (never a fade) keyed to the handle's linear progress, so the fill edge and cursor never separate:
100
+
101
+ ```js
102
+ tl.fromTo(
103
+ "#cursor",
104
+ { y: HANDLE_Y },
105
+ { y: HANDLE_Y + FILL_DIST, duration: FILL_DUR, ease: "none", immediateRender: false },
106
+ FILL_AT,
107
+ );
108
+ gsap.utils.toArray(".fill-cell").forEach((cell, i) => {
109
+ tl.set(cell, { opacity: 1 }, FILL_AT + ((i + 1) / CELL_COUNT) * FILL_DUR);
110
+ });
111
+ ```
112
+
113
+ - **Grab-lift-reorder** — lift = `y: -LIFT_RISE` + `rotation: LIFT_TILT` (sign from index parity) + shadow on; as the carried item crosses the neighbor's midpoint, the **neighbor springs into the vacated slot** (a `fromTo` translate at `TRAVEL_AT + TRAVEL_DUR * 0.5`, `power3.out`); drop = rotation → 0, shadow off, settle. The neighbor's counter-move sells the reorder — without it the list reads as broken.
114
+ - **Component grab between surfaces** — a chip dragged mockup-to-mockup, swapping identity on drop (`tl.set` recolor + label swap at `DROP_AT`, tiny settle pop); the drop chrome is just the identity swap, no handles.
115
+
116
+ ## Values
117
+
118
+ | token | range | notes |
119
+ | --------------------------- | -------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ |
120
+ | approach / press | per cursor-click-ripple | approach 0.4–1.0 s; press-dip halves 0.06–0.12 s; cursor compresses more than the payload |
121
+ | GHOST_OPACITY | 0.5–0.75 | below 0.5 vanishes on busy documents; ~1.0 reads as the original moving — then hide `#source-chip` at the grab |
122
+ | GHOST_LIFT_SCALE / LIFT_DUR | 1.03–1.08 / 0.12–0.2 s | the shadow is the "off the surface" cue; the scale is garnish |
123
+ | TRAVEL_DUR / TRAVEL_EASE | 0.6–1.2 s / `power2.inOut` | a considered drag decelerates into the slot; `power1.inOut` for a calmer carry. `TRAVEL_AT ≥ GRAB_AT + 2×PRESS_DUR + LIFT_DUR` |
124
+ | DROP_AT / SNAP_DUR | `TRAVEL_AT + TRAVEL_DUR` exactly / 0.2–0.3 s | a gap between arrival and snap reads as the drop failing |
125
+ | RESIZE_SCALE / RESIZE_DUR | by story (≈0.4–0.6) / 0.6–1.0 s | `power2.inOut` |
126
+ | LIFT_RISE / LIFT_TILT | 6–12 px / 2–4° | reorder pickup; index-derived tilt sign |
127
+
128
+ ## Critical Constraints
129
+
130
+ - **Lockstep is the law** — matched tweens over straight lines (or one shared tween when deltas are identical); verify at the eased midpoint, not just the endpoints. Absolute endpoints on both partners.
131
+ - **The ghost is pre-rendered** — a DOM clone at the source position from t=0, `opacity: 0`, revealed by `tl.set`; placed field and chrome likewise. Never cloned at runtime, never conditionally rendered.
132
+ - **Grab has weight** — press dip + lift shadow before any travel; a chip departing without a press reads as telekinesis.
133
+ - **Drop is a state commit** — ghost off and placed field on at the same timeline position, `DROP_AT = TRAVEL_AT + TRAVEL_DUR`.
134
+ - **Resizes are uniform `scale`, origin at the anchor corner** — never width/height; one-axis stretch on stretch-safe boxes only.
135
+ - **Linear ease on the fill-handle travel** — the evenly-spaced `tl.set` reveals depend on it; an eased handle bunches them at the ends.
136
+ - **One verb per beat** — drag, then resize, then exit; overlapping a travel with a resize turns choreography into mush.
137
+ - **`pointer-events: none`** on cursor, ghost, and chrome.
138
+
139
+ ## See also
140
+
141
+ `physics-press-reaction` (the grab's press dip) · `cursor-click-ripple` (a plain click before/after) · `spring-pop-entrance` (the placed field's snap-settle) · `waterfall-entry` (kinetic fill cascade) · `multi-phase-camera` (the zoom-breathing carrier shot golden drag demos ride) · `multi-cursor-choreography` (this verb inside an ensemble).