@autoaiai/aicut 0.1.11 → 0.1.13

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 (1063) hide show
  1. package/MANUAL.md +94 -94
  2. package/package.json +1 -1
  3. package/skills/aicut-motion/SKILL.md +69 -3
  4. package/skills/aicut-motion/THIRD_PARTY_NOTICES.md +14 -0
  5. package/skills/aicut-motion/assets/atlas/lib/harness.js +116 -0
  6. package/skills/aicut-motion/assets/atlas/lib/sound.js +274 -0
  7. package/skills/aicut-motion/assets/atlas/styles/001-flat-vector-science/code.js +937 -0
  8. package/skills/aicut-motion/assets/atlas/styles/001-flat-vector-science/poster.jpg +0 -0
  9. package/skills/aicut-motion/assets/atlas/styles/001-flat-vector-science/style.json +13 -0
  10. package/skills/aicut-motion/assets/atlas/styles/002-watercolor-wash/code.js +909 -0
  11. package/skills/aicut-motion/assets/atlas/styles/002-watercolor-wash/poster.jpg +0 -0
  12. package/skills/aicut-motion/assets/atlas/styles/002-watercolor-wash/style.json +13 -0
  13. package/skills/aicut-motion/assets/atlas/styles/003-shadow-puppet-theatre/code.js +881 -0
  14. package/skills/aicut-motion/assets/atlas/styles/003-shadow-puppet-theatre/poster.jpg +0 -0
  15. package/skills/aicut-motion/assets/atlas/styles/003-shadow-puppet-theatre/style.json +13 -0
  16. package/skills/aicut-motion/assets/atlas/styles/004-whiteboard-explainer/code.js +897 -0
  17. package/skills/aicut-motion/assets/atlas/styles/004-whiteboard-explainer/poster.jpg +0 -0
  18. package/skills/aicut-motion/assets/atlas/styles/004-whiteboard-explainer/style.json +13 -0
  19. package/skills/aicut-motion/assets/atlas/styles/005-psychedelic-poster/code.js +814 -0
  20. package/skills/aicut-motion/assets/atlas/styles/005-psychedelic-poster/poster.jpg +0 -0
  21. package/skills/aicut-motion/assets/atlas/styles/005-psychedelic-poster/style.json +13 -0
  22. package/skills/aicut-motion/assets/atlas/styles/006-tech-glow-explainer/code.js +990 -0
  23. package/skills/aicut-motion/assets/atlas/styles/006-tech-glow-explainer/poster.jpg +0 -0
  24. package/skills/aicut-motion/assets/atlas/styles/006-tech-glow-explainer/style.json +13 -0
  25. package/skills/aicut-motion/assets/atlas/styles/007-papercraft-models/code.js +994 -0
  26. package/skills/aicut-motion/assets/atlas/styles/007-papercraft-models/poster.jpg +0 -0
  27. package/skills/aicut-motion/assets/atlas/styles/007-papercraft-models/style.json +13 -0
  28. package/skills/aicut-motion/assets/atlas/styles/008-1940s-film-noir/code.js +792 -0
  29. package/skills/aicut-motion/assets/atlas/styles/008-1940s-film-noir/poster.jpg +0 -0
  30. package/skills/aicut-motion/assets/atlas/styles/008-1940s-film-noir/style.json +13 -0
  31. package/skills/aicut-motion/assets/atlas/styles/009-manim-style-math/code.js +840 -0
  32. package/skills/aicut-motion/assets/atlas/styles/009-manim-style-math/poster.jpg +0 -0
  33. package/skills/aicut-motion/assets/atlas/styles/009-manim-style-math/style.json +13 -0
  34. package/skills/aicut-motion/assets/atlas/styles/010-illuminated-manuscript/code.js +1126 -0
  35. package/skills/aicut-motion/assets/atlas/styles/010-illuminated-manuscript/poster.jpg +0 -0
  36. package/skills/aicut-motion/assets/atlas/styles/010-illuminated-manuscript/style.json +13 -0
  37. package/skills/aicut-motion/assets/atlas/styles/011-editorial-essay-collage/code.js +854 -0
  38. package/skills/aicut-motion/assets/atlas/styles/011-editorial-essay-collage/poster.jpg +0 -0
  39. package/skills/aicut-motion/assets/atlas/styles/011-editorial-essay-collage/style.json +13 -0
  40. package/skills/aicut-motion/assets/atlas/styles/012-bioluminescent-deep-sea/code.js +1124 -0
  41. package/skills/aicut-motion/assets/atlas/styles/012-bioluminescent-deep-sea/poster.jpg +0 -0
  42. package/skills/aicut-motion/assets/atlas/styles/012-bioluminescent-deep-sea/style.json +13 -0
  43. package/skills/aicut-motion/assets/atlas/styles/013-product-launch-reveal/code.js +728 -0
  44. package/skills/aicut-motion/assets/atlas/styles/013-product-launch-reveal/poster.jpg +0 -0
  45. package/skills/aicut-motion/assets/atlas/styles/013-product-launch-reveal/style.json +13 -0
  46. package/skills/aicut-motion/assets/atlas/styles/014-halftone-pop-panel/code.js +664 -0
  47. package/skills/aicut-motion/assets/atlas/styles/014-halftone-pop-panel/poster.jpg +0 -0
  48. package/skills/aicut-motion/assets/atlas/styles/014-halftone-pop-panel/style.json +13 -0
  49. package/skills/aicut-motion/assets/atlas/styles/015-isometric-pastel/code.js +991 -0
  50. package/skills/aicut-motion/assets/atlas/styles/015-isometric-pastel/poster.jpg +0 -0
  51. package/skills/aicut-motion/assets/atlas/styles/015-isometric-pastel/style.json +13 -0
  52. package/skills/aicut-motion/assets/atlas/styles/016-oscilloscope-vector-art/code.js +801 -0
  53. package/skills/aicut-motion/assets/atlas/styles/016-oscilloscope-vector-art/poster.jpg +0 -0
  54. package/skills/aicut-motion/assets/atlas/styles/016-oscilloscope-vector-art/style.json +13 -0
  55. package/skills/aicut-motion/assets/atlas/styles/017-risograph-zine/code.js +692 -0
  56. package/skills/aicut-motion/assets/atlas/styles/017-risograph-zine/poster.jpg +0 -0
  57. package/skills/aicut-motion/assets/atlas/styles/017-risograph-zine/style.json +13 -0
  58. package/skills/aicut-motion/assets/atlas/styles/018-claymation-set/code.js +756 -0
  59. package/skills/aicut-motion/assets/atlas/styles/018-claymation-set/poster.jpg +0 -0
  60. package/skills/aicut-motion/assets/atlas/styles/018-claymation-set/style.json +13 -0
  61. package/skills/aicut-motion/assets/atlas/styles/019-neon-sign-at-night/code.js +922 -0
  62. package/skills/aicut-motion/assets/atlas/styles/019-neon-sign-at-night/poster.jpg +0 -0
  63. package/skills/aicut-motion/assets/atlas/styles/019-neon-sign-at-night/style.json +13 -0
  64. package/skills/aicut-motion/assets/atlas/styles/020-kawaii-anime/code.js +852 -0
  65. package/skills/aicut-motion/assets/atlas/styles/020-kawaii-anime/poster.jpg +0 -0
  66. package/skills/aicut-motion/assets/atlas/styles/020-kawaii-anime/style.json +13 -0
  67. package/skills/aicut-motion/assets/atlas/styles/021-ukiyo-e-woodblock/code.js +724 -0
  68. package/skills/aicut-motion/assets/atlas/styles/021-ukiyo-e-woodblock/poster.jpg +0 -0
  69. package/skills/aicut-motion/assets/atlas/styles/021-ukiyo-e-woodblock/style.json +13 -0
  70. package/skills/aicut-motion/assets/atlas/styles/022-16-bit-pixel-odyssey/code.js +793 -0
  71. package/skills/aicut-motion/assets/atlas/styles/022-16-bit-pixel-odyssey/poster.jpg +0 -0
  72. package/skills/aicut-motion/assets/atlas/styles/022-16-bit-pixel-odyssey/style.json +13 -0
  73. package/skills/aicut-motion/assets/atlas/styles/023-chalkboard-lesson/code.js +846 -0
  74. package/skills/aicut-motion/assets/atlas/styles/023-chalkboard-lesson/poster.jpg +0 -0
  75. package/skills/aicut-motion/assets/atlas/styles/023-chalkboard-lesson/style.json +13 -0
  76. package/skills/aicut-motion/assets/atlas/styles/024-cut-paper-diorama/code.js +1008 -0
  77. package/skills/aicut-motion/assets/atlas/styles/024-cut-paper-diorama/poster.jpg +0 -0
  78. package/skills/aicut-motion/assets/atlas/styles/024-cut-paper-diorama/style.json +13 -0
  79. package/skills/aicut-motion/assets/atlas/styles/025-cathedral-glass/code.js +680 -0
  80. package/skills/aicut-motion/assets/atlas/styles/025-cathedral-glass/poster.jpg +0 -0
  81. package/skills/aicut-motion/assets/atlas/styles/025-cathedral-glass/style.json +13 -0
  82. package/skills/aicut-motion/assets/atlas/styles/026-editorial-chart/code.js +633 -0
  83. package/skills/aicut-motion/assets/atlas/styles/026-editorial-chart/poster.jpg +0 -0
  84. package/skills/aicut-motion/assets/atlas/styles/026-editorial-chart/style.json +13 -0
  85. package/skills/aicut-motion/assets/atlas/styles/027-synthwave-outrun/code.js +757 -0
  86. package/skills/aicut-motion/assets/atlas/styles/027-synthwave-outrun/poster.jpg +0 -0
  87. package/skills/aicut-motion/assets/atlas/styles/027-synthwave-outrun/style.json +13 -0
  88. package/skills/aicut-motion/assets/atlas/styles/028-origami-studio/code.js +828 -0
  89. package/skills/aicut-motion/assets/atlas/styles/028-origami-studio/poster.jpg +0 -0
  90. package/skills/aicut-motion/assets/atlas/styles/028-origami-studio/style.json +13 -0
  91. package/skills/aicut-motion/assets/atlas/styles/029-linocut-relief-print/code.js +697 -0
  92. package/skills/aicut-motion/assets/atlas/styles/029-linocut-relief-print/poster.jpg +0 -0
  93. package/skills/aicut-motion/assets/atlas/styles/029-linocut-relief-print/style.json +13 -0
  94. package/skills/aicut-motion/assets/atlas/styles/030-holographic-foil-card/code.js +687 -0
  95. package/skills/aicut-motion/assets/atlas/styles/030-holographic-foil-card/poster.jpg +0 -0
  96. package/skills/aicut-motion/assets/atlas/styles/030-holographic-foil-card/style.json +13 -0
  97. package/skills/aicut-motion/assets/atlas/styles/031-voxel-diorama/code.js +727 -0
  98. package/skills/aicut-motion/assets/atlas/styles/031-voxel-diorama/poster.jpg +0 -0
  99. package/skills/aicut-motion/assets/atlas/styles/031-voxel-diorama/style.json +13 -0
  100. package/skills/aicut-motion/assets/atlas/styles/032-sumi-e-ink-wash/code.js +903 -0
  101. package/skills/aicut-motion/assets/atlas/styles/032-sumi-e-ink-wash/poster.jpg +0 -0
  102. package/skills/aicut-motion/assets/atlas/styles/032-sumi-e-ink-wash/style.json +13 -0
  103. package/skills/aicut-motion/assets/atlas/styles/033-etch-a-sketch-toy/code.js +662 -0
  104. package/skills/aicut-motion/assets/atlas/styles/033-etch-a-sketch-toy/poster.jpg +0 -0
  105. package/skills/aicut-motion/assets/atlas/styles/033-etch-a-sketch-toy/style.json +13 -0
  106. package/skills/aicut-motion/assets/atlas/styles/034-cosmic-star-chart/code.js +951 -0
  107. package/skills/aicut-motion/assets/atlas/styles/034-cosmic-star-chart/poster.jpg +0 -0
  108. package/skills/aicut-motion/assets/atlas/styles/034-cosmic-star-chart/style.json +13 -0
  109. package/skills/aicut-motion/assets/atlas/styles/035-punk-zine-collage/code.js +759 -0
  110. package/skills/aicut-motion/assets/atlas/styles/035-punk-zine-collage/poster.jpg +0 -0
  111. package/skills/aicut-motion/assets/atlas/styles/035-punk-zine-collage/style.json +13 -0
  112. package/skills/aicut-motion/assets/atlas/styles/036-thermal-camera/code.js +738 -0
  113. package/skills/aicut-motion/assets/atlas/styles/036-thermal-camera/poster.jpg +0 -0
  114. package/skills/aicut-motion/assets/atlas/styles/036-thermal-camera/style.json +13 -0
  115. package/skills/aicut-motion/assets/atlas/styles/037-engineering-blueprint/code.js +793 -0
  116. package/skills/aicut-motion/assets/atlas/styles/037-engineering-blueprint/poster.jpg +0 -0
  117. package/skills/aicut-motion/assets/atlas/styles/037-engineering-blueprint/style.json +13 -0
  118. package/skills/aicut-motion/assets/atlas/styles/038-impasto-night/code.js +673 -0
  119. package/skills/aicut-motion/assets/atlas/styles/038-impasto-night/poster.jpg +0 -0
  120. package/skills/aicut-motion/assets/atlas/styles/038-impasto-night/style.json +13 -0
  121. package/skills/aicut-motion/assets/atlas/styles/039-win95-desktop/code.js +907 -0
  122. package/skills/aicut-motion/assets/atlas/styles/039-win95-desktop/poster.jpg +0 -0
  123. package/skills/aicut-motion/assets/atlas/styles/039-win95-desktop/style.json +13 -0
  124. package/skills/aicut-motion/assets/atlas/styles/040-low-poly-faceted/code.js +833 -0
  125. package/skills/aicut-motion/assets/atlas/styles/040-low-poly-faceted/poster.jpg +0 -0
  126. package/skills/aicut-motion/assets/atlas/styles/040-low-poly-faceted/style.json +13 -0
  127. package/skills/aicut-motion/assets/atlas/styles/041-manga-page/code.js +845 -0
  128. package/skills/aicut-motion/assets/atlas/styles/041-manga-page/poster.jpg +0 -0
  129. package/skills/aicut-motion/assets/atlas/styles/041-manga-page/style.json +13 -0
  130. package/skills/aicut-motion/assets/atlas/styles/042-wood-type-letterpress/code.js +496 -0
  131. package/skills/aicut-motion/assets/atlas/styles/042-wood-type-letterpress/poster.jpg +0 -0
  132. package/skills/aicut-motion/assets/atlas/styles/042-wood-type-letterpress/style.json +13 -0
  133. package/skills/aicut-motion/assets/atlas/styles/043-light-painting/code.js +635 -0
  134. package/skills/aicut-motion/assets/atlas/styles/043-light-painting/poster.jpg +0 -0
  135. package/skills/aicut-motion/assets/atlas/styles/043-light-painting/style.json +13 -0
  136. package/skills/aicut-motion/assets/atlas/styles/044-felt-patchwork/code.js +799 -0
  137. package/skills/aicut-motion/assets/atlas/styles/044-felt-patchwork/poster.jpg +0 -0
  138. package/skills/aicut-motion/assets/atlas/styles/044-felt-patchwork/style.json +13 -0
  139. package/skills/aicut-motion/assets/atlas/styles/045-phosphor-terminal/code.js +547 -0
  140. package/skills/aicut-motion/assets/atlas/styles/045-phosphor-terminal/poster.jpg +0 -0
  141. package/skills/aicut-motion/assets/atlas/styles/045-phosphor-terminal/style.json +13 -0
  142. package/skills/aicut-motion/assets/atlas/styles/046-glassmorphism-ui/code.js +592 -0
  143. package/skills/aicut-motion/assets/atlas/styles/046-glassmorphism-ui/poster.jpg +0 -0
  144. package/skills/aicut-motion/assets/atlas/styles/046-glassmorphism-ui/style.json +13 -0
  145. package/skills/aicut-motion/assets/atlas/styles/047-tarot-card/code.js +768 -0
  146. package/skills/aicut-motion/assets/atlas/styles/047-tarot-card/poster.jpg +0 -0
  147. package/skills/aicut-motion/assets/atlas/styles/047-tarot-card/style.json +13 -0
  148. package/skills/aicut-motion/assets/atlas/styles/048-transit-map/code.js +666 -0
  149. package/skills/aicut-motion/assets/atlas/styles/048-transit-map/poster.jpg +0 -0
  150. package/skills/aicut-motion/assets/atlas/styles/048-transit-map/style.json +13 -0
  151. package/skills/aicut-motion/assets/atlas/styles/049-gouache-travel-poster/code.js +559 -0
  152. package/skills/aicut-motion/assets/atlas/styles/049-gouache-travel-poster/poster.jpg +0 -0
  153. package/skills/aicut-motion/assets/atlas/styles/049-gouache-travel-poster/style.json +13 -0
  154. package/skills/aicut-motion/assets/atlas/styles/050-napkin-sketch/code.js +943 -0
  155. package/skills/aicut-motion/assets/atlas/styles/050-napkin-sketch/poster.jpg +0 -0
  156. package/skills/aicut-motion/assets/atlas/styles/050-napkin-sketch/style.json +13 -0
  157. package/skills/aicut-motion/assets/atlas/styles/051-art-deco-foil/code.js +606 -0
  158. package/skills/aicut-motion/assets/atlas/styles/051-art-deco-foil/poster.jpg +0 -0
  159. package/skills/aicut-motion/assets/atlas/styles/051-art-deco-foil/style.json +13 -0
  160. package/skills/aicut-motion/assets/atlas/styles/052-radiograph-on-lightbox/code.js +730 -0
  161. package/skills/aicut-motion/assets/atlas/styles/052-radiograph-on-lightbox/poster.jpg +0 -0
  162. package/skills/aicut-motion/assets/atlas/styles/052-radiograph-on-lightbox/style.json +13 -0
  163. package/skills/aicut-motion/assets/atlas/styles/053-vaporwave/code.js +782 -0
  164. package/skills/aicut-motion/assets/atlas/styles/053-vaporwave/poster.jpg +0 -0
  165. package/skills/aicut-motion/assets/atlas/styles/053-vaporwave/style.json +13 -0
  166. package/skills/aicut-motion/assets/atlas/styles/054-ebru-paper-marbling/code.js +504 -0
  167. package/skills/aicut-motion/assets/atlas/styles/054-ebru-paper-marbling/poster.jpg +0 -0
  168. package/skills/aicut-motion/assets/atlas/styles/054-ebru-paper-marbling/style.json +13 -0
  169. package/skills/aicut-motion/assets/atlas/styles/055-isotype-pictograms/code.js +517 -0
  170. package/skills/aicut-motion/assets/atlas/styles/055-isotype-pictograms/poster.jpg +0 -0
  171. package/skills/aicut-motion/assets/atlas/styles/055-isotype-pictograms/style.json +13 -0
  172. package/skills/aicut-motion/assets/atlas/styles/056-soft-3d-clay/code.js +713 -0
  173. package/skills/aicut-motion/assets/atlas/styles/056-soft-3d-clay/poster.jpg +0 -0
  174. package/skills/aicut-motion/assets/atlas/styles/056-soft-3d-clay/style.json +13 -0
  175. package/skills/aicut-motion/assets/atlas/styles/057-cross-stitch-sampler/code.js +717 -0
  176. package/skills/aicut-motion/assets/atlas/styles/057-cross-stitch-sampler/poster.jpg +0 -0
  177. package/skills/aicut-motion/assets/atlas/styles/057-cross-stitch-sampler/style.json +13 -0
  178. package/skills/aicut-motion/assets/atlas/styles/058-constructivist-propaganda/code.js +540 -0
  179. package/skills/aicut-motion/assets/atlas/styles/058-constructivist-propaganda/poster.jpg +0 -0
  180. package/skills/aicut-motion/assets/atlas/styles/058-constructivist-propaganda/style.json +13 -0
  181. package/skills/aicut-motion/assets/atlas/styles/059-pocket-monochrome/code.js +524 -0
  182. package/skills/aicut-motion/assets/atlas/styles/059-pocket-monochrome/poster.jpg +0 -0
  183. package/skills/aicut-motion/assets/atlas/styles/059-pocket-monochrome/style.json +13 -0
  184. package/skills/aicut-motion/assets/atlas/styles/060-botanical-plate/code.js +934 -0
  185. package/skills/aicut-motion/assets/atlas/styles/060-botanical-plate/poster.jpg +0 -0
  186. package/skills/aicut-motion/assets/atlas/styles/060-botanical-plate/style.json +13 -0
  187. package/skills/aicut-motion/assets/atlas/styles/061-kinetic-type/code.js +690 -0
  188. package/skills/aicut-motion/assets/atlas/styles/061-kinetic-type/poster.jpg +0 -0
  189. package/skills/aicut-motion/assets/atlas/styles/061-kinetic-type/style.json +13 -0
  190. package/skills/aicut-motion/assets/atlas/styles/062-byzantine-mosaic/code.js +612 -0
  191. package/skills/aicut-motion/assets/atlas/styles/062-byzantine-mosaic/poster.jpg +0 -0
  192. package/skills/aicut-motion/assets/atlas/styles/062-byzantine-mosaic/style.json +13 -0
  193. package/skills/aicut-motion/assets/atlas/styles/063-y2k-liquid-chrome/code.js +666 -0
  194. package/skills/aicut-motion/assets/atlas/styles/063-y2k-liquid-chrome/poster.jpg +0 -0
  195. package/skills/aicut-motion/assets/atlas/styles/063-y2k-liquid-chrome/style.json +13 -0
  196. package/skills/aicut-motion/assets/atlas/styles/064-sticky-note-wall/code.js +651 -0
  197. package/skills/aicut-motion/assets/atlas/styles/064-sticky-note-wall/poster.jpg +0 -0
  198. package/skills/aicut-motion/assets/atlas/styles/064-sticky-note-wall/style.json +13 -0
  199. package/skills/aicut-motion/assets/atlas/styles/065-vintage-newsprint/code.js +656 -0
  200. package/skills/aicut-motion/assets/atlas/styles/065-vintage-newsprint/poster.jpg +0 -0
  201. package/skills/aicut-motion/assets/atlas/styles/065-vintage-newsprint/style.json +13 -0
  202. package/skills/aicut-motion/assets/atlas/styles/066-hidden-line-wireframe/code.js +672 -0
  203. package/skills/aicut-motion/assets/atlas/styles/066-hidden-line-wireframe/poster.jpg +0 -0
  204. package/skills/aicut-motion/assets/atlas/styles/066-hidden-line-wireframe/style.json +13 -0
  205. package/skills/aicut-motion/assets/atlas/styles/067-memphis-group/code.js +548 -0
  206. package/skills/aicut-motion/assets/atlas/styles/067-memphis-group/poster.jpg +0 -0
  207. package/skills/aicut-motion/assets/atlas/styles/067-memphis-group/style.json +13 -0
  208. package/skills/aicut-motion/assets/atlas/styles/068-ballpoint-notebook/code.js +989 -0
  209. package/skills/aicut-motion/assets/atlas/styles/068-ballpoint-notebook/poster.jpg +0 -0
  210. package/skills/aicut-motion/assets/atlas/styles/068-ballpoint-notebook/style.json +13 -0
  211. package/skills/aicut-motion/assets/atlas/styles/069-op-art-sphere/code.js +440 -0
  212. package/skills/aicut-motion/assets/atlas/styles/069-op-art-sphere/poster.jpg +0 -0
  213. package/skills/aicut-motion/assets/atlas/styles/069-op-art-sphere/style.json +13 -0
  214. package/skills/aicut-motion/assets/atlas/styles/070-topographic-survey/code.js +895 -0
  215. package/skills/aicut-motion/assets/atlas/styles/070-topographic-survey/poster.jpg +0 -0
  216. package/skills/aicut-motion/assets/atlas/styles/070-topographic-survey/style.json +13 -0
  217. package/skills/aicut-motion/assets/atlas/styles/071-pointillist-afternoon/code.js +563 -0
  218. package/skills/aicut-motion/assets/atlas/styles/071-pointillist-afternoon/poster.jpg +0 -0
  219. package/skills/aicut-motion/assets/atlas/styles/071-pointillist-afternoon/style.json +13 -0
  220. package/skills/aicut-motion/assets/atlas/styles/072-vector-arcade-1980/code.js +627 -0
  221. package/skills/aicut-motion/assets/atlas/styles/072-vector-arcade-1980/poster.jpg +0 -0
  222. package/skills/aicut-motion/assets/atlas/styles/072-vector-arcade-1980/style.json +13 -0
  223. package/skills/aicut-motion/assets/atlas/styles/073-patent-drawing/code.js +1096 -0
  224. package/skills/aicut-motion/assets/atlas/styles/073-patent-drawing/poster.jpg +0 -0
  225. package/skills/aicut-motion/assets/atlas/styles/073-patent-drawing/style.json +13 -0
  226. package/skills/aicut-motion/assets/atlas/styles/074-bauhaus-poster/code.js +595 -0
  227. package/skills/aicut-motion/assets/atlas/styles/074-bauhaus-poster/poster.jpg +0 -0
  228. package/skills/aicut-motion/assets/atlas/styles/074-bauhaus-poster/style.json +13 -0
  229. package/skills/aicut-motion/assets/atlas/styles/075-bitmap-paint-doodle/code.js +665 -0
  230. package/skills/aicut-motion/assets/atlas/styles/075-bitmap-paint-doodle/poster.jpg +0 -0
  231. package/skills/aicut-motion/assets/atlas/styles/075-bitmap-paint-doodle/style.json +13 -0
  232. package/skills/aicut-motion/assets/atlas/styles/076-nail-thread-string-art/code.js +645 -0
  233. package/skills/aicut-motion/assets/atlas/styles/076-nail-thread-string-art/poster.jpg +0 -0
  234. package/skills/aicut-motion/assets/atlas/styles/076-nail-thread-string-art/style.json +13 -0
  235. package/skills/aicut-motion/assets/atlas/styles/077-ridgeline/code.js +436 -0
  236. package/skills/aicut-motion/assets/atlas/styles/077-ridgeline/poster.jpg +0 -0
  237. package/skills/aicut-motion/assets/atlas/styles/077-ridgeline/style.json +13 -0
  238. package/skills/aicut-motion/assets/atlas/styles/078-sketchbook-graphite/code.js +1237 -0
  239. package/skills/aicut-motion/assets/atlas/styles/078-sketchbook-graphite/poster.jpg +0 -0
  240. package/skills/aicut-motion/assets/atlas/styles/078-sketchbook-graphite/style.json +13 -0
  241. package/skills/aicut-motion/assets/atlas/styles/079-teletext-page/code.js +622 -0
  242. package/skills/aicut-motion/assets/atlas/styles/079-teletext-page/poster.jpg +0 -0
  243. package/skills/aicut-motion/assets/atlas/styles/079-teletext-page/style.json +13 -0
  244. package/skills/aicut-motion/assets/atlas/styles/080-silkscreen-grid/code.js +524 -0
  245. package/skills/aicut-motion/assets/atlas/styles/080-silkscreen-grid/poster.jpg +0 -0
  246. package/skills/aicut-motion/assets/atlas/styles/080-silkscreen-grid/style.json +13 -0
  247. package/skills/aicut-motion/assets/atlas/styles/081-guilloch-security-print/code.js +689 -0
  248. package/skills/aicut-motion/assets/atlas/styles/081-guilloch-security-print/poster.jpg +0 -0
  249. package/skills/aicut-motion/assets/atlas/styles/081-guilloch-security-print/style.json +13 -0
  250. package/skills/aicut-motion/assets/atlas/styles/082-ascii-demoscene/code.js +574 -0
  251. package/skills/aicut-motion/assets/atlas/styles/082-ascii-demoscene/poster.jpg +0 -0
  252. package/skills/aicut-motion/assets/atlas/styles/082-ascii-demoscene/style.json +13 -0
  253. package/skills/aicut-motion/assets/atlas/styles/083-international-typographic-style/code.js +469 -0
  254. package/skills/aicut-motion/assets/atlas/styles/083-international-typographic-style/poster.jpg +0 -0
  255. package/skills/aicut-motion/assets/atlas/styles/083-international-typographic-style/style.json +13 -0
  256. package/skills/aicut-motion/assets/atlas/styles/084-flow-field/code.js +531 -0
  257. package/skills/aicut-motion/assets/atlas/styles/084-flow-field/poster.jpg +0 -0
  258. package/skills/aicut-motion/assets/atlas/styles/084-flow-field/style.json +13 -0
  259. package/skills/aicut-motion/assets/atlas/styles/085-macpaint-1984/code.js +675 -0
  260. package/skills/aicut-motion/assets/atlas/styles/085-macpaint-1984/poster.jpg +0 -0
  261. package/skills/aicut-motion/assets/atlas/styles/085-macpaint-1984/style.json +13 -0
  262. package/skills/aicut-motion/assets/atlas/styles/086-multi-scale-truchet/code.js +609 -0
  263. package/skills/aicut-motion/assets/atlas/styles/086-multi-scale-truchet/poster.jpg +0 -0
  264. package/skills/aicut-motion/assets/atlas/styles/086-multi-scale-truchet/style.json +13 -0
  265. package/skills/aicut-motion/references/motion-delivery.md +55 -0
  266. package/skills/aicut-motion/references/style-index.json +690 -0
  267. package/skills/aicut-motion/references/style-research.md +73 -0
  268. package/skills/aicut-motion/references/style-selection.md +71 -0
  269. package/skills/aicut-motion/scripts/atlas-viewer.html +195 -0
  270. package/skills/aicut-motion/scripts/atlas.mjs +109 -0
  271. package/studio/server/fetch-github.mjs +14 -3
  272. package/studio/server/server.mjs +40 -3
  273. package/studio/server/skill-summaries.mjs +60 -0
  274. package/studio/server/skills.mjs +121 -7
  275. package/studio/server/styles-store.mjs +235 -0
  276. package/studio/server/template-posters.mjs +2 -2
  277. package/studio/server/templates-page.mjs +93 -93
  278. package/studio/server/templates.mjs +32 -7
  279. package/studio/ui/dist/assets/ExportCenter-DasulhAv.js +1 -0
  280. package/studio/ui/dist/assets/SettingsModal-BZw0Hz2_.js +2 -0
  281. package/studio/ui/dist/assets/es-C8XPZARI.js +1 -0
  282. package/studio/ui/dist/assets/index-BjJVmBzB.js +1623 -0
  283. package/studio/ui/dist/assets/index-C3BfKZFO.css +1 -0
  284. package/studio/ui/dist/assets/ja-BeNkdaEj.js +1 -0
  285. package/studio/ui/dist/assets/ko-DcTVhdzK.js +1 -0
  286. package/studio/ui/dist/assets/zh-CN-Cg51ctbL.js +1 -0
  287. package/studio/ui/dist/index.html +2 -2
  288. package/skills/30x-web-to-video/SKILL.md +0 -421
  289. package/skills/30x-web-to-video/examples/INDEX.md +0 -26
  290. package/skills/30x-web-to-video/references/animations.md +0 -539
  291. package/skills/30x-web-to-video/references/audio.md +0 -256
  292. package/skills/30x-web-to-video/references/components.md +0 -340
  293. package/skills/30x-web-to-video/references/lottie.md +0 -174
  294. package/skills/30x-web-to-video/references/visual-effects.md +0 -157
  295. package/skills/30x-web-to-video/remotion-best-practices/rules/audio.md +0 -169
  296. package/skills/30x-web-to-video/remotion-best-practices/rules/calculate-metadata.md +0 -134
  297. package/skills/30x-web-to-video/remotion-best-practices/rules/charts.md +0 -120
  298. package/skills/30x-web-to-video/remotion-best-practices/rules/compositions.md +0 -154
  299. package/skills/30x-web-to-video/remotion-best-practices/rules/ffmpeg.md +0 -38
  300. package/skills/30x-web-to-video/remotion-best-practices/rules/fonts.md +0 -152
  301. package/skills/3d-asset-generation/SKILL.md +0 -142
  302. package/skills/action-fight-prompt/SKILL.md +0 -136
  303. package/skills/action-fight-prompt/references/camera-and-impact.md +0 -64
  304. package/skills/action-fight-prompt/references/example-15s-duel.md +0 -59
  305. package/skills/action-fight-prompt/references/scene-patterns.md +0 -80
  306. package/skills/ad-creative-video/SKILL.md +0 -205
  307. package/skills/ad-creative-video/references/batch-ad-pipeline.md +0 -289
  308. package/skills/ad-creative-video/references/platform-specs.md +0 -72
  309. package/skills/after-effects/SKILL.md +0 -123
  310. package/skills/after-effects/references/export-recipes.md +0 -168
  311. package/skills/after-effects/references/expression-library.md +0 -184
  312. package/skills/after-effects/references/expressions.md +0 -134
  313. package/skills/after-effects/references/performance-triage.md +0 -138
  314. package/skills/after-effects/references/project-hygiene.md +0 -188
  315. package/skills/ai-media-quality-review/SKILL.md +0 -72
  316. package/skills/ai-product-video/SKILL.md +0 -296
  317. package/skills/ai-product-video/references/aesthetic-rules.md +0 -177
  318. package/skills/ai-product-video/references/final-review.md +0 -110
  319. package/skills/ai-product-video/references/guided-free-creation.md +0 -194
  320. package/skills/ai-product-video/references/music-beat-sync.md +0 -219
  321. package/skills/ai-product-video/references/pipeline.md +0 -392
  322. package/skills/ai-product-video/references/sequences/promo-energy-arc.md +0 -50
  323. package/skills/ai-product-video/references/shots/ATTRIBUTION.md +0 -65
  324. package/skills/ai-product-video/references/shots/camera/basic-3d-scene.md +0 -37
  325. package/skills/ai-product-video/references/shots/camera/crash-zoom-punch.md +0 -39
  326. package/skills/ai-product-video/references/shots/camera/cursor-flyover.md +0 -38
  327. package/skills/ai-product-video/references/shots/camera/depth-layer-moves.md +0 -40
  328. package/skills/ai-product-video/references/shots/camera/graze-face-tour.md +0 -57
  329. package/skills/anidoodle/SKILL.md +0 -185
  330. package/skills/anidoodle/references/anatomy.md +0 -91
  331. package/skills/anidoodle/references/backends-and-adapters.md +0 -82
  332. package/skills/anidoodle/references/camera.md +0 -148
  333. package/skills/anidoodle/references/craft-bar.md +0 -72
  334. package/skills/anidoodle/references/determinism-and-contract.md +0 -46
  335. package/skills/anidoodle/references/formats.md +0 -121
  336. package/skills/anidoodle/references/motion-grammar.md +0 -234
  337. package/skills/anidoodle/references/music/compose.md +0 -388
  338. package/skills/anidoodle/references/music/sound-design.md +0 -245
  339. package/skills/anidoodle/references/music/sounds-licenses.md +0 -69
  340. package/skills/anidoodle/references/music/styles/lofi-electronic.md +0 -112
  341. package/skills/anidoodle/references/music/styles/music-box.md +0 -57
  342. package/skills/animated-component-libraries/SKILL.md +0 -820
  343. package/skills/animated-component-libraries/references/customization_guide.md +0 -699
  344. package/skills/animated-component-libraries/references/magic_ui_components.md +0 -422
  345. package/skills/animated-component-libraries/references/react_bits_components.md +0 -587
  346. package/skills/animated-infographic/SKILL.md +0 -211
  347. package/skills/animated-infographic/references/sequenced-infographic.md +0 -286
  348. package/skills/appshot-core/SKILL.md +0 -872
  349. package/skills/article-highlights/SKILL.md +0 -151
  350. package/skills/avatar-mix/SKILL.md +0 -301
  351. package/skills/bang-motion/SKILL.md +0 -583
  352. package/skills/bang-motion/references/ae-bridge-higgsfield.md +0 -160
  353. package/skills/bang-motion/references/anti-ppt.md +0 -110
  354. package/skills/bang-motion/references/architecture.md +0 -188
  355. package/skills/bang-motion/references/explainer.md +0 -579
  356. package/skills/bang-motion/references/kartun-panggung.md +0 -221
  357. package/skills/bang-motion/references/opener-konsep.md +0 -817
  358. package/skills/bang-motion/references/roadmap.md +0 -85
  359. package/skills/bang-motion/references/techniques.md +0 -690
  360. package/skills/beat-sync-edit/SKILL.md +0 -148
  361. package/skills/book-video-factory/SKILL.md +0 -139
  362. package/skills/book-video-factory/references/first-run.md +0 -50
  363. package/skills/book-video-factory/references/paper-collage-explainer.md +0 -127
  364. package/skills/book-video-factory/references/quality-gates.md +0 -87
  365. package/skills/book-video-production/SKILL.md +0 -211
  366. package/skills/brag/SKILL.md +0 -195
  367. package/skills/brag/references/audio.md +0 -312
  368. package/skills/brag/references/step-1-inspect.md +0 -125
  369. package/skills/brag/references/step-2-plan.md +0 -234
  370. package/skills/brag/references/step-3-compose.md +0 -199
  371. package/skills/brag/references/step-4-deliver.md +0 -141
  372. package/skills/brag/references/tones.md +0 -231
  373. package/skills/brand-setup/SKILL.md +0 -228
  374. package/skills/brewreel/SKILL.md +0 -491
  375. package/skills/brewreel/docs/broll.en.md +0 -252
  376. package/skills/brewreel/docs/broll.md +0 -252
  377. package/skills/brewreel/docs/custom-shot.en.md +0 -66
  378. package/skills/brewreel/docs/custom-shot.md +0 -103
  379. package/skills/brewreel/docs/faq.en.md +0 -90
  380. package/skills/brewreel/docs/faq.md +0 -90
  381. package/skills/brewreel/docs/features.en.md +0 -157
  382. package/skills/brewreel/docs/features.md +0 -157
  383. package/skills/brewreel/docs/gallery.en.md +0 -44
  384. package/skills/brewreel/docs/gallery.md +0 -44
  385. package/skills/brewreel/docs/how-it-works.en.md +0 -64
  386. package/skills/brewreel/docs/how-it-works.md +0 -64
  387. package/skills/caption-animation/SKILL.md +0 -216
  388. package/skills/caption-animation/references/word-timed-captions.md +0 -254
  389. package/skills/cartcut-editing/SKILL.md +0 -615
  390. package/skills/cartcut-editing/references/html-typography.md +0 -277
  391. package/skills/cassette-video-edit/SKILL.md +0 -129
  392. package/skills/ccvideo/SKILL.md +0 -264
  393. package/skills/chekhov-dramaturgy/SKILL.md +0 -367
  394. package/skills/chekhov-dramaturgy/reference.md +0 -375
  395. package/skills/chengfeng-check-updates/SKILL.md +0 -283
  396. package/skills/cinematic-product-promo-skill/SKILL.md +0 -295
  397. package/skills/cinematic-product-promo-skill/references/aesthetic-rules.md +0 -187
  398. package/skills/cinematic-product-promo-skill/references/final-review.md +0 -116
  399. package/skills/cinematic-product-promo-skill/references/guided-free-creation.md +0 -199
  400. package/skills/cinematic-product-promo-skill/references/jianying-export.md +0 -183
  401. package/skills/cinematic-product-promo-skill/references/music-beat-sync.md +0 -257
  402. package/skills/cinematic-product-promo-skill/references/pipeline.md +0 -393
  403. package/skills/cinematic-product-promo-skill/references/sequences/promo-energy-arc.md +0 -50
  404. package/skills/cinematic-product-promo-skill/references/shots/ATTRIBUTION.md +0 -65
  405. package/skills/cinematic-product-promo-skill/references/shots/camera/basic-3d-scene.md +0 -37
  406. package/skills/cinematic-product-promo-skill/references/shots/camera/crash-zoom-punch.md +0 -39
  407. package/skills/cinematic-product-promo-skill/references/shots/camera/cursor-flyover.md +0 -38
  408. package/skills/cinematic-product-promo-skill/references/shots/camera/depth-layer-moves.md +0 -40
  409. package/skills/claude-gif/SKILL.md +0 -211
  410. package/skills/claude-gif/references/gif-optimization.md +0 -209
  411. package/skills/claude-gif/references/perfect-loops.md +0 -295
  412. package/skills/claude-gif/references/platform-specs.md +0 -138
  413. package/skills/claude-gif/references/prompt-engineering.md +0 -211
  414. package/skills/claude-gif/references/remotion-gif.md +0 -560
  415. package/skills/codex-video-pipeline/SKILL.md +0 -213
  416. package/skills/codex-video-pipeline/examples/ai-meeting-notes/INPUT.md +0 -10
  417. package/skills/codex-video-pipeline/examples/ai-meeting-notes/expected/action-list.md +0 -22
  418. package/skills/codex-video-pipeline/references/captions.md +0 -39
  419. package/skills/codex-video-pipeline/references/cover-system.md +0 -72
  420. package/skills/codex-video-pipeline/references/cross-platform.md +0 -77
  421. package/skills/codex-video-pipeline/references/example-run.md +0 -54
  422. package/skills/codex-video-pipeline/references/first-run.md +0 -130
  423. package/skills/codex-video-pipeline/references/project-contract.md +0 -54
  424. package/skills/codex-video-pipeline/references/quality-gates.md +0 -44
  425. package/skills/codex-video-pipeline/references/research-and-script.md +0 -50
  426. package/skills/collage-broll-explainers/SKILL.md +0 -429
  427. package/skills/create-onboarding-video/SKILL.md +0 -233
  428. package/skills/cs-shotcraft-skill/SKILL.md +0 -218
  429. package/skills/cs-shotcraft-skill/references/aesthetic-rules.md +0 -207
  430. package/skills/cs-shotcraft-skill/references/camera-table.md +0 -88
  431. package/skills/cs-shotcraft-skill/references/engineering.md +0 -132
  432. package/skills/cs-shotcraft-skill/references/final-review.md +0 -118
  433. package/skills/cs-shotcraft-skill/references/guided-free-creation.md +0 -199
  434. package/skills/cs-shotcraft-skill/references/jianying-export.md +0 -183
  435. package/skills/cs-shotcraft-skill/references/music-beat-sync.md +0 -257
  436. package/skills/cs-shotcraft-skill/references/pipeline.md +0 -408
  437. package/skills/cs-shotcraft-skill/references/product-machine.md +0 -56
  438. package/skills/cs-shotcraft-skill/references/sequences/promo-energy-arc.md +0 -50
  439. package/skills/cs-shotcraft-skill/references/shots/ATTRIBUTION.md +0 -65
  440. package/skills/cs-shotcraft-skill/references/shots/camera/basic-3d-scene.md +0 -37
  441. package/skills/cut-video/SKILL.md +0 -387
  442. package/skills/cyxj-hyperframes-overlay/SKILL.md +0 -75
  443. package/skills/cyxj-remotion-evolve/SKILL.md +0 -123
  444. package/skills/cyxj-remotion-evolve-vibe-motion/SKILL.md +0 -123
  445. package/skills/demo-video-creation-skill/SKILL.md +0 -152
  446. package/skills/demo-video-creation-skill/references/capture-workflow.md +0 -74
  447. package/skills/demo-video-creation-skill/references/qc-checklist.md +0 -61
  448. package/skills/demo-video-creation-skill/references/remotion-ffmpeg.md +0 -94
  449. package/skills/demo-video-creation-skill/references/storytelling.md +0 -86
  450. package/skills/demo-video-creation-skill/references/visual-system.md +0 -83
  451. package/skills/demoday/SKILL.md +0 -148
  452. package/skills/develop-premiere-pro-mcp/SKILL.md +0 -131
  453. package/skills/diagram-animation/SKILL.md +0 -200
  454. package/skills/diagram-animation/references/diagram-and-chart-recipes.md +0 -218
  455. package/skills/diagram-tour/SKILL.md +0 -287
  456. package/skills/diagram-tour/examples/agent-architecture/agent-architecture-tour.md +0 -78
  457. package/skills/docvideoer/SKILL.md +0 -139
  458. package/skills/draftcut/SKILL.md +0 -104
  459. package/skills/draftcut/docs/agent-bootstrap.md +0 -64
  460. package/skills/draftcut/docs/approvals.md +0 -45
  461. package/skills/draftcut/docs/audio-first-migration.md +0 -35
  462. package/skills/draftcut/docs/configuration.md +0 -54
  463. package/skills/draftcut/docs/getting-started.md +0 -63
  464. package/skills/draftcut/docs/harness-case-study.en.md +0 -23
  465. package/skills/draftcut/docs/harness-case-study.md +0 -47
  466. package/skills/draftcut/references/01-plan.md +0 -30
  467. package/skills/draftcut/references/03-deliver.md +0 -26
  468. package/skills/draftcut/references/04-reference-theme-prompt.md +0 -7
  469. package/skills/draftcut/references/05-social-loudness.md +0 -58
  470. package/skills/draftcut/references/06-modern-components.md +0 -72
  471. package/skills/easyedit/SKILL.md +0 -66
  472. package/skills/erduo-broll-loop-engineering/SKILL.md +0 -136
  473. package/skills/erduo-broll-loop-engineering/references/animation-craft.md +0 -208
  474. package/skills/erduo-broll-loop-engineering/references/first-run-onboarding.md +0 -107
  475. package/skills/erduo-broll-loop-engineering/references/handoff-template.md +0 -70
  476. package/skills/erduo-broll-loop-engineering/references/motion-layout-lint.md +0 -122
  477. package/skills/erduo-broll-loop-engineering/references/parent-review-checklist.md +0 -171
  478. package/skills/erduo-broll-loop-engineering/references/prompt-first-workflow.md +0 -322
  479. package/skills/erduo-broll-loop-engineering/references/remotion-backend.md +0 -334
  480. package/skills/erduo-broll-loop-engineering/references/runtime/remotion-hyperframes-map.md +0 -76
  481. package/skills/erduo-broll-loop-engineering/references/runtime/runtime-contract.md +0 -174
  482. package/skills/erduo-broll-loop-engineering/references/runtime/runtime-selection.md +0 -135
  483. package/skills/erduo-broll-loop-engineering/references/shotcraft/remotion-sources/SOURCE.md +0 -7
  484. package/skills/erduo-broll-loop-engineering/references/shotcraft/upstream-attribution.md +0 -65
  485. package/skills/explainer-assets/SKILL.md +0 -98
  486. package/skills/explainer-video/SKILL.md +0 -146
  487. package/skills/framewright/SKILL.md +0 -324
  488. package/skills/framewright/references/audio.md +0 -230
  489. package/skills/framewright/references/guide.md +0 -276
  490. package/skills/framewright/references/painting.md +0 -425
  491. package/skills/framewright/references/photo.md +0 -75
  492. package/skills/framewright/references/questionnaire.md +0 -115
  493. package/skills/framewright/references/styles.md +0 -388
  494. package/skills/framewright/references/troubleshooting.md +0 -119
  495. package/skills/framewright/references/world.md +0 -215
  496. package/skills/gbro-collage-broll/SKILL.md +0 -435
  497. package/skills/gbro-collage-info/SKILL.md +0 -135
  498. package/skills/gbro-collage-info/references/motion-grammar.md +0 -66
  499. package/skills/gbro-collage-info/references/production.md +0 -67
  500. package/skills/gbro-collage-info/references/style-system.md +0 -38
  501. package/skills/gemini-tts/SKILL.md +0 -208
  502. package/skills/gemini-tts/references/prompting-guide.md +0 -169
  503. package/skills/gen/SKILL.md +0 -282
  504. package/skills/ghost-editor/SKILL.md +0 -437
  505. package/skills/ghost-editor/docs/HOW-IT-WORKS.md +0 -82
  506. package/skills/ghost-editor/docs/PLAYBOOK.md +0 -139
  507. package/skills/ghost-editor/docs/THIRD_PARTY/audio.md +0 -17
  508. package/skills/ghost-editor/docs/THIRD_PARTY/audioqa.md +0 -13
  509. package/skills/ghost-editor/docs/THIRD_PARTY/captions.md +0 -20
  510. package/skills/ghost-editor/docs/THIRD_PARTY/fonts.md +0 -17
  511. package/skills/ghost-editor/docs/THIRD_PARTY/kinetic.md +0 -22
  512. package/skills/ghost-editor/docs/THIRD_PARTY/looks.md +0 -22
  513. package/skills/ghost-editor/docs/THIRD_PARTY/matte.md +0 -20
  514. package/skills/ghost-editor/docs/THIRD_PARTY/models.md +0 -11
  515. package/skills/ghost-editor/docs/THIRD_PARTY/runtime.md +0 -13
  516. package/skills/ghost-editor/docs/THIRD_PARTY/shaders.md +0 -15
  517. package/skills/git-story-film/SKILL.md +0 -220
  518. package/skills/git-story-film/examples/raven-story/FONTS.md +0 -8
  519. package/skills/git-story-film/examples/raven-story/OUTLINE.md +0 -93
  520. package/skills/git-story-film/references/craft.md +0 -148
  521. package/skills/git-story-film/references/directing.md +0 -185
  522. package/skills/git-story-film/references/forms.md +0 -150
  523. package/skills/git-story-film/references/production.md +0 -150
  524. package/skills/git-story-film/references/story.md +0 -137
  525. package/skills/git-story-film/references/text-and-fonts.md +0 -90
  526. package/skills/guizang-product-video-skill/SKILL.md +0 -96
  527. package/skills/guizang-product-video-skill/references/audio-and-qa.md +0 -113
  528. package/skills/guizang-product-video-skill/references/audio-sourcing.md +0 -80
  529. package/skills/guizang-product-video-skill/references/case-study.md +0 -63
  530. package/skills/guizang-product-video-skill/references/component-pipeline.md +0 -86
  531. package/skills/guizang-product-video-skill/references/cover.md +0 -43
  532. package/skills/guizang-product-video-skill/references/direction.md +0 -91
  533. package/skills/guizang-product-video-skill/references/onboarding.md +0 -98
  534. package/skills/guizang-product-video-skill/references/repo-and-style.md +0 -44
  535. package/skills/guizang-product-video-skill/references/review.md +0 -38
  536. package/skills/guizang-product-video-skill/references/starter.md +0 -168
  537. package/skills/guizang-product-video-skill/references/story-and-copy.md +0 -88
  538. package/skills/guizang-product-video-skill/references/visual-vocabulary.md +0 -78
  539. package/skills/guofeng-paper-video/SKILL.md +0 -159
  540. package/skills/guofeng-paper-video/style/design.md +0 -43
  541. package/skills/guofeng-paper-video/style/palette.md +0 -21
  542. package/skills/guofeng-paper-video/style/prompts/01-/345/210/206/351/225/234/350/241/250.md +0 -19
  543. package/skills/guofeng-paper-video/style/prompts/02-/347/224/237/346/210/220/347/272/270/347/211/207.md +0 -37
  544. package/skills/guofeng-paper-video/style/prompts/03-/351/205/215/351/237/263/350/204/232/346/234/254.md +0 -27
  545. package/skills/guofeng-paper-video/style//345/210/206/351/225/234/344/270/216/345/233/276/345/261/202/350/247/204/350/214/203.md +0 -67
  546. package/skills/guofeng-paper-video/style//347/272/270/347/211/207/347/264/240/346/235/220/350/247/204/350/214/203.md +0 -29
  547. package/skills/hand-drawn-explainer-video-nikola/SKILL.md +0 -113
  548. package/skills/hand-drawn-explainer-video-nikola/docs/ARCHITECTURE.md +0 -18
  549. package/skills/hand-drawn-explainer-video-nikola/docs/CONFIGURATION.md +0 -22
  550. package/skills/hand-drawn-explainer-video-nikola/docs/STYLES.md +0 -28
  551. package/skills/hand-drawn-explainer-video-nikola/docs/TROUBLESHOOTING.md +0 -35
  552. package/skills/hand-drawn-explainer-video-nikola/examples/program-animation/skill-demo/DESIGN.md +0 -24
  553. package/skills/hand-drawn-explainer-video-nikola/references/automation-workflow.md +0 -67
  554. package/skills/hand-drawn-explainer-video-nikola/references/output-example.md +0 -79
  555. package/skills/hand-drawn-explainer-video-nikola/references/preflight-and-recovery.md +0 -49
  556. package/skills/hand-drawn-explainer-video-nikola/references/style-guide.md +0 -82
  557. package/skills/hand-drawn-explainer-video-nikola/references/style-selection-and-updates.md +0 -39
  558. package/skills/hand-drawn-explainer-video-nikola/references/upstream-whiteboard-review.md +0 -30
  559. package/skills/hand-drawn-explainer-video-nikola/references/voiceover.md +0 -37
  560. package/skills/hbg-life-simulation/SKILL.md +0 -285
  561. package/skills/hbg-life-simulation/references/image-generation.md +0 -53
  562. package/skills/hbg-life-simulation/references/local-account-api.md +0 -112
  563. package/skills/hbg-life-simulation/references/opening-system.md +0 -45
  564. package/skills/hbg-life-simulation/references/project-spec.md +0 -62
  565. package/skills/hbg-life-simulation/references/render-and-qa.md +0 -107
  566. package/skills/hbg-life-simulation/references/storyboarding.md +0 -69
  567. package/skills/hbg-life-simulation/references/style-system.md +0 -80
  568. package/skills/hbg-life-simulation/references/visual-system.md +0 -44
  569. package/skills/heygen-avatar/SKILL.md +0 -489
  570. package/skills/heygen-avatar/references/asset-routing.md +0 -86
  571. package/skills/heygen-avatar/references/avatar-creation.md +0 -181
  572. package/skills/heygen-avatar/references/troubleshooting.md +0 -137
  573. package/skills/heytea-doodle-poster/SKILL.md +0 -132
  574. package/skills/heytea-doodle-poster/references/desktop-pet-character-modes.md +0 -103
  575. package/skills/heytea-doodle-poster/references/desktop-pet-environment.md +0 -122
  576. package/skills/heytea-doodle-poster/references/desktop-pet-pack.md +0 -106
  577. package/skills/heytea-doodle-poster/references/desktop-pet-workflow.md +0 -264
  578. package/skills/heytea-doodle-poster/references/evaluation.md +0 -246
  579. package/skills/heytea-doodle-poster/references/lettering-guide.md +0 -213
  580. package/skills/heytea-doodle-poster/references/mixed-media-style-guide.md +0 -101
  581. package/skills/heytea-doodle-poster/references/monster-poster-workflow.md +0 -56
  582. package/skills/heytea-doodle-poster/references/style-guide.md +0 -412
  583. package/skills/heytea-doodle-poster-hosted/SKILL.md +0 -132
  584. package/skills/heytea-doodle-poster-hosted/references/desktop-pet-character-modes.md +0 -103
  585. package/skills/heytea-doodle-poster-hosted/references/desktop-pet-environment.md +0 -122
  586. package/skills/heytea-doodle-poster-hosted/references/desktop-pet-pack.md +0 -106
  587. package/skills/heytea-doodle-poster-hosted/references/desktop-pet-workflow.md +0 -264
  588. package/skills/heytea-doodle-poster-hosted/references/evaluation.md +0 -246
  589. package/skills/heytea-doodle-poster-hosted/references/lettering-guide.md +0 -213
  590. package/skills/heytea-doodle-poster-hosted/references/mixed-media-style-guide.md +0 -101
  591. package/skills/heytea-doodle-poster-hosted/references/monster-poster-workflow.md +0 -56
  592. package/skills/heytea-doodle-poster-hosted/references/style-guide.md +0 -412
  593. package/skills/html2video/SKILL.md +0 -290
  594. package/skills/html2video/references/cjk-type.md +0 -173
  595. package/skills/html2video/references/editorial.md +0 -145
  596. package/skills/html2video/references/narration.md +0 -111
  597. package/skills/html2video/references/pitfalls.md +0 -238
  598. package/skills/html2video/references/shots.md +0 -198
  599. package/skills/html2video/references/storyboard.md +0 -323
  600. package/skills/hyperdirector/SKILL.md +0 -202
  601. package/skills/hyperdirector/docs/audio-workflow.md +0 -160
  602. package/skills/hyperdirector/docs/audio-workflow.zh-CN.md +0 -244
  603. package/skills/hyperdirector/docs/brand-kit-setup.md +0 -322
  604. package/skills/hyperdirector/docs/brand-kit-setup.zh-CN.md +0 -277
  605. package/skills/hyperdirector/docs/cursor-development-notes.md +0 -474
  606. package/skills/hyperdirector/docs/faq.md +0 -285
  607. package/skills/hyperdirector/docs/faq.zh-CN.md +0 -198
  608. package/skills/hyperdirector/docs/first-video.md +0 -320
  609. package/skills/hyperdirector/docs/first-video.zh-CN.md +0 -265
  610. package/skills/hyperdirector/docs/installation.md +0 -254
  611. package/skills/hyperdirector/docs/installation.zh-CN.md +0 -222
  612. package/skills/hyperdirector/docs/quickstart.md +0 -203
  613. package/skills/hyperframes/SKILL.md +0 -117
  614. package/skills/hyperframes/references/captions.md +0 -46
  615. package/skills/hyperframes/references/film.md +0 -48
  616. package/skills/hyperframes/references/format.md +0 -158
  617. package/skills/hyperframes/references/look.md +0 -69
  618. package/skills/hyperframes/references/motion.md +0 -95
  619. package/skills/hyperframes/references/overlays.md +0 -39
  620. package/skills/hyperframes/references/review.md +0 -51
  621. package/skills/hyperframes/references/runtimes.md +0 -69
  622. package/skills/hyperframes/references/skill-lifecycle.md +0 -49
  623. package/skills/hyperframes/references/sound.md +0 -43
  624. package/skills/hyperframes/references/spec.md +0 -76
  625. package/skills/hyperframes/references/story.md +0 -103
  626. package/skills/hyperframes-motion-director/SKILL.md +0 -920
  627. package/skills/hyperframes-motion-director/references/asset-choreography-and-render-qa.md +0 -185
  628. package/skills/hyperframes-motion-director/references/audio-sync.md +0 -83
  629. package/skills/hyperframes-motion-director/references/design-engineering.md +0 -156
  630. package/skills/hyperframes-motion-director/references/gsap-choreography.md +0 -202
  631. package/skills/hyperframes-motion-director/references/hyperframes-stability.md +0 -99
  632. package/skills/hyperframes-motion-director/references/imagegen-asset-pipeline.md +0 -227
  633. package/skills/hyperframes-motion-director/references/motion-background-system.md +0 -165
  634. package/skills/hyperframes-motion-director/references/motion-craft.md +0 -182
  635. package/skills/hyperframes-motion-director/references/premium-product-promo.md +0 -287
  636. package/skills/hyperframes-motion-director/references/text-over-background-layout.md +0 -221
  637. package/skills/hyperframes-motion-director/references/visual-standard.md +0 -174
  638. package/skills/hyperframes-motion-director/references/workflow.md +0 -320
  639. package/skills/hypit/SKILL.md +0 -367
  640. package/skills/hypit/references/creation/brief.md +0 -93
  641. package/skills/hypit/references/creation/script-and-time.md +0 -259
  642. package/skills/hypit/references/creation/transformations.md +0 -143
  643. package/skills/hypit/references/playbooks/craft/b-roll.md +0 -94
  644. package/skills/hypit/references/playbooks/craft/caption-tracking.md +0 -126
  645. package/skills/hypit/references/playbooks/craft/captions.md +0 -253
  646. package/skills/hypit/references/playbooks/craft/generated-dependencies.md +0 -38
  647. package/skills/hypit/references/playbooks/craft/graphic-compositions.md +0 -85
  648. package/skills/hypit/references/playbooks/craft/motion-graphics.md +0 -68
  649. package/skills/hypit/references/playbooks/craft/screen-demonstrations.md +0 -51
  650. package/skills/hypit/references/playbooks/craft/sound-mix.md +0 -70
  651. package/skills/hypit/references/playbooks/formats/narration-led-demo.md +0 -87
  652. package/skills/image/SKILL.md +0 -153
  653. package/skills/image/references/characters.md +0 -86
  654. package/skills/image/references/creative-direction.md +0 -137
  655. package/skills/image/references/de-slop.md +0 -95
  656. package/skills/image/references/dimensional.md +0 -88
  657. package/skills/image/references/editing.md +0 -112
  658. package/skills/image/references/golden-rules.md +0 -198
  659. package/skills/image/references/gpt-image.md +0 -228
  660. package/skills/image/references/models.md +0 -78
  661. package/skills/image/references/multi-panel.md +0 -354
  662. package/skills/image/references/nano-banana.md +0 -150
  663. package/skills/image/references/patterns/character-design.md +0 -150
  664. package/skills/image/references/patterns/ecommerce.md +0 -124
  665. package/skills/image-smixs/SKILL.md +0 -153
  666. package/skills/image-smixs/references/characters.md +0 -86
  667. package/skills/image-smixs/references/creative-direction.md +0 -137
  668. package/skills/image-smixs/references/de-slop.md +0 -95
  669. package/skills/image-smixs/references/dimensional.md +0 -88
  670. package/skills/image-smixs/references/editing.md +0 -112
  671. package/skills/image-smixs/references/golden-rules.md +0 -198
  672. package/skills/image-smixs/references/gpt-image.md +0 -228
  673. package/skills/image-smixs/references/models.md +0 -78
  674. package/skills/image-smixs/references/multi-panel.md +0 -354
  675. package/skills/image-smixs/references/nano-banana.md +0 -150
  676. package/skills/image-smixs/references/patterns/character-design.md +0 -150
  677. package/skills/image-smixs/references/patterns/ecommerce.md +0 -124
  678. package/skills/image-story-video-wizard/SKILL.md +0 -148
  679. package/skills/image-story-video-wizard/docs/ARTICLE_ALIGNMENT.md +0 -29
  680. package/skills/image-story-video-wizard/references/host-routing.md +0 -44
  681. package/skills/image-story-video-wizard/references/state-schema.md +0 -79
  682. package/skills/image-story-video-wizard/references/workflow.md +0 -203
  683. package/skills/image-story-video-wizard/references/writing-and-review.md +0 -60
  684. package/skills/ip-as-logo/SKILL.md +0 -151
  685. package/skills/ip-as-logo-s1dashu/SKILL.md +0 -151
  686. package/skills/jtxvideo-skill/SKILL.md +0 -337
  687. package/skills/kinetic-reel/SKILL.md +0 -140
  688. package/skills/kinetic-reel/examples/work-reel-26/STORYBOARD.md +0 -51
  689. package/skills/kinetic-reel/references/sound.md +0 -40
  690. package/skills/kinetic-reel/references/style-guide.md +0 -79
  691. package/skills/knowledge-explainer-skill/SKILL.md +0 -149
  692. package/skills/knowledge-explainer-skill/examples/ai_video_3steps.md +0 -61
  693. package/skills/knowledge-explainer-skill/examples/algorithm_bubble.md +0 -20
  694. package/skills/knowledge-explainer-skill/examples/before_after_demo.md +0 -38
  695. package/skills/knowledge-explainer-skill/examples/cta_outro.md +0 -11
  696. package/skills/knowledge-explainer-skill/examples/double_pendulum.md +0 -20
  697. package/skills/knowledge-explainer-skill/examples/paper_fold.md +0 -20
  698. package/skills/knowledge-explainer-skill/examples/script.md +0 -40
  699. package/skills/lanshu-create-ai-presenter-video/SKILL.md +0 -253
  700. package/skills/lanshu-create-ai-presenter-video/references/editing.md +0 -67
  701. package/skills/lanshu-create-ai-presenter-video/references/generation.md +0 -94
  702. package/skills/lanshu-create-ai-presenter-video/references/qa-recovery.md +0 -83
  703. package/skills/lanshu-create-ai-presenter-video/references/styled-explainer.md +0 -189
  704. package/skills/laoxu-video-script/SKILL.md +0 -117
  705. package/skills/laoxu-video-script/references/cases.md +0 -305
  706. package/skills/laoxu-video-script/references/de-ai.md +0 -32
  707. package/skills/laoxu-video-script/references/diagnostics.md +0 -67
  708. package/skills/laoxu-video-script/references/format.md +0 -62
  709. package/skills/laoxu-video-script/references/formulas.md +0 -43
  710. package/skills/laoxu-video-script/references/method.md +0 -115
  711. package/skills/laoxu-video-script/references/motifs-and-lines.md +0 -829
  712. package/skills/laoxu-video-script/references/persona.md +0 -38
  713. package/skills/laoxu-video-script/references/qihao-path.md +0 -35
  714. package/skills/laoxu-video-script/references/qihao-xinfa.md +0 -39
  715. package/skills/laoxu-video-script/references/redlines.md +0 -26
  716. package/skills/lemo-opuscar/SKILL.md +0 -67
  717. package/skills/lipnardo/SKILL.md +0 -308
  718. package/skills/lipnardo/examples/batch-personalized.md +0 -44
  719. package/skills/lipnardo/examples/photo-to-avatar-pipeline.md +0 -56
  720. package/skills/lipnardo/examples/single-video.md +0 -44
  721. package/skills/lipnardo/references/avatar-types.md +0 -42
  722. package/skills/lipnardo/references/credit-costs.md +0 -39
  723. package/skills/lipnardo/references/error-codes.md +0 -66
  724. package/skills/lipnardo/references/heygen-api-reference.md +0 -416
  725. package/skills/ll-video-decomposer/SKILL.md +0 -105
  726. package/skills/ll-video-decomposer/references/audiovisual-analysis-guide.md +0 -44
  727. package/skills/ll-video-decomposer/references/evidence-and-confidence-rules.md +0 -41
  728. package/skills/ll-video-decomposer/references/multi-video-comparison-template.md +0 -48
  729. package/skills/ll-video-decomposer/references/single-video-report-template.md +0 -47
  730. package/skills/ll-video-decomposer/references/tool-discovery-workflow.md +0 -30
  731. package/skills/ll-video-decomposer/references/transcription-routing.md +0 -65
  732. package/skills/ll-video-decomposer/references/video-acquisition-workflow.md +0 -30
  733. package/skills/ltx2-video/SKILL.md +0 -193
  734. package/skills/ltx2-video/references/mode_ux.md +0 -293
  735. package/skills/make-ai-short/SKILL.md +0 -130
  736. package/skills/make-blender-education-video/SKILL.md +0 -247
  737. package/skills/make-blender-education-video/references/evidence-and-explanation.md +0 -62
  738. package/skills/make-blender-education-video/references/github-workflow-discovery.md +0 -55
  739. package/skills/make-blender-education-video/references/production-workflow.md +0 -62
  740. package/skills/make-blender-education-video/references/story-patterns.md +0 -65
  741. package/skills/make-blender-education-video/references/visual-quality.md +0 -82
  742. package/skills/manage-storyboard-projects/SKILL.md +0 -128
  743. package/skills/manim-composer/SKILL.md +0 -176
  744. package/skills/manim-composer/references/narrative-patterns.md +0 -125
  745. package/skills/manim-composer/references/scene-examples.md +0 -216
  746. package/skills/manim-composer/references/visual-techniques.md +0 -223
  747. package/skills/manim-composer/templates/scenes-template.md +0 -147
  748. package/skills/monet-ai-editor-monet/SKILL.md +0 -367
  749. package/skills/motion-graphics/SKILL.md +0 -206
  750. package/skills/motion-graphics/references/craft.md +0 -136
  751. package/skills/motion-graphics/references/engine.md +0 -130
  752. package/skills/motion-graphics/references/export.md +0 -67
  753. package/skills/motion-graphics/references/physics.md +0 -100
  754. package/skills/motion-graphics/references/verify.md +0 -124
  755. package/skills/motion-video/SKILL.md +0 -133
  756. package/skills/motion-video/references/audio-and-beat-sync.md +0 -109
  757. package/skills/motion-video/references/composition-contract.md +0 -107
  758. package/skills/motion-video/references/production-pipeline.md +0 -147
  759. package/skills/motion-video/references/style-comic-spiderverse.md +0 -87
  760. package/skills/motion-video/references/style-glass-keynote.md +0 -69
  761. package/skills/motion-video-maker/SKILL.md +0 -1452
  762. package/skills/motion-video-maker/reference/components.md +0 -451
  763. package/skills/motion-video-maker/reference/workflow.md +0 -190
  764. package/skills/motioncraft/SKILL.md +0 -221
  765. package/skills/motioncraft/references/animation-system.md +0 -57
  766. package/skills/motioncraft/references/assets-and-licensing.md +0 -21
  767. package/skills/motioncraft/references/customization.md +0 -52
  768. package/skills/motioncraft/references/gpu-cloud-render.md +0 -15
  769. package/skills/motioncraft/references/music.md +0 -43
  770. package/skills/motioncraft/references/phase1-planning-and-preview.md +0 -74
  771. package/skills/motioncraft/references/phase2-timeline-audio.md +0 -33
  772. package/skills/motioncraft/references/phase3-pixel-review.md +0 -13
  773. package/skills/motioncraft/references/phase4-templates.md +0 -30
  774. package/skills/motioncraft/references/preflight.md +0 -27
  775. package/skills/motioncraft/references/qa.md +0 -53
  776. package/skills/motioncraft/references/reference-analysis.md +0 -37
  777. package/skills/narrator-ai-cli/SKILL.md +0 -256
  778. package/skills/narrator-ai-cli/references/magic-video.md +0 -205
  779. package/skills/narrator-ai-cli/references/operations.md +0 -230
  780. package/skills/narrator-ai-cli/references/resources.md +0 -126
  781. package/skills/narrator-ai-cli/references/workflows.md +0 -332
  782. package/skills/newcut-video-clipping/SKILL.md +0 -194
  783. package/skills/newcut-video-clipping/references/examples.md +0 -59
  784. package/skills/newcut-video-clipping/references/provider-config.md +0 -110
  785. package/skills/newcut-video-clipping/references/quality-check.md +0 -35
  786. package/skills/newcut-video-clipping/references/semantic-plan.md +0 -65
  787. package/skills/notes-to-video/SKILL.md +0 -476
  788. package/skills/openchatcut/SKILL.md +0 -100
  789. package/skills/openchatcut/references/editing-workflow.md +0 -54
  790. package/skills/openchatcut/references/getting-started.md +0 -106
  791. package/skills/openchatcut/references/known-errors.md +0 -62
  792. package/skills/openstoryline-install/SKILL.md +0 -228
  793. package/skills/orca-motion/SKILL.md +0 -100
  794. package/skills/orca-motion/references/api.md +0 -100
  795. package/skills/orca-motion/references/integration.md +0 -59
  796. package/skills/orca-motion/references/kinetic-type.md +0 -59
  797. package/skills/orca-motion/references/principles.md +0 -76
  798. package/skills/package-talking-head-video/SKILL.md +0 -90
  799. package/skills/package-talking-head-video/docs/EXAMPLES.md +0 -18
  800. package/skills/package-talking-head-video/docs/TROUBLESHOOTING.md +0 -29
  801. package/skills/package-talking-head-video/docs/USAGE.md +0 -83
  802. package/skills/package-talking-head-video/docs/superpowers/plans/2026-08-08-multicolor-center-speaker.md +0 -144
  803. package/skills/package-talking-head-video/docs/superpowers/plans/2026-08-08-semantic-template-system-v2.md +0 -1099
  804. package/skills/package-talking-head-video/docs/superpowers/specs/2026-08-08-multicolor-center-speaker-design.md +0 -154
  805. package/skills/package-talking-head-video/docs/superpowers/specs/2026-08-08-semantic-template-system-v2-design.md +0 -365
  806. package/skills/package-talking-head-video/examples/auto-editing-0/GATE_A.md +0 -56
  807. package/skills/package-talking-head-video/examples/auto-editing-0/GATE_D.md +0 -8
  808. package/skills/package-talking-head-video/examples/auto-editing-0/QA_REPORT.md +0 -34
  809. package/skills/package-talking-head-video/references/director-rules.md +0 -29
  810. package/skills/package-talking-head-video/references/motion-and-illustration.md +0 -25
  811. package/skills/paper-cut/SKILL.md +0 -164
  812. package/skills/paper-cut/references/asset-spec.md +0 -47
  813. package/skills/paper-cut/references/audio-and-chatcut.md +0 -26
  814. package/skills/paper-cut/references/hyperframes-assembly.md +0 -47
  815. package/skills/paper-cut/references/image-led-production.md +0 -65
  816. package/skills/paper-cut/references/storyboard-schema.md +0 -48
  817. package/skills/paper-cut/references/workflow.md +0 -39
  818. package/skills/personal-ip-brand-intro/SKILL.md +0 -216
  819. package/skills/personal-ip-brand-intro/references/intake-schema.md +0 -79
  820. package/skills/personal-ip-brand-intro/references/music-upload-workflow.md +0 -40
  821. package/skills/personal-ip-brand-intro/references/originality-rules.md +0 -42
  822. package/skills/personal-ip-brand-intro/references/qa-checklist.md +0 -60
  823. package/skills/personal-ip-brand-intro/references/rhythm-routing.md +0 -41
  824. package/skills/personal-ip-brand-intro/references/storyboard-contract.md +0 -42
  825. package/skills/pixel2motion/SKILL.md +0 -279
  826. package/skills/pixel2motion/references/html-delivery-template.md +0 -42
  827. package/skills/pixel2motion/references/motion-personality.md +0 -109
  828. package/skills/pixel2motion/references/reveal-patterns.md +0 -163
  829. package/skills/pixel2motion/references/ribbon-fitting.md +0 -90
  830. package/skills/pixel2motion/references/twelve-principles-for-logos.md +0 -116
  831. package/skills/premiere-batch-delivery/SKILL.md +0 -71
  832. package/skills/premiere-pro-mcp/SKILL.md +0 -161
  833. package/skills/promo-creator-skills/SKILL.md +0 -209
  834. package/skills/promo-creator-skills/references/mureka_prompt_guide.md +0 -251
  835. package/skills/promo-creator-skills/references/product_promo_bgm_prompting.md +0 -100
  836. package/skills/promo-video/SKILL.md +0 -408
  837. package/skills/qisi-video-remix/SKILL.md +0 -134
  838. package/skills/qisi-video-remix/examples/creative-plan.md +0 -133
  839. package/skills/qisi-video-remix/references/delivery-guide.md +0 -63
  840. package/skills/reel-video/SKILL.md +0 -237
  841. package/skills/remotion-ad-video/SKILL.md +0 -252
  842. package/skills/remotion-ad-video/references/ad-aesthetic-qa.md +0 -60
  843. package/skills/remotion-ad-video/references/ad-brief-contract.md +0 -235
  844. package/skills/remotion-ad-video/references/ad-exemplars.md +0 -186
  845. package/skills/remotion-ad-video/references/ad-intake.md +0 -54
  846. package/skills/remotion-ad-video/references/asset-harvest.md +0 -56
  847. package/skills/remotion-ad-video/references/audio-caption-system.md +0 -202
  848. package/skills/remotion-ad-video/references/concept-contract.md +0 -128
  849. package/skills/remotion-ad-video/references/creative-direction.md +0 -146
  850. package/skills/remotion-ad-video/references/fast-test-workflow.md +0 -86
  851. package/skills/remotion-ad-video/references/game-ad-patterns.md +0 -75
  852. package/skills/remotion-ad-video/references/hyperframes-output.md +0 -90
  853. package/skills/remotion-ad-video/references/industry-angle-library.md +0 -71
  854. package/skills/remotion-ads/SKILL.md +0 -278
  855. package/skills/remotion-ads/references/ad-copywriting.md +0 -229
  856. package/skills/remotion-ads/references/animations.md +0 -693
  857. package/skills/remotion-ads/references/brand-config-template.md +0 -355
  858. package/skills/remotion-ads/references/captions.md +0 -529
  859. package/skills/remotion-ads/references/carousels.md +0 -580
  860. package/skills/remotion-ads/references/components.md +0 -897
  861. package/skills/remotion-ads/references/copy-frameworks.md +0 -144
  862. package/skills/remotion-ads/references/formats.md +0 -436
  863. package/skills/remotion-ads/references/gemini-tts.md +0 -473
  864. package/skills/remotion-ads/references/html-in-canvas.md +0 -555
  865. package/skills/remotion-ads/references/local-assets.md +0 -543
  866. package/skills/remotion-ads/references/music.md +0 -656
  867. package/skills/remotion-code-motion-explainer/SKILL.md +0 -178
  868. package/skills/remotion-code-motion-explainer/references/code-motion-design.md +0 -86
  869. package/skills/remotion-code-motion-explainer/references/motion-production-patterns.md +0 -93
  870. package/skills/remotion-code-motion-explainer/references/production-and-qc.md +0 -99
  871. package/skills/remotion-code-motion-explainer/references/reference-reconstruction.md +0 -48
  872. package/skills/remotion-code-motion-explainer/references/ui-motion-shot-library.md +0 -62
  873. package/skills/remotion-motion-graphics/SKILL.md +0 -169
  874. package/skills/remotion-motion-graphics/references/patterns.md +0 -355
  875. package/skills/remotion-motion-graphics/references/polish.md +0 -102
  876. package/skills/remotion-motion-graphics/references/scaffold.md +0 -144
  877. package/skills/remotion-motion-graphics/references/traps.md +0 -152
  878. package/skills/remotion-resemble-ai/SKILL.md +0 -879
  879. package/skills/remotion-resemble-ai/rules/resemble-captions.md +0 -350
  880. package/skills/remotion-resemble-ai/rules/resemble-remotion-integration.md +0 -305
  881. package/skills/remotion-resemble-ai/rules/resemble-setup.md +0 -284
  882. package/skills/remotion-resemble-ai/rules/resemble-streaming-tts.md +0 -225
  883. package/skills/remotion-resemble-ai/rules/resemble-sync-tts.md +0 -239
  884. package/skills/remotion-resemble-ai/rules/resemble-voices.md +0 -213
  885. package/skills/remotion-resemble-ai/rules/visual-animations.md +0 -567
  886. package/skills/riffkit/SKILL.md +0 -196
  887. package/skills/riffkit/examples/any-look-styles.md +0 -11
  888. package/skills/riffkit/examples/faceless-and-auto.md +0 -16
  889. package/skills/riffkit/examples/localize-spanish.md +0 -18
  890. package/skills/riffkit/examples/tiktok-shop-product.md +0 -22
  891. package/skills/riffkit/references/anchor.md +0 -62
  892. package/skills/riffkit/references/api.md +0 -806
  893. package/skills/riffkit/references/details.md +0 -153
  894. package/skills/riffkit/references/errors.md +0 -69
  895. package/skills/riffkit/references/intents.md +0 -29
  896. package/skills/saas-motion-video/SKILL.md +0 -71
  897. package/skills/script-to-video/SKILL.md +0 -2627
  898. package/skills/shorts/SKILL.md +0 -372
  899. package/skills/shorts/references/caption-styles.md +0 -105
  900. package/skills/shorts/references/platform-specs.md +0 -149
  901. package/skills/shorts/references/remotion-patterns.md +0 -180
  902. package/skills/shorts/references/scoring-rubric.md +0 -106
  903. package/skills/smart-video-editor/SKILL.md +0 -327
  904. package/skills/smart-video-editor/docs/FONTS.md +0 -57
  905. package/skills/story-telling/SKILL.md +0 -222
  906. package/skills/story-telling/rules/composition.md +0 -130
  907. package/skills/story-telling/rules/images.md +0 -119
  908. package/skills/story-telling/rules/models.md +0 -98
  909. package/skills/story-telling/rules/narration.md +0 -87
  910. package/skills/story-telling/rules/pitfalls.md +0 -140
  911. package/skills/story-telling/rules/story-formats.md +0 -108
  912. package/skills/story-telling/rules/story-json.md +0 -143
  913. package/skills/story-telling/rules/voices.md +0 -114
  914. package/skills/story-telling/rules/workflow.md +0 -105
  915. package/skills/story-to-handdrawn-video/SKILL.md +0 -216
  916. package/skills/story-to-handdrawn-video/references/asset-workflow.md +0 -24
  917. package/skills/story-to-handdrawn-video/references/reference-style-workflow.md +0 -27
  918. package/skills/su-card-to-video/SKILL.md +0 -103
  919. package/skills/talking-head-video-pipeline/SKILL.md +0 -224
  920. package/skills/talking-head-video-pipeline/examples/prompts.md +0 -217
  921. package/skills/talking-head-video-pipeline/references/asr-adapters.md +0 -51
  922. package/skills/talking-head-video-pipeline/references/caption-workflow.md +0 -53
  923. package/skills/talking-head-video-pipeline/references/export-recipes.md +0 -78
  924. package/skills/talking-head-video-pipeline/references/layout-safety.md +0 -49
  925. package/skills/talking-head-video-pipeline/references/video-use-integration.md +0 -71
  926. package/skills/talking-head-video-pipeline/references/workflows/captions.md +0 -52
  927. package/skills/talking-head-video-pipeline/references/workflows/design.md +0 -77
  928. package/skills/talking-head-video-pipeline/references/workflows/doctor.md +0 -51
  929. package/skills/talking-head-video-pipeline/references/workflows/export.md +0 -50
  930. package/skills/talking-head-video-pipeline/references/workflows/init.md +0 -51
  931. package/skills/talking-head-video-pipeline/references/workflows/learn.md +0 -36
  932. package/skills/text-to-lottie/SKILL.md +0 -202
  933. package/skills/text-to-lottie/references/chapterization-transition-grammar.md +0 -132
  934. package/skills/text-to-lottie/references/design-taste.md +0 -292
  935. package/skills/text-to-lottie/references/lottie-spec-map.md +0 -82
  936. package/skills/text-to-lottie/references/motion-taste.md +0 -260
  937. package/skills/text-to-lottie/references/player-contract.md +0 -325
  938. package/skills/text-to-lottie/references/recipe-camera-scene-motion.md +0 -65
  939. package/skills/text-to-lottie/references/recipe-data-stats.md +0 -104
  940. package/skills/text-to-lottie/references/recipe-diagram-technical.md +0 -106
  941. package/skills/text-to-lottie/references/recipe-loaders-icons.md +0 -70
  942. package/skills/text-to-lottie/references/recipe-logo.md +0 -72
  943. package/skills/text-to-lottie/references/recipe-lower-thirds.md +0 -62
  944. package/skills/text-to-lottie/references/recipe-product-promo.md +0 -99
  945. package/skills/ultrademo/SKILL.md +0 -212
  946. package/skills/video-assemble/SKILL.md +0 -101
  947. package/skills/video-assemble-zenstory-ai/SKILL.md +0 -153
  948. package/skills/video-assemble-zenstory-ai/references/audio-modes.md +0 -63
  949. package/skills/video-assemble-zenstory-ai/references/explicit-audio-mix.md +0 -77
  950. package/skills/video-assemble-zenstory-ai/references/jianying/SOURCE.md +0 -14
  951. package/skills/video-assemble-zenstory-ai/references/narration-adoption.md +0 -103
  952. package/skills/video-assemble-zenstory-ai/references/packaging.md +0 -44
  953. package/skills/video-assemble-zenstory-ai/references/source-score.md +0 -146
  954. package/skills/video-assemble-zenstory-ai/references/subtitle-track.md +0 -202
  955. package/skills/video-editing/SKILL.md +0 -688
  956. package/skills/video-explainer/SKILL.md +0 -163
  957. package/skills/video-explainer/references/brief-to-script.md +0 -56
  958. package/skills/video-explainer/references/errors-and-privacy.md +0 -18
  959. package/skills/video-explainer/references/motion-storyboard.md +0 -82
  960. package/skills/video-explainer/references/render-and-verify.md +0 -62
  961. package/skills/video-explainer/references/review-gate.md +0 -82
  962. package/skills/video-explainer/references/setup-and-doctor.md +0 -33
  963. package/skills/video-script-builder/SKILL.md +0 -329
  964. package/skills/video-script-builder/examples/quick-start-transcript.md +0 -19
  965. package/skills/video-script-builder/references/audio-workflow.md +0 -84
  966. package/skills/video-script-builder/references/caption-components.md +0 -70
  967. package/skills/video-script-builder/references/common-pitfalls.md +0 -80
  968. package/skills/video-script-builder/references/component-catalog.md +0 -197
  969. package/skills/video-script-builder/references/component-recipes.md +0 -165
  970. package/skills/video-script-builder/references/gsap-patterns.md +0 -112
  971. package/skills/video-script-builder/references/pacing-rules.md +0 -78
  972. package/skills/video-script-builder/references/quality-checklist.md +0 -98
  973. package/skills/video-script-builder/references/remotion-patterns.md +0 -211
  974. package/skills/video-script-builder/references/shader-transitions.md +0 -115
  975. package/skills/video-script-builder/references/taste-principles.md +0 -160
  976. package/skills/video-scrub/SKILL.md +0 -216
  977. package/skills/video-scrub/references/profiles.md +0 -89
  978. package/skills/video-scrub/references/residue-map.md +0 -204
  979. package/skills/video-short-maker/SKILL.md +0 -182
  980. package/skills/video-shot-analysis-feishu/SKILL.md +0 -173
  981. package/skills/video-shotcraft/SKILL.md +0 -267
  982. package/skills/video-shotcraft/docs/deepseek-harness.md +0 -69
  983. package/skills/video-shotcraft/references/aesthetic-rules.md +0 -177
  984. package/skills/video-shotcraft/references/final-review.md +0 -112
  985. package/skills/video-shotcraft/references/guided-free-creation.md +0 -199
  986. package/skills/video-shotcraft/references/jianying-export.md +0 -182
  987. package/skills/video-shotcraft/references/music-beat-sync.md +0 -219
  988. package/skills/video-shotcraft/references/pipeline.md +0 -390
  989. package/skills/video-shotcraft/references/sequences/promo-energy-arc.md +0 -50
  990. package/skills/video-shotcraft/references/shots/ATTRIBUTION.md +0 -65
  991. package/skills/video-shotcraft/references/shots/camera/basic-3d-scene.md +0 -37
  992. package/skills/video-shotcraft/references/shots/camera/crash-zoom-punch.md +0 -39
  993. package/skills/video-shotcraft/references/shots/camera/cursor-flyover.md +0 -38
  994. package/skills/video-shotcraft-vincentwei10/SKILL.md +0 -316
  995. package/skills/video-shotcraft-vincentwei10/references/aesthetic-rules.md +0 -187
  996. package/skills/video-shotcraft-vincentwei10/references/final-review.md +0 -116
  997. package/skills/video-shotcraft-vincentwei10/references/guided-free-creation.md +0 -199
  998. package/skills/video-shotcraft-vincentwei10/references/jianying-export.md +0 -183
  999. package/skills/video-shotcraft-vincentwei10/references/music-beat-sync.md +0 -257
  1000. package/skills/video-shotcraft-vincentwei10/references/pipeline.md +0 -401
  1001. package/skills/video-shotcraft-vincentwei10/references/publish-upload-post.md +0 -111
  1002. package/skills/video-shotcraft-vincentwei10/references/sequences/promo-energy-arc.md +0 -50
  1003. package/skills/video-shotcraft-vincentwei10/references/shots/ATTRIBUTION.md +0 -62
  1004. package/skills/video-shotcraft-vincentwei10/references/shots/camera/basic-3d-scene.md +0 -41
  1005. package/skills/video-shotcraft-vincentwei10/references/shots/camera/crash-zoom-punch.md +0 -52
  1006. package/skills/video-shotcraft-vincentwei10/references/shots/camera/cursor-flyover.md +0 -39
  1007. package/skills/video-structure-analyzer/SKILL.md +0 -148
  1008. package/skills/video-structure-analyzer/examples/xhs-rook-time-spend/xhs-rook-time-spend_/346/213/211/347/211/207/346/213/206/350/247/243.md +0 -50
  1009. package/skills/video-structure-analyzer/examples/xhs-smelly-cat/xhs-smelly-cat_/346/213/211/347/211/207/346/213/206/350/247/243.md +0 -19
  1010. package/skills/video-toolkit/SKILL.md +0 -686
  1011. package/skills/videocut/SKILL.md +0 -159
  1012. package/skills/videodb/SKILL.md +0 -497
  1013. package/skills/videodb/reference/api-reference.md +0 -741
  1014. package/skills/videodb/reference/capture-reference.md +0 -399
  1015. package/skills/videodb/reference/capture.md +0 -110
  1016. package/skills/videodb/reference/editor-reference.md +0 -506
  1017. package/skills/videodb/reference/editor.md +0 -389
  1018. package/skills/videodb/reference/generative.md +0 -344
  1019. package/skills/videodb/reference/indexing-reference.md +0 -481
  1020. package/skills/videodb/reference/indexing.md +0 -537
  1021. package/skills/videodb/reference/legacy/index-reference.md +0 -223
  1022. package/skills/videodb/reference/legacy/index.md +0 -241
  1023. package/skills/videodb/reference/legacy/search.md +0 -249
  1024. package/skills/videodb/reference/migration.md +0 -113
  1025. package/skills/vlog-auto-edit/SKILL.md +0 -982
  1026. package/skills/vlog-auto-edit/examples/project_structure.md +0 -84
  1027. package/skills/vox-animated-ad-mcp/SKILL.md +0 -419
  1028. package/skills/vox-director/SKILL.md +0 -351
  1029. package/skills/vox-director/references/beat-layer.md +0 -143
  1030. package/skills/vox-director/references/host-mode.md +0 -120
  1031. package/skills/vox-director/references/local-engine.md +0 -73
  1032. package/skills/vox-director/references/models-and-gotchas.md +0 -91
  1033. package/skills/vox-director/references/prompt-guide.md +0 -275
  1034. package/skills/vox-director/references/voices.md +0 -59
  1035. package/skills/xingchen-vox-collage/SKILL.md +0 -251
  1036. package/skills/xingchen-vox-collage/references/asset-layer-contract.md +0 -98
  1037. package/skills/xingchen-vox-collage/references/creative-exploration.md +0 -19
  1038. package/skills/xingchen-vox-collage/references/learned-branches.md +0 -34
  1039. package/skills/xingchen-vox-collage/references/remotion-scene-contract.md +0 -77
  1040. package/skills/xingchen-vox-collage/references/visual-language.md +0 -74
  1041. package/skills/xingchen-vox-collage/references/visual-qa.md +0 -59
  1042. package/skills/youtube/SKILL.md +0 -147
  1043. package/skills/youtube/references/algorithm-guide.md +0 -59
  1044. package/skills/youtube/references/analytics-benchmarks.md +0 -67
  1045. package/skills/youtube/references/dataforseo-integration.md +0 -51
  1046. package/skills/youtube/references/monetization-guide.md +0 -62
  1047. package/skills/youtube/references/repurposing-guide.md +0 -54
  1048. package/skills/youtube/references/retention-scripting-guide.md +0 -75
  1049. package/skills/youtube/references/seo-playbook.md +0 -77
  1050. package/skills/youtube/references/shorts-playbook.md +0 -64
  1051. package/skills/youtube/references/thumbnail-ctr-guide.md +0 -73
  1052. package/skills/youtube-shorts-factory/SKILL.md +0 -358
  1053. package/skills/youtube-shorts-factory/resources/adaptation-guide.md +0 -133
  1054. package/skills/youtube-shorts-factory/resources/storyboard-template.md +0 -271
  1055. package/skills/youtube-shorts-factory/resources/workflow-steps.md +0 -139
  1056. package/studio/ui/dist/assets/ExportCenter-DEyy1vs_.js +0 -1
  1057. package/studio/ui/dist/assets/SettingsModal-CQmsA2A2.js +0 -2
  1058. package/studio/ui/dist/assets/es-AqUfIkAy.js +0 -1
  1059. package/studio/ui/dist/assets/index-C7moXjTY.css +0 -1
  1060. package/studio/ui/dist/assets/index-DdU5QNpY.js +0 -1623
  1061. package/studio/ui/dist/assets/ja-YwiCB4QQ.js +0 -1
  1062. package/studio/ui/dist/assets/ko-CKtBPDze.js +0 -1
  1063. package/studio/ui/dist/assets/zh-CN-DtNEwKWJ.js +0 -1
@@ -1,690 +0,0 @@
1
- # Teknik — resep efek yang sudah teruji
2
-
3
- Semua resep dinyatakan generik; angka adalah titik awal yang terbukti enak,
4
- bukan hukum. Font, warna, dan konten selalu milik brand user.
5
-
6
- ## Daftar isi
7
-
8
- 1. Tipografi hidup (split per huruf, penekanan & sorotan opsional, arah bergantian) + 1b. Kontras latar
9
- 2. Motion blur berarah (pembeda utama dari "web animation")
10
- 3. Kamera: push-through (opsional, termotivasi)
11
- 3b. Ukuran shot: kamera ke elemen (wide ↔ medium close-up ↔ close-up)
12
- 4. Kamera: pan 3D menyusur kalimat per kata
13
- 4b. Transisi antar adegan — hierarki yang benar
14
- 5. Light leak transisi
15
- 6. Glow yang benar (dan kapan tidak)
16
- 7. Latar Three.js: nebula, debu, grid, ornamen 3D, bloom
17
- 7b–7d. Latar terang & pergantian, gerak latar, permukaan latar (termasuk grainy gradient)
18
- 7e. Menu gaya render objek (flat, clay, glossy, kaca, isometrik, emas, garis neon)
19
- 8. Tile ikon & mockup UI
20
- 9. Ketikan / angka hidup yang deterministik
21
- 9b. Video sebagai layer footage (clip, sinkron timeline, ekspor)
22
- 10. Jebakan (bug yang pernah terjadi)
23
-
24
- ---
25
-
26
- ## 1. Tipografi hidup — resep yang berhasil vs yang gagal
27
-
28
- Dua pola yang sering muncul. Opener A terasa kaku: setiap
29
- judulnya KAPITAL SEMUA, satu font lebar bobot 800, selalu di tengah, masuk
30
- dengan stagger huruf yang sama, tanpa penekanan apa pun, tanpa variasi ukuran.
31
- Opener B terasa hidup: kalimat sentence case bobot 500, SATU kata kunci
32
- per kalimat di dalam pill yang mengembang dari kiri + sparkle, tanda baca
33
- muncul terpisah setelahnya, ukuran dan arah masuk bergantian tiap adegan,
34
- sebagian kalimat diletakkan di dekat objeknya (bukan selalu di tengah), dan
35
- adegan gelap bergantian dengan adegan terang. Resep B:
36
-
37
- > **Peringatan bentuk.** Di opener B, sorotannya berupa pill biru yang
38
- > mengembang dari kiri dengan bintang kecil (sparkle) di sudutnya. Itu
39
- > TANDA TANGAN proyek itu, bukan aturan. Yang jadi aturan hanya: kalimat
40
- > punya penekanan. Sorotan kata adalah SATU cara dan OPSIONAL — banyak opener
41
- > yang baik tanpa sorotan sama sekali (kata per kata redup → penuh, ukuran,
42
- > jeda, ikon/UI di samping kata). Bila dipakai, BENTUK dipilih di style brief
43
- > dan konsisten dalam satu video, tidak wajib di setiap kalimat; ORNAMEN
44
- > (bintang, titik, garis kilat) opsional dan diturunkan dari bentuk brand.
45
- > Dua proyek berbeda dengan pill + bintang yang sama = menyalin kulit.
46
-
47
- **Menu penekanan** (pilih satu per video; `tanpa` adalah pilihan sah):
48
-
49
- | Varian | Rasa | Cocok untuk |
50
- |---|---|---|
51
- | `tanpa` — tidak ada bidang/garis; kata per kata redup → penuh, ukuran, jeda, atau ikon/UI di samping kata | tenang, produk yang bicara | SaaS, AI, brand minimal, pengumuman fitur |
52
- | `pill` — blok warna mengembang dari kiri | tegas, produk digital | app, SaaS, tech |
53
- | `under` — garis bawah tebal menggambar dari kiri | editorial, tenang | finansial, produktivitas, jurnalistik |
54
- | `marker` — coretan stabilo miring, sedikit transparan | hangat, manusiawi | edukasi, komunitas, kuliner |
55
- | `box` — kotak garis tipis menggambar keliling | teknis, presisi | developer tools, hardware |
56
- | `color` — hanya warna kata berubah, tanpa bidang | mewah, minimal | fashion, properti, otomotif |
57
- | `strike` — garis coret lalu kata pengganti muncul | ironis, sebelum/sesudah | promo "bukan X, tapi Y" |
58
-
59
- **CSS**
60
- ```css
61
- .line{font-size:112px;font-weight:500;letter-spacing:-.015em;color:#fff;white-space:nowrap;
62
- text-shadow:0 4px 28px rgba(0,0,0,.5);line-height:1.1;opacity:0}
63
- .line.sm{font-size:74px}.line.md{font-size:92px}.line.lg{font-size:128px}
64
- .line.xl{font-size:150px;font-weight:600;letter-spacing:-.02em}
65
- .line.ink{color:var(--ink-dark);text-shadow:none} /* versi untuk adegan terang */
66
- .wd{display:inline-block;white-space:nowrap}
67
- .ch{display:inline-block;will-change:transform,opacity,filter;opacity:0}
68
- .txt2{display:inline-block;opacity:0} /* tanda baca OPSIONAL: hanya bila kalimat memang bertanda baca */
69
- /* kata sorotan: .hl + satu varian bentuk; <i> adalah bidang/garis yang digambar */
70
- .hl{position:relative;display:inline-block}
71
- .hl i{position:absolute;transform:scaleX(0);transform-origin:0 50%}
72
- .hl-t{position:relative;opacity:0}
73
- .hl.pill{padding:.02em .24em .04em;border-radius:.26em}
74
- .hl.pill i{inset:0;border-radius:inherit;background:linear-gradient(95deg,color-mix(in srgb,var(--accent) 70%,#000),var(--accent) 60%,var(--accent-lit))}
75
- .hl.pill .hl-t{color:#fff}
76
- .hl.under i{left:0;right:0;bottom:-.04em;height:.14em;border-radius:.07em;background:var(--accent)}
77
- .hl.marker i{left:-.1em;right:-.1em;top:.5em;bottom:-.02em;background:var(--accent);opacity:.55;transform:scaleX(0) rotate(-1.5deg)}
78
- .hl.box i{inset:-.06em -.14em;border:.04em solid var(--accent);border-radius:.12em;background:none}
79
- .hl.color .hl-t{color:var(--accent)} /* tanpa <i> */
80
- /* ornamen OPSIONAL — hanya bila bentuk brand memintanya; ganti path dengan bentuk brand */
81
- .hl-orn{position:absolute;width:.46em;height:.46em;right:-.22em;top:-.24em;fill:var(--accent-lit);opacity:0}
82
- ```
83
-
84
- **Markup** — hanya `.txt` yang di-split per huruf; sorotan dan tanda baca
85
- punya tween sendiri (contoh varian `under`, tanpa ornamen):
86
- ```html
87
- <h1 class="line md"><span class="txt">Capek ngetik</span>&nbsp;<span class="hl under" id="hl-a"><i></i><span class="hl-t">caption</span></span>&nbsp;<span class="txt">satu-satu</span><span class="txt2">?</span></h1>
88
- ```
89
-
90
- **JS** — empat pintu masuk/keluar + pill + tanda baca:
91
- ```js
92
- const inUp =(ch,el,at,{dur=.8,st=.024}={})=>{tl.fromTo(ch,{opacity:0,yPercent:60,scaleY:1.45},{opacity:1,yPercent:0,scaleY:1,duration:dur,ease:'power4.out',stagger:st,immediateRender:false},at);blurTween(tl,el,at,30,0,dur,VERT);};
93
- const inLeft=(ch,el,at,{dur=.75,st=.02}={})=>{tl.fromTo(ch,{opacity:0,xPercent:-45},{opacity:1,xPercent:0,duration:dur,ease:'power4.out',stagger:st,immediateRender:false},at);blurTween(tl,el,at,50,0,dur,{ease:'power4.out'});};
94
- const outUp =(ch,el,at,{dur=.4,st=.01}={})=>{tl.to(ch,{opacity:0,yPercent:-70,duration:dur,ease:'power2.in',stagger:st},at);blurTween(tl,el,at,0,45,dur+.1,{ease:'power2.in',...VERT});};
95
- const outLeft=(ch,el,at,{dur=.4,st=.01}={})=>{tl.to(ch,{opacity:0,xPercent:-60,duration:dur,ease:'power2.in',stagger:st},at);blurTween(tl,el,at,0,55,dur+.1,{ease:'power2.in'});};
96
- /* mark(): menggambar bidang/garis sorotan apa pun varian bentuknya, lalu memunculkan katanya; ornamen hanya bila ada */
97
- const mark=(hl,at)=>{const i=$('i',hl);if(i)tl.fromTo(i,{scaleX:0},{scaleX:1,duration:.5,ease:'power3.out',immediateRender:false},at);
98
- tl.fromTo($('.hl-t',hl),{opacity:0,yPercent:60},{opacity:1,yPercent:0,duration:.7,ease:'power4.out',immediateRender:false},at);
99
- const orn=$('.hl-orn',hl);if(orn)tl.fromTo(orn,{opacity:0,scale:.2,rotate:-40},{opacity:1,scale:1,rotate:0,duration:.5,ease:'back.out(2)',immediateRender:false},at+.22);};
100
- const popDot=(el,at)=>tl.fromTo(el,{opacity:0,yPercent:60},{opacity:1,yPercent:0,duration:.5,ease:'power4.out',immediateRender:false},at);
101
- ```
102
- Urutan satu kalimat dengan sorotan: `inUp(ch)` → 0,4–0,6 dtk kemudian `mark(hl)` →
103
- `popDot(txt2)` 0,25 dtk setelahnya — HANYA bila kalimatnya memang bertanda baca. Tanpa
104
- sorotan: pintu teks saja (mis. per kata atau redup → penuh); hapus span `.hl`, dan hapus
105
- `.txt2` bila kalimat tidak bertanda baca (default untuk judul dan klaim).
106
-
107
- **Aturan keras tipografi (dari kegagalan A):**
108
- 1. Sentence case, bobot 500–600. KAPITAL SEMUA + bobot 800 + font lebar
109
- hanya untuk SATU adegan penekanan, bukan semua.
110
- 2. Sorotan kata OPSIONAL — diputuskan di style brief, bukan bawaan. Bila
111
- dipakai: bentuk dari menu di atas, satu bentuk per video, tidak wajib di
112
- setiap kalimat, berbeda dari proyek sebelumnya; ornamen tidak default.
113
- Bila tidak: penekanan dari urutan kata, ukuran/bobot, redup → penuh, jeda,
114
- atau objek di samping kata. Yang ditolak tetap kalimat datar tanpa
115
- penekanan apa pun.
116
- 3. Dua adegan berturut-turut tidak boleh sama dalam: ukuran (sm/md/lg/xl),
117
- arah masuk (inUp/inLeft), posisi (tengah / dekat objek / kiri-atas).
118
- 4. Kalimat panjang dipecah dua baris dengan bobot berbeda (500 lalu 600),
119
- atau baris kedua jadi `.txt2` yang pop menyusul.
120
- 5. Judul, klaim, dan frase pendek DEFAULT TANPA TITIK (terutama ≤ 4 kata atau satu
121
- baris). Tanda baca hanya bila mengubah arti atau irama: `?` untuk pertanyaan
122
- sungguhan, titik untuk gaya dua kalimat pendek berturut-turut yang disengaja, `!`
123
- sangat jarang. Gayanya diputuskan sekali di style brief dan konsisten. Bila dipakai,
124
- tanda baca adalah elemen terpisah yang muncul terakhir (`.txt2` + `popDot`) — tetapi
125
- jangan menambah titik hanya karena resepnya punya `popDot`.
126
- 6. Teks yang menempel pada objek (mockup, kartu) diposisikan di sisinya
127
- (`.pos` + left/top), bukan dipaksa ke tengah di atas objek.
128
-
129
- ## 1b. Kontras: latar tunduk pada teks
130
-
131
- Contoh kegagalan: 96 batang cahaya putih dengan bloom aditif lebih
132
- terang daripada judulnya → huruf putih kehilangan tepi dan latar terasa
133
- ramai tanpa kontras. Aturan yang bisa diukur:
134
- - **Kantong teks**: di area teks, luminance latar ≤ 25 % (gelap) untuk
135
- teks putih, atau ≥ 80 % (terang) untuk teks ink. Bila latar ramai,
136
- letakkan `.pocket` (radial-gradient gelap 55 % → transparan) di bawah
137
- teks dan nyalakan bersama teksnya.
138
- - **Elemen latar apa pun (partikel, bentuk, tekstur, garis)**: warna diambil dari palet sisi GELAP (bukan
139
- putih), opacity ≤ .35 di dalam kantong teks, jumlah elemen terang yang
140
- terlihat ≤ 40, ukuran kecil. Bloom threshold tinggi (≥ .55) dan hanya
141
- untuk objek — bukan lapisan latar.
142
- - **Uji cepat**: potret frame saat judul penuh, ubah ke grayscale; kalau
143
- ada bagian latar seterang huruf, latar terlalu ramai. Kalau semua teks
144
- disembunyikan latar harus terasa TENANG, bukan "menarik".
145
- - **Irama gelap–terang**: selang-seling adegan gelap dan terang (mis. kartu
146
- "kertas" terang dengan teks ink) — kontras antar adegan lebih kuat
147
- daripada efek apa pun di dalam adegan.
148
-
149
- ## 2. Motion blur berarah — `feGaussianBlur` SVG
150
-
151
- `filter: blur()` CSS mengabur ke segala arah → terlihat "tidak fokus".
152
- Motion blur AE mengabur SEARAH gerak. `feGaussianBlur` menerima
153
- `stdDeviation="x y"` terpisah:
154
-
155
- ```js
156
- // buat <filter> sekali per tween, lebarkan kotaknya (default memotong ekor)
157
- f.setAttribute('x','-70%'); f.setAttribute('y','-70%');
158
- f.setAttribute('width','240%'); f.setAttribute('height','240%');
159
- // tween nilai 30→0 saat masuk, 0→50 saat keluar; sumbu ikut arah gerak
160
- blur.setAttribute('stdDeviation', `${v} ${v*0.08}`); // gerak horizontal
161
- ```
162
-
163
- Pasang filter saat tween mulai, LEPAS saat selesai (`filter:'none'`) —
164
- elemen yang terus memakai filter SVG dirasterisasi ulang tiap frame, mahal.
165
-
166
- ## 3. Kamera: push-through (opsional, termotivasi)
167
-
168
- Salah satu transisi dari menu §4c — jatah ±1 per video, hanya bila ada alasan
169
- (§4b), bukan transisi antar semua segmen. Tiga langkah pada rig `#world` (dunia utuh):
170
-
171
- ```js
172
- const camThrough = (atCut, {push=2.0, from=1.5, inDur=.5, outDur=.95,
173
- oOut='50% 50%', oIn='50% 50%'} = {}) => {
174
- tl.set(rig, {transformOrigin:oOut}, atCut-inDur);
175
- tl.to (rig, {scale:push, duration:inDur, ease:'power2.in'}, atCut-inDur);
176
- tl.set(rig, {transformOrigin:oIn, scale:from}, atCut);
177
- tl.to (rig, {scale:1, duration:outDur, ease:'power3.out'}, atCut);
178
- };
179
- ```
180
-
181
- - Dorong MASUK ke teks yang pergi (`power2.in` = makin cepat), cut,
182
- tarik MUNDUR dari teks baru yang lahir oversized (`power3.out`).
183
- - Lompatan scale di titik cut TIDAK terlihat karena terjadi saat frame
184
- kosong / tertutup light leak — sengaja, ini teknik filmnya.
185
- - `transformOrigin` menunjuk POSISI TEKS (tengah untuk hero; ~'50% 22%'
186
- untuk adegan yang teksnya di atas) — zoom harus menuju subjek.
187
- - Sinkron dengan kamera WebGL (`camZ`) menambah kedalaman, tapi rig DOM
188
- yang membawa perasaan "kamera".
189
-
190
- ## 3b. Ukuran shot — kamera ke elemen (supaya tidak statis)
191
-
192
- "Zoom in-out" dalam motion graphic berarti **pergantian ukuran shot**: kamera mendekat ke
193
- satu elemen yang sedang bercerita, lalu mundur lagi. Napas kamera beberapa persen (§4b)
194
- hampir tidak terlihat — itu lapisan dasar, bukan jawaban bila video terasa statis.
195
-
196
- **Kosakata shot** (skala dihitung dari ukuran elemen, bukan angka tetap)
197
- - **Wide** — seluruh komposisi terlihat; dipakai saat banyak elemen atau teks lebar perlu
198
- dibaca bersama.
199
- - **Medium close-up** — elemen utama beserta sedikit konteksnya; target mengisi kira-kira
200
- sepertiga sampai setengah frame.
201
- - **Close-up** — satu elemen atau detailnya mengisi sebagian besar frame; dipakai untuk
202
- penekanan, momen aksi, atau detail kecil yang harus terbaca.
203
-
204
- **Memilih target dan waktu**
205
- - Titik fokus = pusat elemen yang *sedang* bercerita: teks yang baru muncul, benda yang
206
- tiba, tombol yang diklik, detail yang disebut kalimat. Kamera menyambut, bukan mengejar.
207
- - Shot berganti mengikuti ketukan isi. Pola yang umum: dekat ke elemen A → mundur ke wide
208
- saat komposisi butuh seluruh frame → dekat ke elemen B. Variasikan ukuran; dua shot
209
- dengan ukuran sama berturut-turut terasa datar.
210
- - Dua tempo gerak: **perpindahan shot** (ringkas, ease in-out) dan **push pelan saat
211
- menahan** (lambat, ease sine) supaya hold tidak mati.
212
- - Di titik cut, kamera boleh langsung berada di close-up tanpa tween — adegan lahir dekat,
213
- lalu mundur. Video pun boleh dibuka sudah dalam close-up.
214
- - Penutup yang ditahan (logo, CTA) tetap diberi push pelan; jangan membeku.
215
- - Hindari bolak-balik dekat–jauh lebih cepat daripada pembaca sempat membaca atau
216
- melihat — terasa pusing. Teks muncul setelah kamera tiba, bukan di tengah perpindahan.
217
-
218
- **Rig**
219
- ```js
220
- const CAM = {s:1, fx:W/2, fy:H/2}; // skala + titik fokus (koordinat dunia)
221
- const shot = (at, dur, s, fx, fy, ease='power2.inOut') => tl.to(CAM, {s, fx, fy, duration:dur, ease}, at);
222
- const cutTo = (at, s, fx, fy) => tl.set(CAM, {s, fx, fy}, at); // lompat di titik cut
223
- // ukuran dari elemen: fill ≈ bagian frame yang diisi target (close-up besar, medium close-up sedang)
224
- const rectIn = (el, root) => { let x = 0, y = 0, n = el;
225
- while (n && n !== root) { x += n.offsetLeft; y += n.offsetTop; n = n.offsetParent; }
226
- return {x, y, w: el.offsetWidth, h: el.offsetHeight}; }; // elemen SVG: pakai getBBox()
227
- const frameOn = (el, fill) => { const r = rectIn(el, world);
228
- return [Math.max(1, Math.min(W * fill / r.w, H * fill / r.h)), r.x + r.w / 2, r.y + r.h / 2]; };
229
- // di render(t):
230
- function applyCam(t){
231
- const s = CAM.s * (1 + .01 * Math.sin(t * .7)); // napas halus di atas shot (opsional)
232
- let tx = W/2 - CAM.fx * s, ty = H/2 - CAM.fy * s;
233
- tx = Math.min(0, Math.max(W - W * s, tx)); ty = Math.min(0, Math.max(H - H * s, ty)); // tepi dunia tak tersingkap
234
- world.style.transform = `translate(${tx}px,${ty}px) scale(${s})`; }
235
- // contoh: shot(T, .8, ...frameOn($('#judul'), .6)); shot(T + 2, .7, 1, W/2, H/2);
236
- ```
237
- - Satu sistem skala per pembungkus: bila adegan memakai `shot()`, jangan sekaligus men-tween
238
- `scale` pada `#world` dari `breathe()`/push-through; tumpuk napas di dalam `applyCam`.
239
- Starter explainer sudah punya padanannya: `look()` = shot ke titik, `home()` = wide.
240
- - Dunia/latar harus lebih luas dari frame (overscan) supaya klem tepi tidak mengunci shot.
241
-
242
- **Lapisan**
243
- - Elemen yang merupakan bagian dunia ikut zoom. Label, caption, dan antarmuka layar
244
- diletakkan di lapisan layar (HUD) di luar rig, supaya tidak membesar atau terpotong tepi.
245
- - Kamera lokal boleh dipasang per babak (mis. mendekat ke area klik, atau reveal yang
246
- ditarik mundur dari skala besar) tanpa mengganggu kamera dunia. Getaran impact di
247
- pembungkus terpisah.
248
-
249
- **Periksa**
250
- - Potret di puncak tiap shot: teks tidak terpotong tepi, tepi dunia tidak tersingkap.
251
- - Aset raster cukup tajam untuk skala close-up (resolusi ≥ skala × ukuran tampil).
252
-
253
- ## 4. Pan 3D menyusur kalimat
254
-
255
- Untuk 1 (maks 2) segmen istimewa: satu kalimat LEBIH LEBAR dari frame,
256
- kamera menyusurinya, tiap kata bangun saat dilewati.
257
-
258
- ```js
259
- // x menaruh pivot di tengah frame; xPercent (relatif lebar kalimat)
260
- // membawa kamera — bebas dari lebar font aktual
261
- tl.set(line, {x:W/2, xPercent:-6, rotateY:10}); // parent: perspective
262
- tl.to (line, {xPercent:-94, duration:2.9, ease:'power1.inOut'});
263
- tl.to (line, {rotateY:-10, duration:2.9, ease:'power1.inOut'});
264
- // kata: dim → terang saat kamera lewat
265
- tl.fromTo(words, {opacity:.2, yPercent:16, scale:.96},
266
- {opacity:1, yPercent:0, scale:1, duration:.55, ease:'power2.out',
267
- stagger: panDur/(nKata-1) * 0.95});
268
- ```
269
-
270
- Kunci rasanya: kata di DEPAN kamera redup (~20%) menunggu, kata yang sudah
271
- dilewati tetap terang; `rotateY` berayun (bukan statis) supaya terasa dolly
272
- melengkung; kamera WebGL ikut geser `camX` searah untuk paralaks latar.
273
-
274
- ## 4b. Transisi antar adegan — hierarki yang benar
275
-
276
- Dua jenis transisi yang terasa murahan: whip translasi (menyingkap gap
277
- hitam, terbaca "pindah halaman"), dan spin/yaw/roll kejut (zoom tiba-tiba +
278
- blur adalah bahasa preset editor video, bukan motion design). Urutan yang benar:
279
-
280
- 1. **Kamera bernapas** (fondasi, selalu aktif): rig dunia drift zoom pelan
281
- `sine.inOut` ±4-5% per adegan, arah bergantian, dirantai tanpa lompatan.
282
- Kamera tidak pernah diam dan tidak pernah menyentak. Napas ini hanya lapisan
283
- dasar — tidak terbaca sebagai "zoom in-out"; untuk itu pakai ukuran shot (§3b).
284
- 2. **Koreografi elemen beririsan**: elemen adegan lama keluar (cepat,
285
- `power2.in`, blur berarah) SAMBIL elemen adegan baru masuk — irisan
286
- waktunya yang membuat perpindahan terasa hidup, bukan efek kameranya.
287
- 3. **Object wipe**: ornamen (bintang/bentuk brand) menyapu DEKAT lensa dan
288
- menutup frame tepat di titik cut; adegan berganti di baliknya. Resep:
289
- posisi z ≈ (camZ - 3), scale dunia ~2× tinggi-frame-pada-jarak-itu,
290
- lintasan diagonal `power1.inOut` ~1 detik, puncak skala tepat di cut,
291
- arah bergantian antar pemakaian. Awas tween lama yang masih menulis
292
- properti ornamen yang sama — ia membunuh wipe (cek overlap waktu).
293
- 4. **Zoom termotivasi**: push-through sebagai TRANSISI (jatah ±1 per video) HANYA
294
- bila ada alasannya — menyelam ke layar mockup, masuk ke lubang logo. Zoom tanpa
295
- motivasi terasa efek kejut. Jatah ini khusus zoom transisi: kamera yang mendekat
296
- ke area UI yang sedang diklik lalu mundur lagi adalah bahasa demo, bukan efek
297
- kejut, dan tidak dihitung jatah (§8 "Kamera mengikuti interaksi UI").
298
-
299
- Element-driven exit tetap resep bagus: elemen lama terbang MELEWATI lensa
300
- (scale ~2.2 + blur + stagger), kamera cuma menyusul halus (tanpa lompatan).
301
-
302
- ### 4c. Menu transisi — bukan balok persegi yang menyapu
303
-
304
- Kegagalan yang umum: "object wipe" berupa balok warna datar raksasa yang
305
- melintas miring terasa aneh dan murah, dan mudah terulang bila contoh menyebut
306
- wipe objek lebih dulu. Opener yang berhasil memakai kedalaman: push-through 3D, kartu kaca yang berputar masuk, tile
307
- yang `rotateY` dari kedalaman, elemen yang melewati lensa dengan ketebalan.
308
- Pilih dari menu ini; dalam satu video minimal DUA jenis, minimal SATU yang
309
- berkedalaman (3D/perspektif), dan wipe paling banyak dua kali:
310
-
311
- | # | Transisi | Cara | Rasa |
312
- |---|---|---|---|
313
- | 1 | Push-through 3D | `camThrough` + lapisan dengan `translateZ` berbeda (perspective 1400px) sehingga lapisan depan lewat lebih cepat | menyelam ke dunia |
314
- | 2 | Kartu/objek berputar masuk (`rotateY` −35° → 0, `perspective`) | objek berikutnya datang dari kedalaman sambil berputar, yang lama pergi sebaliknya | premium, taktil |
315
- | 3 | Objek melewati lensa dengan KETEBALAN | logo ekstrusi/kartu kaca/tile 3D (bukan persegi datar) membesar 1 → 2,5×, blur berarah, frame tertutup sesaat | sinematik |
316
- | 4 | Sapuan cahaya (light leak / bloom through) | cahaya menutup 40–60 % frame di titik cut, bukan 100 % | lembut |
317
- | 5 | Mask reveal lewat bentuk brand | adegan baru terlihat lewat lubang berbentuk logo/huruf yang membesar (`clip-path`/`mask`) | brand kuat |
318
- | 6 | Whip dengan blur berarah | dunia bergeser 120–200 px + blur 18 px, 0,3 dtk, ke arah yang berganti | energik |
319
- | 7 | Rack focus / kedalaman | adegan lama diblur & diperkecil ke belakang, adegan baru tajam dari depan | naratif |
320
- | 8 | Koreografi beririsan tanpa cut | elemen lama keluar cepat sementara elemen baru sudah masuk; kamera bernapas terus | mengalir |
321
- | 9 | Ganti latar di balik #1–#5 | pergantian gelap↔terang/blok warna terjadi saat frame tertutup | segmen baru |
322
-
323
- Ditolak sebagai default: persegi/balok warna datar yang menyapu penuh
324
- frame, garis tipis menyapu, dan satu jenis transisi yang diulang di semua
325
- cut. Wipe boleh hanya bila objeknya bermakna dan punya kedalaman (kartu
326
- kaca, logo ekstrusi, tile), bukan bidang datar.
327
-
328
- Transisi tanpa cut yang dibawa objek (benda adegan baru menjadi wipe, keluar dari
329
- layar, match cut bentuk + ganti gaya render, tarik mundur menyingkap tujuan, tangan
330
- penjemput, menembus simbol, parade mendorong, putar tipis → kartu warna membuka,
331
- halaman naik bertumpuk, titik tumbuh, wadah mekar/menyusut, hasil menjauh jadi
332
- kalimat, zoom ke potongan UI, meredup lalu berganti, hapus-ketik) ada di `opener-konsep.md` → "Menu transisi yang
333
- dibawa benda". Medan warna palet yang MENJADI latar babak berikutnya — logo tetap di
334
- tempat dan berbalik warna di garis medan — bukan balok dekoratif yang lewat: boleh,
335
- paling banyak dua kali per video.
336
-
337
- ## 5. Light leak transisi
338
-
339
- Bukan garis cahaya menyapu (terlihat murahan), tapi bola cahaya lembut yang
340
- merembes dari tepi, bergantian kiri/kanan:
341
-
342
- - div bulat ±2400px, radial-gradient inti terang → transparan, `blur(64px)`,
343
- `mix-blend-mode:screen`, **di lapisan PALING ATAS** (di atas vignette;
344
- ia cahaya di depan lensa, bukan properti dunia)
345
- - masuk `sine.in` 40% durasi → keluar `sine.out` 60%; drift diagonal pelan
346
- - warnai sesuai aksen brand
347
-
348
- ## 6. Glow yang benar
349
-
350
- Pelajaran yang mahal: **glow di semua judul = teks kusam dan norak**.
351
-
352
- - Judul: putih penuh + `text-shadow: 0 4px 28px rgba(0,0,0,.5)` saja
353
- (drop shadow keterbacaan, bukan glow).
354
- - Glow disimpan untuk OBJEK produk: tile/kartu (rim border terang + inner glow
355
- naik dari bawah), mockup, ornamen, bar spektrum — objek yang memang ada di konsep.
356
- - Elemen realistis (baris app store, tombol) TANPA glow sama sekali —
357
- makin realistis elemennya, makin salah glow-nya.
358
- - Bloom WebGL: `threshold ≥ 0.5`. Threshold rendah membuat latar ikut mekar
359
- dan seluruh frame putih (sudah pernah terjadi).
360
-
361
- ## 7. Latar Three.js
362
-
363
- Lapisan dari belakang ke depan, semua diikat `state`:
364
-
365
- - **Nebula**: plane fbm-noise shader, `NormalBlending` (JANGAN additive —
366
- menumpuk lewat bloom → putih), gradasi vertikal: `exp(-((y-0.02)*3.4)^2)`
367
- menyalakan horizon, atas diredupkan ~70%. Ini penangkal "latar flat".
368
- - **Debu**: 1000–1500 `Points`, ukuran ∝ 1/z, kelip via sinus per-seed.
369
- - **Grid lantai**: shader `fwidth`-antialiased, fade JAUH sebelum horizon
370
- (garis yang bertemu di horizon menumpuk jadi pita terang memotong teks);
371
- opasitas per adegan 0.2–0.6, jangan lebih.
372
- - **Ornamen 3D** (bintang ✦, bentuk brand): `Shape` + kurva cekung →
373
- `ExtrudeGeometry` + bevel, `MeshStandardMaterial` + DirectionalLight —
374
- Basic material terlihat flat, dan flat = PPT. Goyangkan sumbu Y dengan
375
- sinus ±0.55 rad, JANGAN putar penuh (benda pipih dilihat dari samping =
376
- sebatang garis). Satu ornamen "hero" melintas cepat saat transisi.
377
- - **Tunnel/rush**: partikel PENDEK (len 0.8–2.5), warna gelap-sedang,
378
- ≤300 buah, opasitas ≤0.6 — versi garis panjang putih terlalu ramai
379
- dan membuat teks tidak kontras.
380
- - **Bloom**: `UnrealBloomPass(strength .75–.95, radius .7, threshold .52)`,
381
- + denyut kecil mengikuti beat.
382
- - **Kamera WebGL**: dolly `camZ` per adegan + handheld sway sinus lambat +
383
- shake beat via sinus frekuensi tinggi.
384
-
385
- Gradient tambahan yang murah: div `mix-blend-mode:screen` berisi
386
- radial-gradient aksen di bawah-tengah, DI DALAM rig `#world`.
387
-
388
- ## 7b. Latar terang & pergantian latar antar adegan
389
-
390
- Latar WebGL gelap di §7 hanya satu bahasa. Salah satu opener yang diterima
391
- berganti latar mengikuti segmennya: dasar gelap untuk masalah → terang
392
- untuk solusi → kembali gelap untuk penekanan → blok warna untuk CTA. Itu
393
- CONTOH, bukan templat: terang bisa gradien lembut dua warna palet, warna
394
- pastel flat dengan blob, blok warna solid, kertas bertekstur, atau foto
395
- dengan gradasi. Resep versi terang (kertas dan gradien memakai CSS yang
396
- sama, cukup ganti `background`):
397
-
398
- ```css
399
- .paper{position:absolute;inset:0;opacity:0;visibility:hidden;
400
- background:linear-gradient(180deg,#F7FAFF 0%,#EEF4FF 55%,#E6EEFF 100%)}
401
- .paper .b{position:absolute;border-radius:50%;pointer-events:none} /* blob warna lembut, ikut palet */
402
- .paper .b1{left:-260px;top:-380px;width:1100px;height:1100px;background:radial-gradient(circle,color-mix(in srgb,var(--accent-lit) 38%,#fff) 0%,transparent 68%)}
403
- .paper .b2{left:1180px;top:520px;width:1000px;height:1000px;background:radial-gradient(circle,color-mix(in srgb,var(--accent) 22%,#fff) 0%,transparent 66%)}
404
- .line.ink{color:#0B1B33;text-shadow:none} /* teks untuk latar terang */
405
- ```
406
- ```js
407
- /* ganti latar DI BALIK cut/wipe: frame sedang tertutup, lompatan tak terlihat */
408
- tl.set('#paper',{autoAlpha:1},atCut); tl.to('#gl',{opacity:0,duration:.25},atCut);
409
- tl.to('.vignette',{opacity:.35,duration:.4},atCut); tl.to('.bgfx',{opacity:0,duration:.25},atCut);
410
- tl.to('.paper .b',{x:60,y:-40,duration:3,ease:'sine.inOut',yoyo:true,repeat:1,stagger:.4},atCut); // blob hidup
411
- /* di t=0 (loop): kembalikan semuanya */
412
- tl.set('#paper',{autoAlpha:0},0); tl.set(['#gl','.vignette','.bgfx'],{opacity:1},0);
413
- ```
414
- Kapan berganti: kapan pun dibutuhkan, direncanakan di style brief — mood
415
- atau topik segmen berubah (masalah → solusi, klaim → produk, isi → CTA),
416
- brand warna-warni menuntut ritme warna (medan warna palet bergantian), atau
417
- aksi di layar mengubahnya (toggle dinyalakan, benda menutup lensa, ikon
418
- membesar memenuhi frame). Bumper pendek atau opener satu mood boleh satu
419
- warna latar, tetapi latar itu tetap BERGERAK (§7c) — latar diam ditolak.
420
- Yang tidak sah: latar yang tidak pernah dipertimbangkan (gelap otomatis
421
- karena starter-nya gelap) dan pergantian tanpa pemicu. Bila berganti: di
422
- titik cut/ketukan, di balik wipe/benda (camThrough/wipe/leak), atau sebagai
423
- akibat aksi di layar — tidak pernah cross-fade tanpa sebab; teks ganti
424
- varian (`.ink`) dan kantong gelap (`.pocket`) dimatikan di adegan terang;
425
- vignette diringankan (0,3–0,4), bloom WebGL dimatikan. Gradien terang
426
- contoh: `background:linear-gradient(160deg,color-mix(in srgb,var(--accent-lit) 30%,#fff),#fff 55%,color-mix(in srgb,var(--accent) 14%,#fff))`.
427
-
428
- ## 7c. Menu gerak latar — "gerak tiap detik" bukan berarti benda melintas
429
-
430
- Kegagalan yang umum: opener untuk produk berbeda sama-sama memakai
431
- batang/potongan cahaya yang melesat ke samping, karena aturan "gerak harus
432
- ada di dunia (objek melintas) tiap detik" dibaca sempit — model memilih cara
433
- termurah lalu mencari alasannya dari produk. Gerak latar dipilih di style brief dari
434
- menu ini, dan harus berbeda dari proyek sebelumnya:
435
-
436
- | # | Bahasa gerak latar | Rasa | Catatan |
437
- |---|---|---|---|
438
- | 1 | Latar bertekstur + kamera bernapas + satu gerak halus (tint/cahaya/grain bergeser pelan) | tenang, mahal | pilihan paling tenang yang masih sah; latar yang benar-benar diam ditolak |
439
- | 2 | Gradien besar yang berpindah/berputar pelan (2–3 warna palet) | lembut, modern | `background-position`/sudut di-tween 8–15 dtk |
440
- | 3 | Blob warna mengambang (2–4 lingkaran blur) | ramah, ringan | ikut palet; drift ±60 px, 4–6 dtk |
441
- | 4 | Grain/tekstur kertas yang hidup (offset mask per frame dari t) | organik, cetak | jangan noise acak — offset dari `t` |
442
- | 5 | Sapuan cahaya SEKALI per segmen (light sweep) | premium | bukan sapuan terus-menerus |
443
- | 6 | Bentuk geometris besar (lingkaran/garis/logo negatif) berputar 20–40 dtk per putaran, 2 lapis parallax | brand, kuat | bentuk dari logo/tema |
444
- | 7 | Partikel NAIK pelan (debu, gelembung, percik) | hangat, hidup | bukan horizontal; opacity ≤ .35 di kantong teks |
445
- | 8 | Grid/pola yang bernapas (skala/opacity 1.0↔1.04, 6–10 dtk) | teknis, presisi | tanpa scroll |
446
- | 9 | Teks hantu raksasa bergeser lambat di belakang | editorial | kontras rendah ≥ .12, satu gaya |
447
- | 10 | Foto/ilustrasi tema dengan Ken Burns + parallax 2 lapis | naratif | butuh gradasi gelap di sisi teks |
448
- | 11 | Aliran horizontal (streak/lane/range/hujan partikel) | kecepatan, data | HANYA bila tema = kecepatan/aliran; sudah dipakai dua proyek berturut → hindari kecuali dengan cara yang jelas baru |
449
- | 12 | Medan warna palet bergantian (sapuan/snap 0,15–0,3 dtk, dipicu benda, aksi UI, atau ketukan) | pop, energik | untuk brand warna-warni; tiap medan diisi bentuk flat/objek yang bergerak |
450
-
451
- Aturan: satu bahasa per opener (boleh dua bila latar berganti antar
452
- segmen), ditulis di style brief pada baris "gerak latar", terpisah dari
453
- "tanda tangan gerak" (yang menggerakkan OBJEK/teks, bukan latar). Menu ini
454
- juga berlaku untuk latar WebGL §7: nebula yang berdrift pelan + kamera bernapas
455
- adalah #1, debu naik adalah #7; "tunnel/rush" adalah #11. Latar tidak pernah
456
- diam di adegan mana pun; pergantian warna latar (§7b) boleh ditambahkan di atas
457
- bahasa gerak mana pun.
458
-
459
- ## 7d. Menu permukaan latar — gradien, cahaya, tekstur (jangan flat)
460
-
461
- "Gelap ≤ 25 % / terang ≥ 80 % di bawah teks" adalah aturan KANTONG TEKS,
462
- bukan perintah membuat seluruh latar flat satu warna. Opener yang diterima
463
- memakai latar yang kaya: gelap dengan glow radial di horizon, terang dengan
464
- gradien lembut dan blob warna palet. Menu (semua dari token palet; nilai
465
- bebas diubah):
466
-
467
- ```css
468
- /* a. glow horizon (gelap) */ background:radial-gradient(70% 42% at 50% 108%,color-mix(in srgb,var(--accent) 34%,transparent),color-mix(in srgb,var(--accent) 12%,transparent) 48%,transparent 70%),linear-gradient(180deg,#05060a,var(--base) 60%,#0b1020);
469
- /* b. duotone diagonal */ background:linear-gradient(160deg,color-mix(in srgb,var(--accent) 55%,#000) 0%,var(--base) 45%,color-mix(in srgb,var(--accent-lit) 30%,#000) 100%);
470
- /* c. mesh terang (blob) */ background:#F7FAFF; + 3–4 <i> radial-gradient(circle,color-mix(in srgb,var(--accent-lit) 38%,#fff),transparent 66%) berukuran 800–1200 px, drift ±60 px
471
- /* d. spotlight + tint */ background:radial-gradient(55% 60% at 50% 40%,color-mix(in srgb,var(--accent) 18%,var(--base)),var(--base) 75%);
472
- /* e. langit berlapis */ background:linear-gradient(180deg,#cfe0f5 0%,#f5efe3 100%); + pita warna tipis 2–3 lapis dengan opacity .2–.4
473
- /* f. tekstur + tint */ kertas/grain (feTurbulence) di atas a/b/c dengan mix-blend-mode:multiply/overlay, opacity .1–.3
474
- /* g. grainy gradient */ gradien jenuh 2–3 warna di BENTUK dan latar + lapisan butiran halus di atas semuanya (resep di bawah)
475
- ```
476
- Aturan: flat satu warna hanya untuk arah "poster color-block" (diberi
477
- grain/tekstur halus) dan "flat pop berfoto" (medan flat sah karena berganti
478
- cepat dan selalu diisi bentuk flat/objek yang bergerak). Setiap latar punya ≥ 2 lapis (dasar + cahaya/
479
- tekstur/blob). Warna latar dari palet tema, bukan hitam/putih murni.
480
-
481
- ### Grainy gradient (gradien berbutir)
482
-
483
- Istilah populernya *grainy gradient* atau *noisy gradient*: gradien warna jenuh yang
484
- lembut ditambah butiran halus merata. Butiran membuat gradien terasa cetak/analog, dan
485
- sekaligus menjadi dither yang mencegah banding (garis tangga) saat video dikompres.
486
-
487
- **Ciri gaya**
488
- - Gradien diletakkan DI BENTUK, bukan hanya di latar: lingkaran, lengkung, lubang,
489
- kelopak, lapisan konsentris. Tiap bentuk bercahaya dari dalam lalu memudar ke warna
490
- dalam/gelap; tepinya tetap tajam, isinya lembut.
491
- - Palet 2–3 warna yang berjauhan (mis. biru ↔ oranye, teal ↔ krem, ungu ↔ merah muda) di
492
- atas dasar gelap atau warna dalam.
493
- - Butiran monokrom halus di seluruh frame (latar DAN objek), intensitas sama di terang
494
- dan gelap — bukan bintik besar, bukan debu.
495
- - Gerak tenang: lapisan membuka/berputar pelan, kamera menembus lubang bentuk, satu bola
496
- cahaya kecil memandu mata.
497
-
498
- **Resep**
499
- ```html
500
- <svg width="0" height="0" style="position:absolute"><filter id="grain" x="0" y="0" width="100%" height="100%">
501
- <feTurbulence type="fractalNoise" baseFrequency=".8" numOctaves="3" stitchTiles="stitch"/>
502
- <feColorMatrix type="saturate" values="0"/></filter></svg>
503
- <div class="grain" id="grain"></div> <!-- lapisan teratas, di atas latar dan objek -->
504
- ```
505
- ```css
506
- .shape{background:radial-gradient(60% 60% at 50% 30%,var(--c-lit),var(--c-mid) 45%,var(--c-deep) 100%)}
507
- .grain{position:absolute;inset:-60px;pointer-events:none;filter:url(#grain);opacity:.22;mix-blend-mode:overlay}
508
- ```
509
- ```js
510
- /* butiran hidup yang deterministik: posisi melompat 12× per detik dari t, bukan Math.random */
511
- const grainAt=t=>{const k=Math.floor(t*12);grainEl.style.transform=`translate(${k*37%60-30}px,${k*61%60-30}px)`;};
512
- ```
513
- - Latar gelap: overlay/soft-light, opacity .15–.3. Latar terang: multiply, opacity .08–.15.
514
- - `baseFrequency` .65–.9 pada 1920×1080 memberi butiran 1–2 px; lebih halus dari itu
515
- hilang saat encode.
516
- - WebGL: tambahkan di akhir fragment shader
517
- `col += (hash(gl_FragCoord.xy + floor(uTime*12.)) - .5) * .06;` — lebih ringan daripada
518
- filter SVG layar penuh.
519
- - Preview real-time berat dengan filter SVG layar penuh: buat sekali tile noise 256 px di
520
- canvas lalu pakai sebagai `background-image` berulang. Untuk render per frame keduanya aman.
521
-
522
- **Jaga-jaga**
523
- - Butiran dan gradien halus rusak oleh kompresi: encode dengan `-crf 10–12 -tune grain`
524
- (libx264) atau bitrate tinggi, lalu periksa MP4-nya — bukan hanya browser. Video yang
525
- diunggah ulang di resolusi rendah kehilangan butiran dan memperlihatkan banding; butiran
526
- yang sedikit lebih besar lebih tahan.
527
- - Kantong teks tetap diuji kontras; teks kecil boleh diletakkan di atas lapisan grain supaya
528
- hurufnya tidak tampak kotor.
529
- - Grainy gradient adalah kulit, bukan kerangka: konsep dan transisi tetap dari
530
- `opener-konsep.md`.
531
-
532
- ## 7e. Menu gaya render objek — satu keluarga per video
533
-
534
- Objek (ikon, benda, maskot, perangkat) bisa dirender dengan banyak bahasa material.
535
- Pilih satu keluarga per video, atau dua bila pergantiannya dijadikan momen (bentuk flat
536
- berputar dan ternyata benda 3D). Mencampur tanpa alasan terasa seperti kumpulan aset stok.
537
-
538
- | Gaya render | Ciri | Cara di web | Cocok untuk |
539
- |---|---|---|---|
540
- | Flat solid | isi warna rata, tanpa bayangan, bentuk geometris | SVG/CSS | app konsumen, edukasi, infografik |
541
- | Flat + titik warna | lingkaran palet berbagai ukuran tersebar, bergerak elastis di sekitar objek | SVG + GSAP | brand ceria, logo reveal |
542
- | Soft 3D / clay | matte pastel, sudut membulat tebal, bayangan lembut | Three.js `MeshStandardMaterial` roughness .7–.9, atau gambar hasil generator | fintech ramah, edukasi, produktivitas |
543
- | Glossy 3D | plastik mengilap, rim light, pantulan lingkungan | `MeshPhysicalMaterial` clearcoat 1 + envMap | tech, keamanan, gaming |
544
- | Kaca / bola bercahaya | transparan, pembiasan, inti bercahaya | `MeshPhysicalMaterial` transmission 1 + bloom kecil | AI, portal, pemandu mata |
545
- | Isometrik | sudut 30°, tanpa perspektif, blok rapi | transform isometri CSS atau kamera ortografik | properti, SaaS, peta proses |
546
- | Logam/marmer realistis | PBR, kedalaman bidang, gelap sinematik | Three.js PBR + HDRI + DOF, atau render/generator diimpor sebagai lapisan | penghargaan, mewah, event |
547
- | Garis neon di gelap | outline tipis bercahaya, lengkung/bingkai berlapis | SVG stroke + glow tipis, atau garis Three.js | tech, musik, portal |
548
- | Ilustrasi karakter flat | tokoh vektor, warna hangat, tekstur tipis | SVG/PNG berlapis | komunitas, layanan, explainer |
549
-
550
- - Objek realistis (logam, marmer, perangkat) paling efisien dibuat sebagai gambar/video dari
551
- generator atau render 3D, lalu dianimasikan sebagai lapisan (parallax, masuk/keluar, DOF
552
- palsu) — jangan memaksa Three.js bila hasilnya jauh di bawah.
553
- - Gaya render ditulis di style brief dan berbeda dari proyek sebelumnya.
554
-
555
- ## 8. Tile ikon & mockup UI
556
-
557
- **Tile ikon** (SATU opsi menyajikan fitur, bukan default — menu lengkap di
558
- `opener-konsep.md`; jumlah mengikuti fitur, tidak selalu tiga): rounded-square ±210px, rim border
559
- aksen terang 2px, inner glow naik dari bawah (radial di 50% 115%), ikon
560
- stroke putih 3.5–4.5 + `drop-shadow`, label 1–2 kata di bawah. Masuk
561
- `back.out(1.9)` stagger 0.15.
562
-
563
- **Mockup UI**: bezel `border-radius` besar + layar `overflow:hidden`;
564
- isi mockup memakai FONT & WARNA PRODUK ASLI (bukan font display) — mockup
565
- dinilai sebagai "aplikasinya", bukan dekorasi. Elemen hidup di dalamnya
566
- (spektrum, angka, sparkline) digerakkan dari sumber data yang sama dengan
567
- latar 3D supaya konsisten. Masuk sebagai OBJEK (naik dari bawah frame,
568
- rotateY ±10–24° dengan parent `perspective`), bukan sebagai kolom layout.
569
-
570
- **Animasi UI app/SaaS** — UI dirakit dari komponen, dipakai (kursor/jari/aksi UI), data
571
- hidup, dan transisi yang dibawa UI (panel mekar, lencana menyusut, karusel jendela):
572
- panduan layout-warna-ritme dan menu gerak di `opener-konsep.md` bagian "Animasi UI
573
- untuk app & SaaS".
574
-
575
- **Kamera mengikuti interaksi UI** — supaya demo tidak statis dan jelas apa yang diklik.
576
- UI penuh di frame dengan hanya kursor yang bergerak terasa seperti rekaman layar diam, dan
577
- klik yang kecil tidak terbaca. Bila sebuah klik penting untuk cerita, kamera ikut:
578
-
579
- 1. **Dekati sebelum klik**: 0,3–0,5 dtk sebelum kursor tiba, kamera zoom ke area target
580
- (scale 1,4–2,2, `power2.inOut` 0,6–0,9 dtk); target sedikit di atas tengah frame.
581
- 2. **Klik terbaca**: kursor berhenti ±0,2 dtk, tombol tertekan (scale .92 → 1), sorot
582
- tipis pada tombol; kamera nyaris diam saat klik.
583
- 3. **Ikuti hasilnya**: kamera mundur ke lebar atau bergeser ke panel yang berubah
584
- (0,7–1 dtk), tidak melompat.
585
- 4. **Pilih, jangan semua**: 1–3 klik penting per babak mendapat zoom; klik lain cukup di
586
- kamera lebar atau pan pelan. Adegan UI yang memang tenang (dasbor dipamerkan, data
587
- mengisi) boleh tanpa zoom. Hindari zoom masuk-keluar bolak-balik lebih cepat dari
588
- ±1,5 dtk — terasa pusing.
589
- 5. Halus, tanpa blur radial — berbeda dari zoom hentak.
590
-
591
- ```js
592
- /* ui = pembungkus seluruh UI + kursor (position:relative; transform-origin:0 0), berada di dalam
593
- frame ber-overflow:hidden. target = elemen di dalam ui (ui sebagai offsetParent). */
594
- const camTo=(ui,target,at,{s=1.8,dur=.8,fy=.45}={})=>{
595
- const W=ui.offsetWidth,H=ui.offsetHeight;
596
- const cx=target.offsetLeft+target.offsetWidth/2, cy=target.offsetTop+target.offsetHeight/2;
597
- tl.to(ui,{x:W/2-cx*s,y:H*fy-cy*s,scale:s,duration:dur,ease:'power2.inOut'},at);};
598
- const camWide=(ui,at,dur=.9)=>tl.to(ui,{x:0,y:0,scale:1,duration:dur,ease:'power2.inOut'},at);
599
- /* pola: camTo(ui,btn,T-.5) → klik di T → camWide(ui,T+.6) atau camTo(ui,panelBaru,T+.6,{s:1.3}) */
600
- ```
601
- Kursor berada DI DALAM `ui` supaya ikut membesar bersama tombolnya. Target yang bersarang
602
- dalam elemen ber-posisi lain: hitung posisinya dengan menjumlahkan `offsetLeft/Top` sampai `ui`.
603
-
604
- ## 9. Ketikan & angka hidup (deterministik)
605
-
606
- Ketikan untuk teks yang memang diketik di dunia konsep (pesan, perintah, pencarian
607
- yang jadi inti produk) — bukan kotak input yang ditaruh di setiap opener.
608
-
609
- - Ketikan: `tl.fromTo(o,{i:0},{i:n, ease:'none', onUpdate: el.textContent =
610
- str.slice(0, Math.round(o.i))})` — BUKAN setInterval.
611
- - Uptime/counter: `f(t) = base + (t - tStart)`, format di render loop.
612
- - Sparkline/spektrum: jumlah sinus berbeda frekuensi atas `t` — murah,
613
- terlihat organik, dan reproducible.
614
-
615
- ## 9b. Video sebagai layer footage
616
-
617
- Motion graphic tidak hanya gambar dan shape: klip video bisa menjadi layer seperti footage
618
- di After Effects — dipotong, diposisikan, di-mask, di-grade, dan dianimasikan bersama elemen
619
- lain. Semua starter sudah membawa helper `clip()`.
620
-
621
- **Kapan video lebih kuat daripada gambar**
622
- - Gerak nyata yang menjadi bukti: rekaman layar produk, orang memakai produk, proses yang
623
- berjalan, suasana tempat.
624
- - Satu momen penekanan 3–8 dtk — bukan pengganti seluruh motion design. Teks, angka,
625
- anotasi, dan transisi tetap dianimasikan di atas/sekitar klip.
626
- - Bila gambar diam cukup menjelaskan, pakai gambar (lebih ringan, ekspor lebih cepat).
627
-
628
- **Sumber klip** (ditanyakan ke user, sama seperti foto — `opener-konsep.md` "Foto dalam opener")
629
- - File dari user (prioritas): rekaman layar produk, B-roll brand, footage acara.
630
- - Generate lewat MCP Higgsfield bila disetujui — cek biaya dulu (klip video jauh lebih mahal
631
- daripada gambar). Paling konsisten: generate gambar dengan gaya proyek, lalu image-to-video.
632
- - Stok berlisensi. Konteks faktual (berita, sejarah, data): klip hasil generate diberi label
633
- "ilustrasi/rekonstruksi" — jangan disajikan sebagai rekaman asli; wajah orang nyata tidak
634
- di-generate.
635
-
636
- **Format**
637
- - MP4 H.264 (`yuv420p`, `+faststart`) atau WebM VP9; tanpa suara (musik/VO tetap trek
638
- terpisah); 720p–1080p; potong ke bagian yang dipakai supaya ringan.
639
- ```bash
640
- ffmpeg -i sumber.mov -ss 2 -t 6 -vf "scale=1920:-2" -c:v libx264 -pix_fmt yuv420p -crf 20 -movflags +faststart -an assets/klip.mp4
641
- ```
642
- - Deliverable menjadi `index.html` + folder `assets/` berisi klip; sebutkan itu ke user.
643
-
644
- **Pola pemakaian** (animasikan PEMBUNGKUS, bukan `<video>`-nya)
645
- - Di dalam perangkat: layar laptop/ponsel di opener SaaS; kamera menembus ke layar.
646
- - Di dalam wadah: kartu foto, bingkai membulat, lingkaran, huruf raksasa (`clip-path`/mask).
647
- - Belahan layar: video di satu sisi, klaim/angka di sisi lain.
648
- - Layar penuh dengan lapisan di atasnya: grade/tint palet (`filter` atau lapisan
649
- `mix-blend-mode`), vignette, teks di kantong kontras (§1b).
650
- - Waktu: potong `in/out`, `rate` untuk slow/fast motion, `hold` untuk freeze frame akhir.
651
- - Transisi masuk/keluar sama seperti elemen lain (wipe benda, kartu membesar, match cut).
652
-
653
- **API helper** (ada di semua starter, setelah baris `window.OPENER=`)
654
- ```html
655
- <div class="clipbox" id="box1"><video id="v1" src="assets/klip.mp4" muted playsinline preload="auto"></video></div>
656
- ```
657
- ```js
658
- clip($('#v1'), {at:4, in:1.5, out:6, rate:1, hold:false}); // at = detik timeline; in/out = potongan sumber
659
- tl.set('#box1', {autoAlpha:1}, 4); // tampilkan pembungkus saat klip mulai
660
- tl.fromTo('#box1', {scale:.8}, {scale:1, duration:1, ease:'power3.out', immediateRender:false}, 4);
661
- ```
662
- - Isi video mengikuti jam timeline: saat diputar disinkronkan (koreksi bila selisih > 0,2 dtk),
663
- saat scrub/pause di-seek tepat. Jangan pakai atribut `autoplay`/`loop` dan jangan
664
- memanggil `play()` sendiri.
665
- - `OPENER.seekFrame(t)` men-seek timeline DAN menunggu frame klip siap; `snap.mjs` dan
666
- `export-frames.mjs` memakainya otomatis, dan menunggu `OPENER.clipsReady()` sebelum mulai.
667
- - Sembunyikan pembungkus di luar rentang klip (`autoAlpha`) — di luar rentang, video dijeda.
668
-
669
- **Jaga-jaga**
670
- - Paling banyak 2–3 klip tampil bersamaan; klip besar yang tak terlihat tetap di-decode.
671
- - Ekspor MP4 lebih lambat karena tiap frame menunggu decoder video.
672
- - Selisih ±1 frame saat diputar real-time itu wajar; hasil ekspor tetap presisi frame.
673
- - Periksa hasil dengan `snap.mjs` di detik yang ada klipnya, bukan hanya di browser.
674
-
675
- ## 10. Jebakan
676
-
677
- | Gejala | Sebab | Obat |
678
- |---|---|---|
679
- | Seluruh frame putih menyala | bloom threshold rendah + additive layers | threshold ≥.5; latar NormalBlending |
680
- | Elemen muncul mendahului animasinya | selector CSS lebih spesifik dari state-awal `opacity:0` | jangan tulis opacity di selector spesifik; GSAP yang beri nilai akhir |
681
- | Edit JS "tidak ngefek" | browser cache module (heuristic) | server `Cache-Control: no-store` |
682
- | Ornamen 3D jadi garis putih | benda pipih diputar penuh sumbu Y | goyangan sinus, bukan rotasi penuh |
683
- | Ekor blur terpotong kotak | filter region default 110% | x/y -70%, width/height 240% |
684
- | Teks "gelap/kusam" | tumpukan glow menghisap kontras | hapus glow judul, putih penuh |
685
- | Pita terang memotong teks di horizon | garis grid menumpuk di titik temu | fade grid sebelum horizon |
686
- | Scrub menghasilkan gambar beda-beda | ada random/akumulasi di render | lihat daftar larangan determinisme |
687
- | Teks patah/selebar salah saat split | split sebelum font termuat | tunggu `document.fonts.ready` |
688
- | Huruf/pill "flash" sesaat sebelum animasi masuknya | `tl.set(el,{autoAlpha:1})` lalu `fromTo(...immediateRender:false)` mulai beberapa frame kemudian — di antaranya elemen tampil penuh | state awal `.ch`, `.hl-t`, tanda baca = `opacity:0` DI CSS, bukan hanya pembungkusnya |
689
- | Kartu kontrol/teks bergetar lebarnya saat angka berjalan | digit proporsional (1 lebih sempit dari 8) | `font-variant-numeric:tabular-nums` + `min-width` pada elemen angka |
690
- | Screenshot scrub tertinggal satu langkah / tidak sinkron | GSAP menulis gaya secara lazy di tick berikutnya dan kanvas menunggu rAF (yang dithrottle di tab tersembunyi) | sediakan `OPENER.seek(t)` = `tl.pause(); tl.time(t); gsap.ticker.tick(); render(t)` dan pakai itu dari puppeteer/konsol |