@kenkaiiii/ggcoder 5.65.1 → 5.66.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (687) hide show
  1. package/README.md +3 -3
  2. package/assets/motion/BRAG-LICENSE +21 -0
  3. package/assets/motion/HYPERFRAMES-LICENSE +190 -0
  4. package/assets/motion/THIRD-PARTY.md +52 -0
  5. package/assets/motion/assets/music/README.md +20 -0
  6. package/assets/motion/assets/music/cues/happy-beats-business-moves-vol-1-by-ende-dot-app.music-cues.json +3846 -0
  7. package/assets/motion/assets/music/cues/happy-beats-business-moves-vol-1-by-ende-dot-app.music-cues.md +35 -0
  8. package/assets/motion/assets/music/cues/happy-beats-business-moves-vol-10-by-ende-dot-app.music-cues.json +1826 -0
  9. package/assets/motion/assets/music/cues/happy-beats-business-moves-vol-10-by-ende-dot-app.music-cues.md +35 -0
  10. package/assets/motion/assets/music/cues/happy-beats-business-moves-vol-11-by-ende-dot-app.music-cues.json +2266 -0
  11. package/assets/motion/assets/music/cues/happy-beats-business-moves-vol-11-by-ende-dot-app.music-cues.md +35 -0
  12. package/assets/motion/assets/music/cues/happy-beats-business-moves-vol-12-by-ende-dot-app.music-cues.json +2806 -0
  13. package/assets/motion/assets/music/cues/happy-beats-business-moves-vol-12-by-ende-dot-app.music-cues.md +35 -0
  14. package/assets/motion/assets/music/cues/happy-beats-business-moves-vol-9-by-ende-dot-app.music-cues.json +2796 -0
  15. package/assets/motion/assets/music/cues/happy-beats-business-moves-vol-9-by-ende-dot-app.music-cues.md +35 -0
  16. package/assets/motion/assets/music/happy-beats-business-moves-vol-1-by-ende-dot-app.mp3 +0 -0
  17. package/assets/motion/assets/music/happy-beats-business-moves-vol-10-by-ende-dot-app.mp3 +0 -0
  18. package/assets/motion/assets/music/happy-beats-business-moves-vol-11-by-ende-dot-app.mp3 +0 -0
  19. package/assets/motion/assets/music/happy-beats-business-moves-vol-12-by-ende-dot-app.mp3 +0 -0
  20. package/assets/motion/assets/music/happy-beats-business-moves-vol-9-by-ende-dot-app.mp3 +0 -0
  21. package/assets/motion/assets/sfx/casino/card-fan-1.ogg +0 -0
  22. package/assets/motion/assets/sfx/casino/card-fan-2.ogg +0 -0
  23. package/assets/motion/assets/sfx/casino/card-place-1.ogg +0 -0
  24. package/assets/motion/assets/sfx/casino/card-place-2.ogg +0 -0
  25. package/assets/motion/assets/sfx/casino/card-place-3.ogg +0 -0
  26. package/assets/motion/assets/sfx/casino/card-place-4.ogg +0 -0
  27. package/assets/motion/assets/sfx/casino/card-shove-1.ogg +0 -0
  28. package/assets/motion/assets/sfx/casino/card-shove-2.ogg +0 -0
  29. package/assets/motion/assets/sfx/casino/card-shove-3.ogg +0 -0
  30. package/assets/motion/assets/sfx/casino/card-shove-4.ogg +0 -0
  31. package/assets/motion/assets/sfx/casino/card-shuffle.ogg +0 -0
  32. package/assets/motion/assets/sfx/casino/card-slide-1.ogg +0 -0
  33. package/assets/motion/assets/sfx/casino/card-slide-2.ogg +0 -0
  34. package/assets/motion/assets/sfx/casino/card-slide-3.ogg +0 -0
  35. package/assets/motion/assets/sfx/casino/card-slide-4.ogg +0 -0
  36. package/assets/motion/assets/sfx/casino/card-slide-5.ogg +0 -0
  37. package/assets/motion/assets/sfx/casino/card-slide-6.ogg +0 -0
  38. package/assets/motion/assets/sfx/casino/card-slide-7.ogg +0 -0
  39. package/assets/motion/assets/sfx/casino/card-slide-8.ogg +0 -0
  40. package/assets/motion/assets/sfx/casino/cards-pack-open-1.ogg +0 -0
  41. package/assets/motion/assets/sfx/casino/cards-pack-open-2.ogg +0 -0
  42. package/assets/motion/assets/sfx/casino/chip-lay-1.ogg +0 -0
  43. package/assets/motion/assets/sfx/casino/chip-lay-2.ogg +0 -0
  44. package/assets/motion/assets/sfx/casino/chip-lay-3.ogg +0 -0
  45. package/assets/motion/assets/sfx/casino/chips-collide-1.ogg +0 -0
  46. package/assets/motion/assets/sfx/casino/chips-collide-2.ogg +0 -0
  47. package/assets/motion/assets/sfx/casino/chips-collide-3.ogg +0 -0
  48. package/assets/motion/assets/sfx/casino/chips-collide-4.ogg +0 -0
  49. package/assets/motion/assets/sfx/casino/chips-handle-1.ogg +0 -0
  50. package/assets/motion/assets/sfx/casino/chips-handle-2.ogg +0 -0
  51. package/assets/motion/assets/sfx/casino/chips-handle-3.ogg +0 -0
  52. package/assets/motion/assets/sfx/casino/chips-handle-4.ogg +0 -0
  53. package/assets/motion/assets/sfx/casino/chips-handle-6.ogg +0 -0
  54. package/assets/motion/assets/sfx/casino/chips-stack-1.ogg +0 -0
  55. package/assets/motion/assets/sfx/casino/chips-stack-2.ogg +0 -0
  56. package/assets/motion/assets/sfx/casino/chips-stack-3.ogg +0 -0
  57. package/assets/motion/assets/sfx/casino/chips-stack-4.ogg +0 -0
  58. package/assets/motion/assets/sfx/casino/chips-stack-5.ogg +0 -0
  59. package/assets/motion/assets/sfx/casino/chips-stack-6.ogg +0 -0
  60. package/assets/motion/assets/sfx/casino/dice-grab-1.ogg +0 -0
  61. package/assets/motion/assets/sfx/casino/dice-grab-2.ogg +0 -0
  62. package/assets/motion/assets/sfx/casino/dice-shake-1.ogg +0 -0
  63. package/assets/motion/assets/sfx/casino/dice-shake-2.ogg +0 -0
  64. package/assets/motion/assets/sfx/casino/dice-shake-3.ogg +0 -0
  65. package/assets/motion/assets/sfx/casino/dice-throw-1.ogg +0 -0
  66. package/assets/motion/assets/sfx/casino/dice-throw-2.ogg +0 -0
  67. package/assets/motion/assets/sfx/casino/dice-throw-3.ogg +0 -0
  68. package/assets/motion/assets/sfx/casino/die-throw-1.ogg +0 -0
  69. package/assets/motion/assets/sfx/casino/die-throw-2.ogg +0 -0
  70. package/assets/motion/assets/sfx/casino/die-throw-3.ogg +0 -0
  71. package/assets/motion/assets/sfx/casino/die-throw-4.ogg +0 -0
  72. package/assets/motion/assets/sfx/impact/footstep_carpet_000.ogg +0 -0
  73. package/assets/motion/assets/sfx/impact/footstep_carpet_003.ogg +0 -0
  74. package/assets/motion/assets/sfx/impact/footstep_carpet_004.ogg +0 -0
  75. package/assets/motion/assets/sfx/impact/footstep_concrete_000.ogg +0 -0
  76. package/assets/motion/assets/sfx/impact/footstep_concrete_001.ogg +0 -0
  77. package/assets/motion/assets/sfx/impact/footstep_concrete_002.ogg +0 -0
  78. package/assets/motion/assets/sfx/impact/footstep_concrete_003.ogg +0 -0
  79. package/assets/motion/assets/sfx/impact/footstep_concrete_004.ogg +0 -0
  80. package/assets/motion/assets/sfx/impact/footstep_grass_000.ogg +0 -0
  81. package/assets/motion/assets/sfx/impact/footstep_grass_001.ogg +0 -0
  82. package/assets/motion/assets/sfx/impact/footstep_grass_002.ogg +0 -0
  83. package/assets/motion/assets/sfx/impact/footstep_grass_003.ogg +0 -0
  84. package/assets/motion/assets/sfx/impact/footstep_grass_004.ogg +0 -0
  85. package/assets/motion/assets/sfx/impact/footstep_snow_000.ogg +0 -0
  86. package/assets/motion/assets/sfx/impact/footstep_snow_001.ogg +0 -0
  87. package/assets/motion/assets/sfx/impact/footstep_snow_002.ogg +0 -0
  88. package/assets/motion/assets/sfx/impact/footstep_snow_003.ogg +0 -0
  89. package/assets/motion/assets/sfx/impact/footstep_snow_004.ogg +0 -0
  90. package/assets/motion/assets/sfx/impact/footstep_wood_000.ogg +0 -0
  91. package/assets/motion/assets/sfx/impact/footstep_wood_001.ogg +0 -0
  92. package/assets/motion/assets/sfx/impact/footstep_wood_002.ogg +0 -0
  93. package/assets/motion/assets/sfx/impact/footstep_wood_003.ogg +0 -0
  94. package/assets/motion/assets/sfx/impact/footstep_wood_004.ogg +0 -0
  95. package/assets/motion/assets/sfx/impact/impactBell_heavy_000.ogg +0 -0
  96. package/assets/motion/assets/sfx/impact/impactBell_heavy_003.ogg +0 -0
  97. package/assets/motion/assets/sfx/impact/impactBell_heavy_004.ogg +0 -0
  98. package/assets/motion/assets/sfx/impact/impactGeneric_light_000.ogg +0 -0
  99. package/assets/motion/assets/sfx/impact/impactGeneric_light_001.ogg +0 -0
  100. package/assets/motion/assets/sfx/impact/impactGeneric_light_002.ogg +0 -0
  101. package/assets/motion/assets/sfx/impact/impactGeneric_light_003.ogg +0 -0
  102. package/assets/motion/assets/sfx/impact/impactGeneric_light_004.ogg +0 -0
  103. package/assets/motion/assets/sfx/impact/impactGlass_heavy_002.ogg +0 -0
  104. package/assets/motion/assets/sfx/impact/impactGlass_light_001.ogg +0 -0
  105. package/assets/motion/assets/sfx/impact/impactGlass_light_002.ogg +0 -0
  106. package/assets/motion/assets/sfx/impact/impactGlass_light_003.ogg +0 -0
  107. package/assets/motion/assets/sfx/impact/impactGlass_medium_000.ogg +0 -0
  108. package/assets/motion/assets/sfx/impact/impactGlass_medium_002.ogg +0 -0
  109. package/assets/motion/assets/sfx/impact/impactGlass_medium_004.ogg +0 -0
  110. package/assets/motion/assets/sfx/impact/impactMetal_heavy_000.ogg +0 -0
  111. package/assets/motion/assets/sfx/impact/impactMetal_heavy_002.ogg +0 -0
  112. package/assets/motion/assets/sfx/impact/impactMetal_heavy_004.ogg +0 -0
  113. package/assets/motion/assets/sfx/impact/impactMetal_light_002.ogg +0 -0
  114. package/assets/motion/assets/sfx/impact/impactMetal_light_003.ogg +0 -0
  115. package/assets/motion/assets/sfx/impact/impactMetal_medium_000.ogg +0 -0
  116. package/assets/motion/assets/sfx/impact/impactMetal_medium_001.ogg +0 -0
  117. package/assets/motion/assets/sfx/impact/impactMetal_medium_002.ogg +0 -0
  118. package/assets/motion/assets/sfx/impact/impactMetal_medium_003.ogg +0 -0
  119. package/assets/motion/assets/sfx/impact/impactMetal_medium_004.ogg +0 -0
  120. package/assets/motion/assets/sfx/impact/impactMining_001.ogg +0 -0
  121. package/assets/motion/assets/sfx/impact/impactPlank_medium_000.ogg +0 -0
  122. package/assets/motion/assets/sfx/impact/impactPlank_medium_001.ogg +0 -0
  123. package/assets/motion/assets/sfx/impact/impactPlank_medium_002.ogg +0 -0
  124. package/assets/motion/assets/sfx/impact/impactPlank_medium_003.ogg +0 -0
  125. package/assets/motion/assets/sfx/impact/impactPlank_medium_004.ogg +0 -0
  126. package/assets/motion/assets/sfx/impact/impactPlate_heavy_000.ogg +0 -0
  127. package/assets/motion/assets/sfx/impact/impactPlate_heavy_001.ogg +0 -0
  128. package/assets/motion/assets/sfx/impact/impactPlate_heavy_002.ogg +0 -0
  129. package/assets/motion/assets/sfx/impact/impactPlate_heavy_003.ogg +0 -0
  130. package/assets/motion/assets/sfx/impact/impactPlate_heavy_004.ogg +0 -0
  131. package/assets/motion/assets/sfx/impact/impactPlate_light_000.ogg +0 -0
  132. package/assets/motion/assets/sfx/impact/impactPlate_light_001.ogg +0 -0
  133. package/assets/motion/assets/sfx/impact/impactPlate_light_002.ogg +0 -0
  134. package/assets/motion/assets/sfx/impact/impactPlate_light_003.ogg +0 -0
  135. package/assets/motion/assets/sfx/impact/impactPlate_light_004.ogg +0 -0
  136. package/assets/motion/assets/sfx/impact/impactPlate_medium_000.ogg +0 -0
  137. package/assets/motion/assets/sfx/impact/impactPlate_medium_001.ogg +0 -0
  138. package/assets/motion/assets/sfx/impact/impactPlate_medium_002.ogg +0 -0
  139. package/assets/motion/assets/sfx/impact/impactPlate_medium_003.ogg +0 -0
  140. package/assets/motion/assets/sfx/impact/impactPlate_medium_004.ogg +0 -0
  141. package/assets/motion/assets/sfx/impact/impactPunch_heavy_000.ogg +0 -0
  142. package/assets/motion/assets/sfx/impact/impactPunch_heavy_001.ogg +0 -0
  143. package/assets/motion/assets/sfx/impact/impactPunch_heavy_002.ogg +0 -0
  144. package/assets/motion/assets/sfx/impact/impactPunch_heavy_003.ogg +0 -0
  145. package/assets/motion/assets/sfx/impact/impactPunch_heavy_004.ogg +0 -0
  146. package/assets/motion/assets/sfx/impact/impactPunch_medium_000.ogg +0 -0
  147. package/assets/motion/assets/sfx/impact/impactPunch_medium_001.ogg +0 -0
  148. package/assets/motion/assets/sfx/impact/impactPunch_medium_002.ogg +0 -0
  149. package/assets/motion/assets/sfx/impact/impactPunch_medium_003.ogg +0 -0
  150. package/assets/motion/assets/sfx/impact/impactPunch_medium_004.ogg +0 -0
  151. package/assets/motion/assets/sfx/impact/impactSoft_heavy_000.ogg +0 -0
  152. package/assets/motion/assets/sfx/impact/impactSoft_heavy_001.ogg +0 -0
  153. package/assets/motion/assets/sfx/impact/impactSoft_heavy_002.ogg +0 -0
  154. package/assets/motion/assets/sfx/impact/impactSoft_heavy_003.ogg +0 -0
  155. package/assets/motion/assets/sfx/impact/impactSoft_heavy_004.ogg +0 -0
  156. package/assets/motion/assets/sfx/impact/impactSoft_medium_000.ogg +0 -0
  157. package/assets/motion/assets/sfx/impact/impactSoft_medium_001.ogg +0 -0
  158. package/assets/motion/assets/sfx/impact/impactSoft_medium_002.ogg +0 -0
  159. package/assets/motion/assets/sfx/impact/impactSoft_medium_003.ogg +0 -0
  160. package/assets/motion/assets/sfx/impact/impactSoft_medium_004.ogg +0 -0
  161. package/assets/motion/assets/sfx/impact/impactTin_medium_000.ogg +0 -0
  162. package/assets/motion/assets/sfx/impact/impactTin_medium_001.ogg +0 -0
  163. package/assets/motion/assets/sfx/impact/impactTin_medium_002.ogg +0 -0
  164. package/assets/motion/assets/sfx/impact/impactTin_medium_003.ogg +0 -0
  165. package/assets/motion/assets/sfx/impact/impactTin_medium_004.ogg +0 -0
  166. package/assets/motion/assets/sfx/impact/impactWood_heavy_000.ogg +0 -0
  167. package/assets/motion/assets/sfx/impact/impactWood_heavy_001.ogg +0 -0
  168. package/assets/motion/assets/sfx/impact/impactWood_heavy_002.ogg +0 -0
  169. package/assets/motion/assets/sfx/impact/impactWood_heavy_003.ogg +0 -0
  170. package/assets/motion/assets/sfx/impact/impactWood_heavy_004.ogg +0 -0
  171. package/assets/motion/assets/sfx/impact/impactWood_light_000.ogg +0 -0
  172. package/assets/motion/assets/sfx/impact/impactWood_light_001.ogg +0 -0
  173. package/assets/motion/assets/sfx/impact/impactWood_light_002.ogg +0 -0
  174. package/assets/motion/assets/sfx/impact/impactWood_light_003.ogg +0 -0
  175. package/assets/motion/assets/sfx/impact/impactWood_light_004.ogg +0 -0
  176. package/assets/motion/assets/sfx/impact/impactWood_medium_000.ogg +0 -0
  177. package/assets/motion/assets/sfx/impact/impactWood_medium_001.ogg +0 -0
  178. package/assets/motion/assets/sfx/impact/impactWood_medium_002.ogg +0 -0
  179. package/assets/motion/assets/sfx/impact/impactWood_medium_003.ogg +0 -0
  180. package/assets/motion/assets/sfx/impact/impactWood_medium_004.ogg +0 -0
  181. package/assets/motion/assets/sfx/interface/bong_001.ogg +0 -0
  182. package/assets/motion/assets/sfx/interface/click_001.ogg +0 -0
  183. package/assets/motion/assets/sfx/interface/click_002.ogg +0 -0
  184. package/assets/motion/assets/sfx/interface/click_003.ogg +0 -0
  185. package/assets/motion/assets/sfx/interface/click_004.ogg +0 -0
  186. package/assets/motion/assets/sfx/interface/click_005.ogg +0 -0
  187. package/assets/motion/assets/sfx/interface/drop_001.ogg +0 -0
  188. package/assets/motion/assets/sfx/interface/drop_002.ogg +0 -0
  189. package/assets/motion/assets/sfx/interface/drop_003.ogg +0 -0
  190. package/assets/motion/assets/sfx/interface/error_005.ogg +0 -0
  191. package/assets/motion/assets/sfx/interface/error_006.ogg +0 -0
  192. package/assets/motion/assets/sfx/interface/glitch_002.ogg +0 -0
  193. package/assets/motion/assets/sfx/interface/glitch_004.ogg +0 -0
  194. package/assets/motion/assets/sfx/interface/select_008.ogg +0 -0
  195. package/assets/motion/assets/sfx/interface/switch_001.ogg +0 -0
  196. package/assets/motion/assets/sfx/interface/switch_002.ogg +0 -0
  197. package/assets/motion/assets/sfx/interface/switch_004.ogg +0 -0
  198. package/assets/motion/assets/sfx/interface/switch_005.ogg +0 -0
  199. package/assets/motion/assets/sfx/interface/switch_006.ogg +0 -0
  200. package/assets/motion/assets/sfx/interface/switch_007.ogg +0 -0
  201. package/assets/motion/assets/sfx/keyboard/keypress-001.wav +0 -0
  202. package/assets/motion/assets/sfx/keyboard/keypress-002.wav +0 -0
  203. package/assets/motion/assets/sfx/keyboard/keypress-003.wav +0 -0
  204. package/assets/motion/assets/sfx/keyboard/keypress-004.wav +0 -0
  205. package/assets/motion/assets/sfx/keyboard/keypress-005.wav +0 -0
  206. package/assets/motion/assets/sfx/keyboard/keypress-006.wav +0 -0
  207. package/assets/motion/assets/sfx/keyboard/keypress-007.wav +0 -0
  208. package/assets/motion/assets/sfx/keyboard/keypress-008.wav +0 -0
  209. package/assets/motion/assets/sfx/keyboard/keypress-009.wav +0 -0
  210. package/assets/motion/assets/sfx/keyboard/keypress-010.wav +0 -0
  211. package/assets/motion/assets/sfx/keyboard/keypress-011.wav +0 -0
  212. package/assets/motion/assets/sfx/keyboard/keypress-012.wav +0 -0
  213. package/assets/motion/assets/sfx/keyboard/keypress-013.wav +0 -0
  214. package/assets/motion/assets/sfx/keyboard/keypress-014.wav +0 -0
  215. package/assets/motion/assets/sfx/keyboard/keypress-015.wav +0 -0
  216. package/assets/motion/assets/sfx/keyboard/keypress-016.wav +0 -0
  217. package/assets/motion/assets/sfx/keyboard/keypress-017.wav +0 -0
  218. package/assets/motion/assets/sfx/keyboard/keypress-018.wav +0 -0
  219. package/assets/motion/assets/sfx/keyboard/keypress-019.wav +0 -0
  220. package/assets/motion/assets/sfx/keyboard/keypress-020.wav +0 -0
  221. package/assets/motion/assets/sfx/keyboard/keypress-021.wav +0 -0
  222. package/assets/motion/assets/sfx/keyboard/keypress-022.wav +0 -0
  223. package/assets/motion/assets/sfx/keyboard/keypress-023.wav +0 -0
  224. package/assets/motion/assets/sfx/keyboard/keypress-024.wav +0 -0
  225. package/assets/motion/assets/sfx/keyboard/keypress-025.wav +0 -0
  226. package/assets/motion/assets/sfx/keyboard/keypress-026.wav +0 -0
  227. package/assets/motion/assets/sfx/keyboard/keypress-027.wav +0 -0
  228. package/assets/motion/assets/sfx/keyboard/keypress-028.wav +0 -0
  229. package/assets/motion/assets/sfx/keyboard/keypress-029.wav +0 -0
  230. package/assets/motion/assets/sfx/keyboard/keypress-030.wav +0 -0
  231. package/assets/motion/assets/sfx/keyboard/keypress-031.wav +0 -0
  232. package/assets/motion/assets/sfx/keyboard/keypress-032.wav +0 -0
  233. package/assets/motion/assets/sfx/sfx-analysis.json +15584 -0
  234. package/assets/motion/assets/sfx/sfx-analysis.md +75 -0
  235. package/assets/motion/assets/sfx/ui/click1.ogg +0 -0
  236. package/assets/motion/assets/sfx/ui/click2.ogg +0 -0
  237. package/assets/motion/assets/sfx/ui/click3.ogg +0 -0
  238. package/assets/motion/assets/sfx/ui/click4.ogg +0 -0
  239. package/assets/motion/assets/sfx/ui/click5.ogg +0 -0
  240. package/assets/motion/assets/sfx/ui/mouseclick1.ogg +0 -0
  241. package/assets/motion/assets/sfx/ui/rollover1.ogg +0 -0
  242. package/assets/motion/assets/sfx/ui/rollover2.ogg +0 -0
  243. package/assets/motion/assets/sfx/ui/rollover4.ogg +0 -0
  244. package/assets/motion/assets/sfx/ui/rollover5.ogg +0 -0
  245. package/assets/motion/assets/sfx/ui/switch1.ogg +0 -0
  246. package/assets/motion/assets/sfx/ui/switch10.ogg +0 -0
  247. package/assets/motion/assets/sfx/ui/switch11.ogg +0 -0
  248. package/assets/motion/assets/sfx/ui/switch12.ogg +0 -0
  249. package/assets/motion/assets/sfx/ui/switch13.ogg +0 -0
  250. package/assets/motion/assets/sfx/ui/switch14.ogg +0 -0
  251. package/assets/motion/assets/sfx/ui/switch15.ogg +0 -0
  252. package/assets/motion/assets/sfx/ui/switch16.ogg +0 -0
  253. package/assets/motion/assets/sfx/ui/switch17.ogg +0 -0
  254. package/assets/motion/assets/sfx/ui/switch18.ogg +0 -0
  255. package/assets/motion/assets/sfx/ui/switch19.ogg +0 -0
  256. package/assets/motion/assets/sfx/ui/switch2.ogg +0 -0
  257. package/assets/motion/assets/sfx/ui/switch20.ogg +0 -0
  258. package/assets/motion/assets/sfx/ui/switch21.ogg +0 -0
  259. package/assets/motion/assets/sfx/ui/switch22.ogg +0 -0
  260. package/assets/motion/assets/sfx/ui/switch23.ogg +0 -0
  261. package/assets/motion/assets/sfx/ui/switch24.ogg +0 -0
  262. package/assets/motion/assets/sfx/ui/switch25.ogg +0 -0
  263. package/assets/motion/assets/sfx/ui/switch26.ogg +0 -0
  264. package/assets/motion/assets/sfx/ui/switch27.ogg +0 -0
  265. package/assets/motion/assets/sfx/ui/switch28.ogg +0 -0
  266. package/assets/motion/assets/sfx/ui/switch29.ogg +0 -0
  267. package/assets/motion/assets/sfx/ui/switch3.ogg +0 -0
  268. package/assets/motion/assets/sfx/ui/switch30.ogg +0 -0
  269. package/assets/motion/assets/sfx/ui/switch31.ogg +0 -0
  270. package/assets/motion/assets/sfx/ui/switch32.ogg +0 -0
  271. package/assets/motion/assets/sfx/ui/switch33.ogg +0 -0
  272. package/assets/motion/assets/sfx/ui/switch34.ogg +0 -0
  273. package/assets/motion/assets/sfx/ui/switch35.ogg +0 -0
  274. package/assets/motion/assets/sfx/ui/switch36.ogg +0 -0
  275. package/assets/motion/assets/sfx/ui/switch37.ogg +0 -0
  276. package/assets/motion/assets/sfx/ui/switch38.ogg +0 -0
  277. package/assets/motion/assets/sfx/ui/switch4.ogg +0 -0
  278. package/assets/motion/assets/sfx/ui/switch5.ogg +0 -0
  279. package/assets/motion/assets/sfx/ui/switch6.ogg +0 -0
  280. package/assets/motion/assets/sfx/ui/switch7.ogg +0 -0
  281. package/assets/motion/assets/sfx/ui/switch8.ogg +0 -0
  282. package/assets/motion/assets/sfx/ui/switch9.ogg +0 -0
  283. package/assets/motion/bin/contact-sheet.mjs +87 -0
  284. package/assets/motion/bin/fonts.mjs +111 -0
  285. package/assets/motion/bin/hyperframes.mjs +122 -0
  286. package/assets/motion/bin/library.mjs +210 -0
  287. package/assets/motion/bin/media-binaries.mjs +49 -0
  288. package/assets/motion/bin/motion-check.mjs +250 -0
  289. package/assets/motion/bin/pdf-extract.mjs +133 -0
  290. package/assets/motion/bin/reveal.mjs +76 -0
  291. package/assets/motion/bin/review-frames.mjs +328 -0
  292. package/assets/motion/bin/score-synth.mjs +486 -0
  293. package/assets/motion/bin/three.mjs +55 -0
  294. package/assets/motion/fonts/anybody/OFL.txt +93 -0
  295. package/assets/motion/fonts/anybody/anybody-normal.woff2 +0 -0
  296. package/assets/motion/fonts/archivo/OFL.txt +93 -0
  297. package/assets/motion/fonts/archivo/archivo-normal.woff2 +0 -0
  298. package/assets/motion/fonts/big-shoulders/OFL.txt +93 -0
  299. package/assets/motion/fonts/big-shoulders/big-shoulders-normal.woff2 +0 -0
  300. package/assets/motion/fonts/bricolage-grotesque/OFL.txt +93 -0
  301. package/assets/motion/fonts/bricolage-grotesque/bricolage-grotesque-normal.woff2 +0 -0
  302. package/assets/motion/fonts/doto/OFL.txt +93 -0
  303. package/assets/motion/fonts/doto/doto-normal.woff2 +0 -0
  304. package/assets/motion/fonts/finger-paint/OFL.txt +93 -0
  305. package/assets/motion/fonts/finger-paint/finger-paint-normal.woff2 +0 -0
  306. package/assets/motion/fonts/fonts.json +265 -0
  307. package/assets/motion/fonts/fraunces/OFL.txt +93 -0
  308. package/assets/motion/fonts/fraunces/fraunces-italic.woff2 +0 -0
  309. package/assets/motion/fonts/fraunces/fraunces-normal.woff2 +0 -0
  310. package/assets/motion/fonts/funnel-display/OFL.txt +93 -0
  311. package/assets/motion/fonts/funnel-display/funnel-display-normal.woff2 +0 -0
  312. package/assets/motion/fonts/gloock/OFL.txt +93 -0
  313. package/assets/motion/fonts/gloock/gloock-normal.woff2 +0 -0
  314. package/assets/motion/fonts/host-grotesk/OFL.txt +93 -0
  315. package/assets/motion/fonts/host-grotesk/host-grotesk-normal.woff2 +0 -0
  316. package/assets/motion/fonts/hubot-sans/OFL.txt +93 -0
  317. package/assets/motion/fonts/hubot-sans/hubot-sans-normal.woff2 +0 -0
  318. package/assets/motion/fonts/martian-mono/OFL.txt +93 -0
  319. package/assets/motion/fonts/martian-mono/martian-mono-normal.woff2 +0 -0
  320. package/assets/motion/fonts/mona-sans/OFL.txt +93 -0
  321. package/assets/motion/fonts/mona-sans/mona-sans-normal.woff2 +0 -0
  322. package/assets/motion/fonts/newsreader/OFL.txt +93 -0
  323. package/assets/motion/fonts/newsreader/newsreader-italic.woff2 +0 -0
  324. package/assets/motion/fonts/newsreader/newsreader-normal.woff2 +0 -0
  325. package/assets/motion/fonts/schibsted-grotesk/OFL.txt +93 -0
  326. package/assets/motion/fonts/schibsted-grotesk/schibsted-grotesk-normal.woff2 +0 -0
  327. package/assets/motion/fonts/short-stack/OFL.txt +94 -0
  328. package/assets/motion/fonts/short-stack/short-stack-normal.woff2 +0 -0
  329. package/assets/motion/fonts/sora/OFL.txt +93 -0
  330. package/assets/motion/fonts/sora/sora-normal.woff2 +0 -0
  331. package/assets/motion/fonts/specimen.jpg +0 -0
  332. package/assets/motion/fonts/unbounded/OFL.txt +93 -0
  333. package/assets/motion/fonts/unbounded/unbounded-normal.woff2 +0 -0
  334. package/assets/motion/fonts/young-serif/OFL.txt +93 -0
  335. package/assets/motion/fonts/young-serif/young-serif-normal.woff2 +0 -0
  336. package/assets/motion/library/README.md +106 -0
  337. package/assets/motion/library/library.json +1384 -0
  338. package/assets/motion/library/looks/acid-poster/look.md +82 -0
  339. package/assets/motion/library/looks/acid-poster/meta.json +11 -0
  340. package/assets/motion/library/looks/acid-poster/preview.jpg +0 -0
  341. package/assets/motion/library/looks/acid-poster/sample.html +177 -0
  342. package/assets/motion/library/looks/acid-poster/tokens.css +16 -0
  343. package/assets/motion/library/looks/blueprint/look.md +22 -0
  344. package/assets/motion/library/looks/blueprint/meta.json +11 -0
  345. package/assets/motion/library/looks/blueprint/preview.jpg +0 -0
  346. package/assets/motion/library/looks/blueprint/sample.html +301 -0
  347. package/assets/motion/library/looks/blueprint/tokens.css +16 -0
  348. package/assets/motion/library/looks/dark-studio/look.md +85 -0
  349. package/assets/motion/library/looks/dark-studio/meta.json +11 -0
  350. package/assets/motion/library/looks/dark-studio/preview.jpg +0 -0
  351. package/assets/motion/library/looks/dark-studio/sample.html +324 -0
  352. package/assets/motion/library/looks/dark-studio/tokens.css +16 -0
  353. package/assets/motion/library/looks/data-desk/look.md +19 -0
  354. package/assets/motion/library/looks/data-desk/meta.json +9 -0
  355. package/assets/motion/library/looks/data-desk/preview.jpg +0 -0
  356. package/assets/motion/library/looks/data-desk/sample.html +17 -0
  357. package/assets/motion/library/looks/data-desk/tokens.css +15 -0
  358. package/assets/motion/library/looks/duotone-broadcast/look.md +53 -0
  359. package/assets/motion/library/looks/duotone-broadcast/meta.json +11 -0
  360. package/assets/motion/library/looks/duotone-broadcast/preview.jpg +0 -0
  361. package/assets/motion/library/looks/duotone-broadcast/sample.html +45 -0
  362. package/assets/motion/library/looks/duotone-broadcast/tokens.css +16 -0
  363. package/assets/motion/library/looks/editorial-ink/look.md +80 -0
  364. package/assets/motion/library/looks/editorial-ink/meta.json +11 -0
  365. package/assets/motion/library/looks/editorial-ink/preview.jpg +0 -0
  366. package/assets/motion/library/looks/editorial-ink/sample.html +203 -0
  367. package/assets/motion/library/looks/editorial-ink/tokens.css +16 -0
  368. package/assets/motion/library/looks/mono-luxe/look.md +19 -0
  369. package/assets/motion/library/looks/mono-luxe/meta.json +9 -0
  370. package/assets/motion/library/looks/mono-luxe/preview.jpg +0 -0
  371. package/assets/motion/library/looks/mono-luxe/sample.html +12 -0
  372. package/assets/motion/library/looks/mono-luxe/tokens.css +15 -0
  373. package/assets/motion/library/looks/soft-light-ad/look.md +63 -0
  374. package/assets/motion/library/looks/soft-light-ad/meta.json +39 -0
  375. package/assets/motion/library/looks/soft-light-ad/preview.jpg +0 -0
  376. package/assets/motion/library/looks/soft-light-ad/sample.html +44 -0
  377. package/assets/motion/library/looks/soft-light-ad/tokens.css +17 -0
  378. package/assets/motion/library/looks/sunlit-consumer/look.md +19 -0
  379. package/assets/motion/library/looks/sunlit-consumer/meta.json +9 -0
  380. package/assets/motion/library/looks/sunlit-consumer/preview.jpg +0 -0
  381. package/assets/motion/library/looks/sunlit-consumer/sample.html +12 -0
  382. package/assets/motion/library/looks/sunlit-consumer/tokens.css +15 -0
  383. package/assets/motion/library/looks/swiss-grid/look.md +81 -0
  384. package/assets/motion/library/looks/swiss-grid/meta.json +11 -0
  385. package/assets/motion/library/looks/swiss-grid/preview.jpg +0 -0
  386. package/assets/motion/library/looks/swiss-grid/sample.html +209 -0
  387. package/assets/motion/library/looks/swiss-grid/tokens.css +16 -0
  388. package/assets/motion/library/looks/terminal-phosphor/look.md +77 -0
  389. package/assets/motion/library/looks/terminal-phosphor/meta.json +11 -0
  390. package/assets/motion/library/looks/terminal-phosphor/preview.jpg +0 -0
  391. package/assets/motion/library/looks/terminal-phosphor/sample.html +182 -0
  392. package/assets/motion/library/looks/terminal-phosphor/tokens.css +16 -0
  393. package/assets/motion/library/pieces/animated-beam/LICENSE +21 -0
  394. package/assets/motion/library/pieces/animated-beam/meta.json +16 -0
  395. package/assets/motion/library/pieces/animated-beam/piece.html +273 -0
  396. package/assets/motion/library/pieces/animated-beam/preview.jpg +0 -0
  397. package/assets/motion/library/pieces/animated-list/LICENSE +21 -0
  398. package/assets/motion/library/pieces/animated-list/meta.json +16 -0
  399. package/assets/motion/library/pieces/animated-list/piece.html +189 -0
  400. package/assets/motion/library/pieces/animated-list/preview.jpg +0 -0
  401. package/assets/motion/library/pieces/before-after-split/meta.json +12 -0
  402. package/assets/motion/library/pieces/before-after-split/piece.html +262 -0
  403. package/assets/motion/library/pieces/before-after-split/preview.jpg +0 -0
  404. package/assets/motion/library/pieces/blueprint-grid/meta.json +12 -0
  405. package/assets/motion/library/pieces/blueprint-grid/piece.html +209 -0
  406. package/assets/motion/library/pieces/blueprint-grid/preview.jpg +0 -0
  407. package/assets/motion/library/pieces/broadcast-frame/meta.json +12 -0
  408. package/assets/motion/library/pieces/broadcast-frame/piece.html +100 -0
  409. package/assets/motion/library/pieces/broadcast-frame/preview.jpg +0 -0
  410. package/assets/motion/library/pieces/browser-window/meta.json +12 -0
  411. package/assets/motion/library/pieces/browser-window/piece.html +331 -0
  412. package/assets/motion/library/pieces/browser-window/preview.jpg +0 -0
  413. package/assets/motion/library/pieces/chapter-card/meta.json +6 -0
  414. package/assets/motion/library/pieces/chapter-card/piece.html +12 -0
  415. package/assets/motion/library/pieces/chapter-card/preview.jpg +0 -0
  416. package/assets/motion/library/pieces/chat-thread/meta.json +12 -0
  417. package/assets/motion/library/pieces/chat-thread/piece.html +272 -0
  418. package/assets/motion/library/pieces/chat-thread/preview.jpg +0 -0
  419. package/assets/motion/library/pieces/clay-drop-3d/meta.json +13 -0
  420. package/assets/motion/library/pieces/clay-drop-3d/piece.html +224 -0
  421. package/assets/motion/library/pieces/clay-drop-3d/preview.jpg +0 -0
  422. package/assets/motion/library/pieces/color-flip-field/meta.json +12 -0
  423. package/assets/motion/library/pieces/color-flip-field/piece.html +81 -0
  424. package/assets/motion/library/pieces/color-flip-field/preview.jpg +0 -0
  425. package/assets/motion/library/pieces/color-wipe/meta.json +6 -0
  426. package/assets/motion/library/pieces/color-wipe/piece.html +10 -0
  427. package/assets/motion/library/pieces/color-wipe/preview.jpg +0 -0
  428. package/assets/motion/library/pieces/command-palette/meta.json +12 -0
  429. package/assets/motion/library/pieces/command-palette/piece.html +339 -0
  430. package/assets/motion/library/pieces/command-palette/preview.jpg +0 -0
  431. package/assets/motion/library/pieces/comparison-bars/meta.json +12 -0
  432. package/assets/motion/library/pieces/comparison-bars/piece.html +191 -0
  433. package/assets/motion/library/pieces/comparison-bars/preview.jpg +0 -0
  434. package/assets/motion/library/pieces/counter-number/meta.json +12 -0
  435. package/assets/motion/library/pieces/counter-number/piece.html +131 -0
  436. package/assets/motion/library/pieces/counter-number/preview.jpg +0 -0
  437. package/assets/motion/library/pieces/cursor-click/meta.json +12 -0
  438. package/assets/motion/library/pieces/cursor-click/piece.html +242 -0
  439. package/assets/motion/library/pieces/cursor-click/preview.jpg +0 -0
  440. package/assets/motion/library/pieces/dock-magnify/LICENSE +21 -0
  441. package/assets/motion/library/pieces/dock-magnify/meta.json +16 -0
  442. package/assets/motion/library/pieces/dock-magnify/piece.html +234 -0
  443. package/assets/motion/library/pieces/dock-magnify/preview.jpg +0 -0
  444. package/assets/motion/library/pieces/donut-fill/meta.json +12 -0
  445. package/assets/motion/library/pieces/donut-fill/piece.html +156 -0
  446. package/assets/motion/library/pieces/donut-fill/preview.jpg +0 -0
  447. package/assets/motion/library/pieces/dot-grid-field/meta.json +12 -0
  448. package/assets/motion/library/pieces/dot-grid-field/piece.html +61 -0
  449. package/assets/motion/library/pieces/dot-grid-field/preview.jpg +0 -0
  450. package/assets/motion/library/pieces/ease-curve/meta.json +12 -0
  451. package/assets/motion/library/pieces/ease-curve/piece.html +103 -0
  452. package/assets/motion/library/pieces/ease-curve/preview.jpg +0 -0
  453. package/assets/motion/library/pieces/end-card/meta.json +6 -0
  454. package/assets/motion/library/pieces/end-card/piece.html +11 -0
  455. package/assets/motion/library/pieces/end-card/preview.jpg +0 -0
  456. package/assets/motion/library/pieces/film-grain/meta.json +12 -0
  457. package/assets/motion/library/pieces/film-grain/piece.html +93 -0
  458. package/assets/motion/library/pieces/film-grain/preview.jpg +0 -0
  459. package/assets/motion/library/pieces/flickering-grid/LICENSE +21 -0
  460. package/assets/motion/library/pieces/flickering-grid/meta.json +16 -0
  461. package/assets/motion/library/pieces/flickering-grid/piece.html +112 -0
  462. package/assets/motion/library/pieces/flickering-grid/preview.jpg +0 -0
  463. package/assets/motion/library/pieces/flow-nodes/meta.json +12 -0
  464. package/assets/motion/library/pieces/flow-nodes/piece.html +230 -0
  465. package/assets/motion/library/pieces/flow-nodes/preview.jpg +0 -0
  466. package/assets/motion/library/pieces/highlight-sweep/meta.json +12 -0
  467. package/assets/motion/library/pieces/highlight-sweep/piece.html +132 -0
  468. package/assets/motion/library/pieces/highlight-sweep/preview.jpg +0 -0
  469. package/assets/motion/library/pieces/iris-circle/meta.json +6 -0
  470. package/assets/motion/library/pieces/iris-circle/piece.html +6 -0
  471. package/assets/motion/library/pieces/iris-circle/preview.jpg +0 -0
  472. package/assets/motion/library/pieces/kinetic-letters/meta.json +12 -0
  473. package/assets/motion/library/pieces/kinetic-letters/piece.html +103 -0
  474. package/assets/motion/library/pieces/kinetic-letters/preview.jpg +0 -0
  475. package/assets/motion/library/pieces/light-leak-soft/meta.json +12 -0
  476. package/assets/motion/library/pieces/light-leak-soft/piece.html +102 -0
  477. package/assets/motion/library/pieces/light-leak-soft/preview.jpg +0 -0
  478. package/assets/motion/library/pieces/line-stack-reveal/meta.json +12 -0
  479. package/assets/motion/library/pieces/line-stack-reveal/piece.html +98 -0
  480. package/assets/motion/library/pieces/line-stack-reveal/preview.jpg +0 -0
  481. package/assets/motion/library/pieces/lower-third/meta.json +6 -0
  482. package/assets/motion/library/pieces/lower-third/piece.html +11 -0
  483. package/assets/motion/library/pieces/lower-third/preview.jpg +0 -0
  484. package/assets/motion/library/pieces/marquee-strip/meta.json +12 -0
  485. package/assets/motion/library/pieces/marquee-strip/piece.html +132 -0
  486. package/assets/motion/library/pieces/marquee-strip/preview.jpg +0 -0
  487. package/assets/motion/library/pieces/mesh-gradient/meta.json +12 -0
  488. package/assets/motion/library/pieces/mesh-gradient/piece.html +131 -0
  489. package/assets/motion/library/pieces/mesh-gradient/preview.jpg +0 -0
  490. package/assets/motion/library/pieces/orbiting-circles/LICENSE +21 -0
  491. package/assets/motion/library/pieces/orbiting-circles/meta.json +16 -0
  492. package/assets/motion/library/pieces/orbiting-circles/piece.html +185 -0
  493. package/assets/motion/library/pieces/orbiting-circles/preview.jpg +0 -0
  494. package/assets/motion/library/pieces/phone-frame/meta.json +12 -0
  495. package/assets/motion/library/pieces/phone-frame/piece.html +252 -0
  496. package/assets/motion/library/pieces/phone-frame/preview.jpg +0 -0
  497. package/assets/motion/library/pieces/pricing-toggle/meta.json +6 -0
  498. package/assets/motion/library/pieces/pricing-toggle/piece.html +18 -0
  499. package/assets/motion/library/pieces/pricing-toggle/preview.jpg +0 -0
  500. package/assets/motion/library/pieces/retro-grid/LICENSE +21 -0
  501. package/assets/motion/library/pieces/retro-grid/meta.json +16 -0
  502. package/assets/motion/library/pieces/retro-grid/piece.html +139 -0
  503. package/assets/motion/library/pieces/retro-grid/preview.jpg +0 -0
  504. package/assets/motion/library/pieces/scale-through-word/meta.json +12 -0
  505. package/assets/motion/library/pieces/scale-through-word/piece.html +139 -0
  506. package/assets/motion/library/pieces/scale-through-word/preview.jpg +0 -0
  507. package/assets/motion/library/pieces/serif-quote/meta.json +12 -0
  508. package/assets/motion/library/pieces/serif-quote/piece.html +145 -0
  509. package/assets/motion/library/pieces/serif-quote/preview.jpg +0 -0
  510. package/assets/motion/library/pieces/slam-word/meta.json +12 -0
  511. package/assets/motion/library/pieces/slam-word/piece.html +72 -0
  512. package/assets/motion/library/pieces/slam-word/preview.jpg +0 -0
  513. package/assets/motion/library/pieces/soft-light-field/meta.json +12 -0
  514. package/assets/motion/library/pieces/soft-light-field/piece.html +83 -0
  515. package/assets/motion/library/pieces/soft-light-field/preview.jpg +0 -0
  516. package/assets/motion/library/pieces/sparkline-draw/meta.json +12 -0
  517. package/assets/motion/library/pieces/sparkline-draw/piece.html +204 -0
  518. package/assets/motion/library/pieces/sparkline-draw/preview.jpg +0 -0
  519. package/assets/motion/library/pieces/stack-layers/meta.json +12 -0
  520. package/assets/motion/library/pieces/stack-layers/piece.html +239 -0
  521. package/assets/motion/library/pieces/stack-layers/preview.jpg +0 -0
  522. package/assets/motion/library/pieces/stat-grid/meta.json +12 -0
  523. package/assets/motion/library/pieces/stat-grid/piece.html +200 -0
  524. package/assets/motion/library/pieces/stat-grid/preview.jpg +0 -0
  525. package/assets/motion/library/pieces/studio-backdrop/meta.json +12 -0
  526. package/assets/motion/library/pieces/studio-backdrop/piece.html +83 -0
  527. package/assets/motion/library/pieces/studio-backdrop/preview.jpg +0 -0
  528. package/assets/motion/library/pieces/tile-flip/meta.json +6 -0
  529. package/assets/motion/library/pieces/tile-flip/piece.html +6 -0
  530. package/assets/motion/library/pieces/tile-flip/preview.jpg +0 -0
  531. package/assets/motion/library/pieces/timeline-track/meta.json +12 -0
  532. package/assets/motion/library/pieces/timeline-track/piece.html +227 -0
  533. package/assets/motion/library/pieces/timeline-track/preview.jpg +0 -0
  534. package/assets/motion/library/pieces/toast-stack/meta.json +12 -0
  535. package/assets/motion/library/pieces/toast-stack/piece.html +185 -0
  536. package/assets/motion/library/pieces/toast-stack/preview.jpg +0 -0
  537. package/assets/motion/library/pieces/typewriter-caption/meta.json +12 -0
  538. package/assets/motion/library/pieces/typewriter-caption/piece.html +112 -0
  539. package/assets/motion/library/pieces/typewriter-caption/preview.jpg +0 -0
  540. package/assets/motion/library/pieces/ui-stack-3d/meta.json +12 -0
  541. package/assets/motion/library/pieces/ui-stack-3d/piece.html +236 -0
  542. package/assets/motion/library/pieces/ui-stack-3d/preview.jpg +0 -0
  543. package/assets/motion/library/pieces/vignette/meta.json +12 -0
  544. package/assets/motion/library/pieces/vignette/piece.html +85 -0
  545. package/assets/motion/library/pieces/vignette/preview.jpg +0 -0
  546. package/assets/motion/library/pieces/word-swap/meta.json +12 -0
  547. package/assets/motion/library/pieces/word-swap/piece.html +122 -0
  548. package/assets/motion/library/pieces/word-swap/preview.jpg +0 -0
  549. package/assets/motion/library/sheets/3d.jpg +0 -0
  550. package/assets/motion/library/sheets/background.jpg +0 -0
  551. package/assets/motion/library/sheets/data.jpg +0 -0
  552. package/assets/motion/library/sheets/diagram.jpg +0 -0
  553. package/assets/motion/library/sheets/frame.jpg +0 -0
  554. package/assets/motion/library/sheets/looks.jpg +0 -0
  555. package/assets/motion/library/sheets/texture.jpg +0 -0
  556. package/assets/motion/library/sheets/transition.jpg +0 -0
  557. package/assets/motion/library/sheets/type.jpg +0 -0
  558. package/assets/motion/library/sheets/ui.jpg +0 -0
  559. package/assets/motion/plugin.json +5 -0
  560. package/assets/motion/references/README.md +20 -0
  561. package/assets/motion/references/index.json +25 -0
  562. package/assets/motion/references/motion-language.md +90 -0
  563. package/assets/motion/references/runtime/data-attributes.md +78 -0
  564. package/assets/motion/references/runtime/determinism-rules.md +53 -0
  565. package/assets/motion/references/runtime/doctor-browser.md +57 -0
  566. package/assets/motion/references/runtime/gsap-easing-and-stagger.md +199 -0
  567. package/assets/motion/references/runtime/gsap-timeline-and-labels.md +96 -0
  568. package/assets/motion/references/runtime/gsap-transforms-and-perf.md +129 -0
  569. package/assets/motion/references/runtime/gsap.md +105 -0
  570. package/assets/motion/references/runtime/inputs-and-assets.md +62 -0
  571. package/assets/motion/references/runtime/lint-validate-inspect.md +131 -0
  572. package/assets/motion/references/runtime/minimal-composition.md +69 -0
  573. package/assets/motion/references/runtime/preview-render.md +156 -0
  574. package/assets/motion/references/runtime/sub-compositions.md +176 -0
  575. package/assets/motion/references/runtime/tracks-and-clips.md +87 -0
  576. package/assets/motion/references/runtime/variables-and-media.md +107 -0
  577. package/assets/motion/references/signal-study.html +39 -0
  578. package/assets/motion/references/signal-temporal.jpg +0 -0
  579. package/assets/motion/references/type-temporal.jpg +0 -0
  580. package/assets/motion/skills/brand-kit/SKILL.md +70 -0
  581. package/assets/motion/skills/motion/SKILL.md +87 -0
  582. package/assets/motion/skills/source-ingest/SKILL.md +45 -0
  583. package/assets/motion/skills/video-qa/SKILL.md +67 -0
  584. package/assets/motion/vendor/three/LICENSE +21 -0
  585. package/assets/motion/vendor/three/addons/environments/RoomEnvironment.js +182 -0
  586. package/assets/motion/vendor/three/addons/geometries/RoundedBoxGeometry.js +216 -0
  587. package/assets/motion/vendor/three/addons/geometries/TextGeometry.js +84 -0
  588. package/assets/motion/vendor/three/addons/lights/RectAreaLightTexturesLib.js +127 -0
  589. package/assets/motion/vendor/three/addons/lights/RectAreaLightUniformsLib.js +40 -0
  590. package/assets/motion/vendor/three/addons/loaders/FontLoader.js +260 -0
  591. package/assets/motion/vendor/three/addons/loaders/GLTFLoader.js +4892 -0
  592. package/assets/motion/vendor/three/addons/loaders/HDRLoader.js +486 -0
  593. package/assets/motion/vendor/three/addons/loaders/SVGLoader.js +3267 -0
  594. package/assets/motion/vendor/three/addons/math/SimplexNoise.js +470 -0
  595. package/assets/motion/vendor/three/addons/objects/Reflector.js +338 -0
  596. package/assets/motion/vendor/three/addons/postprocessing/BokehPass.js +218 -0
  597. package/assets/motion/vendor/three/addons/postprocessing/EffectComposer.js +363 -0
  598. package/assets/motion/vendor/three/addons/postprocessing/FilmPass.js +113 -0
  599. package/assets/motion/vendor/three/addons/postprocessing/MaskPass.js +195 -0
  600. package/assets/motion/vendor/three/addons/postprocessing/OutputPass.js +139 -0
  601. package/assets/motion/vendor/three/addons/postprocessing/Pass.js +191 -0
  602. package/assets/motion/vendor/three/addons/postprocessing/RenderPass.js +183 -0
  603. package/assets/motion/vendor/three/addons/postprocessing/ShaderPass.js +135 -0
  604. package/assets/motion/vendor/three/addons/postprocessing/UnrealBloomPass.js +494 -0
  605. package/assets/motion/vendor/three/addons/renderers/CSS3DRenderer.js +454 -0
  606. package/assets/motion/vendor/three/addons/shaders/BokehShader.js +151 -0
  607. package/assets/motion/vendor/three/addons/shaders/CopyShader.js +52 -0
  608. package/assets/motion/vendor/three/addons/shaders/FilmShader.js +72 -0
  609. package/assets/motion/vendor/three/addons/shaders/LuminosityHighPassShader.js +68 -0
  610. package/assets/motion/vendor/three/addons/shaders/OutputShader.js +103 -0
  611. package/assets/motion/vendor/three/addons/utils/BufferGeometryUtils.js +1435 -0
  612. package/assets/motion/vendor/three/build/three.core.min.js +6 -0
  613. package/assets/motion/vendor/three/build/three.module.min.js +6 -0
  614. package/assets/motion/vendor/three/three.json +54 -0
  615. package/dist/app-sidecar-sessions.js +5 -0
  616. package/dist/app-sidecar-sessions.js.map +1 -1
  617. package/dist/app-sidecar.js +52 -16
  618. package/dist/app-sidecar.js.map +1 -1
  619. package/dist/cli.js +2 -2
  620. package/dist/cli.js.map +1 -1
  621. package/dist/core/agent-session.d.ts +26 -0
  622. package/dist/core/agent-session.js +104 -2
  623. package/dist/core/agent-session.js.map +1 -1
  624. package/dist/core/auth-providers.js +2 -2
  625. package/dist/core/auth-providers.js.map +1 -1
  626. package/dist/core/completion-review.d.ts +24 -0
  627. package/dist/core/completion-review.js +2 -0
  628. package/dist/core/completion-review.js.map +1 -0
  629. package/dist/core/context-limits.d.ts +6 -0
  630. package/dist/core/context-limits.js +8 -0
  631. package/dist/core/context-limits.js.map +1 -1
  632. package/dist/core/fast-apply-benchmark.d.ts +1 -1
  633. package/dist/core/fast-apply-benchmark.js +2 -2
  634. package/dist/core/fast-apply-benchmark.js.map +1 -1
  635. package/dist/core/project-discovery.js +2 -0
  636. package/dist/core/project-discovery.js.map +1 -1
  637. package/dist/core/semantic-search-benchmark.d.ts +1 -1
  638. package/dist/core/semantic-search-benchmark.js +2 -2
  639. package/dist/core/semantic-search-benchmark.js.map +1 -1
  640. package/dist/core/session-export.d.ts +2 -2
  641. package/dist/core/session-export.js +6 -2
  642. package/dist/core/session-export.js.map +1 -1
  643. package/dist/core/skills.d.ts +15 -0
  644. package/dist/core/skills.js +35 -1
  645. package/dist/core/skills.js.map +1 -1
  646. package/dist/core/subagent-policy.js +1 -1
  647. package/dist/core/subagent-policy.js.map +1 -1
  648. package/dist/modes/json-mode.js +11 -2
  649. package/dist/modes/json-mode.js.map +1 -1
  650. package/dist/modes/subagent-worker-mode.d.ts +18 -0
  651. package/dist/modes/subagent-worker-mode.js +32 -27
  652. package/dist/modes/subagent-worker-mode.js.map +1 -1
  653. package/dist/motion-agent/motion-agent.d.ts +35 -0
  654. package/dist/motion-agent/motion-agent.js +117 -0
  655. package/dist/motion-agent/motion-agent.js.map +1 -0
  656. package/dist/motion-agent/motion-check-tool.d.ts +23 -0
  657. package/dist/motion-agent/motion-check-tool.js +318 -0
  658. package/dist/motion-agent/motion-check-tool.js.map +1 -0
  659. package/dist/motion-agent/motion-prompt.d.ts +2 -0
  660. package/dist/motion-agent/motion-prompt.js +44 -0
  661. package/dist/motion-agent/motion-prompt.js.map +1 -0
  662. package/dist/motion-agent/motion-review-coverage.d.ts +12 -0
  663. package/dist/motion-agent/motion-review-coverage.js +33 -0
  664. package/dist/motion-agent/motion-review-coverage.js.map +1 -0
  665. package/dist/motion-agent/motion-review-gate.d.ts +48 -0
  666. package/dist/motion-agent/motion-review-gate.js +88 -0
  667. package/dist/motion-agent/motion-review-gate.js.map +1 -0
  668. package/dist/motion-agent/motion-review-session.d.ts +65 -0
  669. package/dist/motion-agent/motion-review-session.js +418 -0
  670. package/dist/motion-agent/motion-review-session.js.map +1 -0
  671. package/dist/motion-agent/motion-review.d.ts +76 -0
  672. package/dist/motion-agent/motion-review.js +225 -0
  673. package/dist/motion-agent/motion-review.js.map +1 -0
  674. package/dist/motion-agent/motion-studio-context.d.ts +44 -0
  675. package/dist/motion-agent/motion-studio-context.js +65 -0
  676. package/dist/motion-agent/motion-studio-context.js.map +1 -0
  677. package/dist/system-prompt.d.ts +3 -0
  678. package/dist/system-prompt.js +5 -1
  679. package/dist/system-prompt.js.map +1 -1
  680. package/dist/tools/read.js +15 -2
  681. package/dist/tools/read.js.map +1 -1
  682. package/dist/tools/subagent-shared.d.ts +14 -0
  683. package/dist/tools/subagent-shared.js +25 -0
  684. package/dist/tools/subagent-shared.js.map +1 -1
  685. package/dist/ui/components/Footer.js +2 -2
  686. package/dist/ui/components/Footer.js.map +1 -1
  687. package/package.json +6 -4
@@ -0,0 +1,236 @@
1
+ <!doctype html>
2
+ <!--
3
+ ui-stack-3d: illustrative product windows fanning out in soft 3D. Glossy
4
+ white cards with real thickness, an --accent title bar, skeleton content,
5
+ soft layered shadows and a blurred back layer (depth of field). The front
6
+ window's inner card lifts toward the camera on the hero beat, and the
7
+ whole stack drifts under a slow camera move. Pure CSS 3D: text stays crisp.
8
+ Params: --us-x / --us-y (stack centre), --us-scale; FAN_AT, LIFT_AT
9
+ (seconds). Swap skeleton blocks for real labels or an <img> screenshot.
10
+ -->
11
+ <html lang="en">
12
+ <head>
13
+ <meta charset="UTF-8" />
14
+ <script src="https://cdn.jsdelivr.net/npm/gsap@3.14.2/dist/gsap.min.js"></script>
15
+ </head>
16
+ <body>
17
+ <div
18
+ id="ui-stack-3d-root"
19
+ data-composition-id="ui-stack-3d"
20
+ data-start="0"
21
+ data-duration="5"
22
+ data-width="1920"
23
+ data-height="1080"
24
+ >
25
+ <style>
26
+ [data-composition-id="ui-stack-3d"] {
27
+ --us-x: 960px;
28
+ --us-y: 660px;
29
+ --us-scale: 0.86;
30
+ --us-r: var(--radius, 22px);
31
+ --us-accent: var(--accent, #2f5bff);
32
+ --us-ink: var(--ink, #3a4150);
33
+ position: absolute;
34
+ inset: 0;
35
+ perspective: 2200px;
36
+ perspective-origin: 50% 40%;
37
+ }
38
+ [data-composition-id="ui-stack-3d"] .us-stage {
39
+ position: absolute;
40
+ left: var(--us-x);
41
+ top: var(--us-y);
42
+ width: 0;
43
+ height: 0;
44
+ transform-style: preserve-3d;
45
+ transform: scale(var(--us-scale));
46
+ }
47
+ [data-composition-id="ui-stack-3d"] .us-rig {
48
+ position: absolute;
49
+ transform-style: preserve-3d;
50
+ }
51
+ [data-composition-id="ui-stack-3d"] .us-shadow {
52
+ position: absolute;
53
+ left: -520px;
54
+ top: 250px;
55
+ width: 1040px;
56
+ height: 150px;
57
+ border-radius: 50%;
58
+ background: radial-gradient(closest-side, rgba(20, 30, 60, 0.22), transparent);
59
+ filter: blur(18px);
60
+ transform: rotateX(80deg);
61
+ }
62
+ /* A window = a stack of slabs (thickness) + the face. */
63
+ [data-composition-id="ui-stack-3d"] .us-win {
64
+ position: absolute;
65
+ width: 780px;
66
+ height: 500px;
67
+ margin: -250px 0 0 -390px;
68
+ transform-style: preserve-3d;
69
+ }
70
+ [data-composition-id="ui-stack-3d"] .us-slab {
71
+ position: absolute;
72
+ inset: 0;
73
+ border-radius: var(--us-r);
74
+ background: #d9deea;
75
+ }
76
+ [data-composition-id="ui-stack-3d"] .us-slab.s1 { transform: translateZ(-4px); background: #e3e7f0; }
77
+ [data-composition-id="ui-stack-3d"] .us-slab.s2 { transform: translateZ(-8px); background: #d6dbe7; }
78
+ [data-composition-id="ui-stack-3d"] .us-slab.s3 {
79
+ transform: translateZ(-12px);
80
+ background: #cdd3e1;
81
+ box-shadow:
82
+ 0 2px 4px rgba(20, 30, 60, 0.06),
83
+ 0 24px 48px rgba(20, 30, 60, 0.14),
84
+ 0 60px 120px rgba(20, 30, 60, 0.12);
85
+ }
86
+ [data-composition-id="ui-stack-3d"] .us-face {
87
+ position: absolute;
88
+ inset: 0;
89
+ border-radius: var(--us-r);
90
+ overflow: hidden;
91
+ background: linear-gradient(180deg, #ffffff 0%, #f4f6fb 100%);
92
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 1), inset 0 0 0 1px rgba(20, 30, 60, 0.06);
93
+ transform-style: preserve-3d;
94
+ }
95
+ [data-composition-id="ui-stack-3d"] .us-bar {
96
+ height: 64px;
97
+ display: flex;
98
+ align-items: center;
99
+ gap: 12px;
100
+ padding: 0 26px;
101
+ background: linear-gradient(180deg, color-mix(in oklab, var(--us-accent) 88%, white), var(--us-accent));
102
+ }
103
+ [data-composition-id="ui-stack-3d"] .us-dot {
104
+ width: 16px;
105
+ height: 16px;
106
+ border-radius: 50%;
107
+ background: rgba(255, 255, 255, 0.75);
108
+ }
109
+ [data-composition-id="ui-stack-3d"] .us-dot.y { background: #ffd44d; }
110
+ [data-composition-id="ui-stack-3d"] .us-body {
111
+ position: absolute;
112
+ top: 64px;
113
+ left: 0;
114
+ right: 0;
115
+ bottom: 0;
116
+ padding: 34px;
117
+ transform-style: preserve-3d;
118
+ }
119
+ [data-composition-id="ui-stack-3d"] .us-line {
120
+ height: 16px;
121
+ border-radius: 8px;
122
+ background: rgba(20, 30, 60, 0.09);
123
+ margin-bottom: 16px;
124
+ }
125
+ [data-composition-id="ui-stack-3d"] .us-side {
126
+ position: absolute;
127
+ left: 34px;
128
+ top: 34px;
129
+ width: 230px;
130
+ bottom: 34px;
131
+ border-radius: calc(var(--us-r) * 0.6);
132
+ background: linear-gradient(160deg, color-mix(in oklab, var(--us-accent) 80%, white), var(--us-accent));
133
+ }
134
+ [data-composition-id="ui-stack-3d"] .us-lift {
135
+ position: absolute;
136
+ left: 200px;
137
+ right: 60px;
138
+ top: 110px;
139
+ height: 230px;
140
+ border-radius: calc(var(--us-r) * 0.7);
141
+ background: #ffffff;
142
+ padding: 30px 34px;
143
+ box-shadow:
144
+ 0 1px 2px rgba(20, 30, 60, 0.08),
145
+ 0 18px 40px rgba(20, 30, 60, 0.16);
146
+ }
147
+ [data-composition-id="ui-stack-3d"] .us-lift .us-line { background: rgba(20, 30, 60, 0.1); }
148
+ [data-composition-id="ui-stack-3d"] .us-lift .us-line.a {
149
+ width: 46%;
150
+ height: 20px;
151
+ background: color-mix(in oklab, var(--us-accent) 70%, white);
152
+ }
153
+ [data-composition-id="ui-stack-3d"] .us-chart { position: absolute; left: 34px; right: 34px; bottom: 30px; height: 190px; }
154
+ [data-composition-id="ui-stack-3d"] .us-back { filter: blur(3px); }
155
+ [data-composition-id="ui-stack-3d"] .us-mid { filter: blur(1.2px); }
156
+ </style>
157
+ <div class="us-stage">
158
+ <div class="us-shadow" id="us-shadow"></div>
159
+ <div class="us-rig" id="us-rig">
160
+ <!-- back window: chart -->
161
+ <div class="us-win us-back" id="us-w3">
162
+ <div class="us-slab s3"></div><div class="us-slab s2"></div><div class="us-slab s1"></div>
163
+ <div class="us-face">
164
+ <div class="us-bar"><div class="us-dot"></div><div class="us-dot"></div><div class="us-dot"></div></div>
165
+ <div class="us-body">
166
+ <div class="us-line" style="width: 40%"></div>
167
+ <svg class="us-chart" viewBox="0 0 700 190" preserveAspectRatio="none">
168
+ <path d="M0 160 L120 120 L230 140 L340 80 L460 96 L580 40 L700 56" fill="none" stroke="rgba(20,30,60,.18)" stroke-width="6" stroke-linejoin="round" />
169
+ </svg>
170
+ </div>
171
+ </div>
172
+ </div>
173
+ <!-- middle window: list -->
174
+ <div class="us-win us-mid" id="us-w2">
175
+ <div class="us-slab s3"></div><div class="us-slab s2"></div><div class="us-slab s1"></div>
176
+ <div class="us-face">
177
+ <div class="us-bar"><div class="us-dot"></div><div class="us-dot"></div><div class="us-dot"></div></div>
178
+ <div class="us-body">
179
+ <div class="us-line" style="width: 70%"></div>
180
+ <div class="us-line" style="width: 55%"></div>
181
+ <div class="us-line" style="width: 62%"></div>
182
+ <div class="us-line" style="width: 48%"></div>
183
+ </div>
184
+ </div>
185
+ </div>
186
+ <!-- front window: the hero -->
187
+ <div class="us-win" id="us-w1">
188
+ <div class="us-slab s3"></div><div class="us-slab s2"></div><div class="us-slab s1"></div>
189
+ <div class="us-face">
190
+ <div class="us-bar"><div class="us-dot"></div><div class="us-dot"></div><div class="us-dot y"></div></div>
191
+ <div class="us-body">
192
+ <div class="us-side"></div>
193
+ <div class="us-line" style="margin-left: 266px; width: 34%"></div>
194
+ <!-- edit: the lifted card (replace lines with real labels if you have them) -->
195
+ <div class="us-lift" id="us-lift">
196
+ <div class="us-line a"></div>
197
+ <div class="us-line" style="width: 82%"></div>
198
+ <div class="us-line" style="width: 64%"></div>
199
+ <div class="us-line" style="width: 72%"></div>
200
+ </div>
201
+ </div>
202
+ </div>
203
+ </div>
204
+ </div>
205
+ </div>
206
+ </div>
207
+ <script>
208
+ (function () {
209
+ const FAN_AT = 0.2;
210
+ const LIFT_AT = 1.7;
211
+ const tl = gsap.timeline({ paused: true });
212
+ // Slow camera: the whole rig turns toward the viewer and rises.
213
+ tl.fromTo(
214
+ "#us-rig",
215
+ { rotationX: 16, rotationY: -26, y: 40 },
216
+ { rotationX: 9, rotationY: -12, y: 0, duration: 5, ease: "power2.out" },
217
+ 0,
218
+ );
219
+ // Windows start stacked on top of each other, then fan out in depth.
220
+ tl.fromTo("#us-w3", { x: 0, y: 0, z: 0, opacity: 0 }, { x: 250, y: -120, z: -260, opacity: 1, duration: 1.4, ease: "expo.out" }, FAN_AT);
221
+ tl.fromTo("#us-w2", { x: 0, y: 0, z: 0, opacity: 0 }, { x: 130, y: -60, z: -130, opacity: 1, duration: 1.4, ease: "expo.out" }, FAN_AT + 0.08);
222
+ tl.fromTo("#us-w1", { y: 60, z: -40, opacity: 0 }, { y: 0, z: 0, opacity: 1, duration: 1.2, ease: "expo.out" }, FAN_AT + 0.16);
223
+ tl.fromTo("#us-shadow", { opacity: 0, scale: 0.8 }, { opacity: 1, scale: 1, duration: 1.4, ease: "expo.out" }, FAN_AT);
224
+ // Hero beat: the inner card lifts out of the window toward the camera.
225
+ tl.fromTo(
226
+ "#us-lift",
227
+ { z: 0, boxShadow: "0 1px 2px rgba(20,30,60,.08), 0 6px 14px rgba(20,30,60,.10)" },
228
+ { z: 90, boxShadow: "0 2px 4px rgba(20,30,60,.10), 0 40px 70px rgba(20,30,60,.22)", duration: 1.1, ease: "expo.out" },
229
+ LIFT_AT,
230
+ );
231
+ window.__timelines = window.__timelines || {};
232
+ window.__timelines["ui-stack-3d"] = tl;
233
+ })();
234
+ </script>
235
+ </body>
236
+ </html>
@@ -0,0 +1,12 @@
1
+ {
2
+ "id": "vignette",
3
+ "name": "Vignette",
4
+ "kind": "texture",
5
+ "description": "Transparent soft elliptical edge falloff that darkens (or, retinted, lightens) the corners and keeps the center clean, with an optional slow breathe. Focuses the eye and gives flat fields a lens feel.",
6
+ "tags": ["vignette", "edges", "falloff", "lens", "focus", "overlay", "texture", "cinematic", "transparent"],
7
+ "fonts": [],
8
+ "duration": 6,
9
+ "previewAt": 3,
10
+ "license": "original",
11
+ "previewLook": "duotone-broadcast"
12
+ }
@@ -0,0 +1,85 @@
1
+ <!doctype html>
2
+ <!--
3
+ vignette: soft edge darkening (or lightening) as a transparent texture.
4
+ An elliptical falloff that leaves the center clean, with an optional slow
5
+ breathe. Mount on top of a scene for its whole length.
6
+ Params (CSS): --vg-intensity (0–1 edge strength), --vg-tone (edge color:
7
+ black darkens; set to white or var(--field) to lighten/haze),
8
+ --vg-size (clean center size, %), --vg-x / --vg-y (center).
9
+ Script: BREATHE (0 = static; fraction the intensity swells), PERIOD (s).
10
+ -->
11
+ <html lang="en">
12
+ <head>
13
+ <meta charset="UTF-8" />
14
+ <script src="https://cdn.jsdelivr.net/npm/gsap@3.14.2/dist/gsap.min.js"></script>
15
+ </head>
16
+ <body>
17
+ <div
18
+ id="vignette-root"
19
+ data-composition-id="vignette"
20
+ data-start="0"
21
+ data-duration="6"
22
+ data-width="1920"
23
+ data-height="1080"
24
+ >
25
+ <style>
26
+ [data-composition-id="vignette"] {
27
+ --vg-intensity: 0.42;
28
+ --vg-tone: rgba(0, 0, 0, 1);
29
+ --vg-size: 52%;
30
+ --vg-x: 50%;
31
+ --vg-y: 48%;
32
+ position: absolute;
33
+ inset: 0;
34
+ overflow: hidden;
35
+ pointer-events: none;
36
+ }
37
+ [data-composition-id="vignette"] .vg-wrap {
38
+ position: absolute;
39
+ inset: 0;
40
+ opacity: var(--vg-intensity);
41
+ }
42
+ [data-composition-id="vignette"] .vg-layer {
43
+ position: absolute;
44
+ inset: -4%;
45
+ background: radial-gradient(
46
+ ellipse 78% 82% at var(--vg-x) var(--vg-y),
47
+ transparent var(--vg-size),
48
+ color-mix(in srgb, var(--vg-tone) 35%, transparent) calc(var(--vg-size) + 22%),
49
+ color-mix(in srgb, var(--vg-tone) 80%, transparent) 92%,
50
+ var(--vg-tone) 118%
51
+ );
52
+ }
53
+ </style>
54
+ <div class="vg-wrap"><div class="vg-layer" id="vg-layer"></div></div>
55
+ </div>
56
+ <script>
57
+ (function () {
58
+ const BREATHE = 0.12;
59
+ const PERIOD = 6;
60
+ const DURATION = 6;
61
+ const tl = gsap.timeline({ paused: true });
62
+ const layer = document.getElementById("vg-layer");
63
+ const state = { t: 0 };
64
+ tl.fromTo(
65
+ state,
66
+ { t: 0 },
67
+ {
68
+ t: DURATION,
69
+ duration: DURATION,
70
+ ease: "none",
71
+ onUpdate() {
72
+ // b: 0 → 1 → 0 over PERIOD; the edge swells in and tightens slightly.
73
+ const b = 0.5 * (1 - Math.cos((2 * Math.PI * state.t) / PERIOD));
74
+ layer.style.opacity = String(1 - BREATHE + BREATHE * b);
75
+ layer.style.transform = `scale(${1 - 0.25 * BREATHE * b})`;
76
+ },
77
+ },
78
+ 0,
79
+ );
80
+ window.__timelines = window.__timelines || {};
81
+ window.__timelines["vignette"] = tl;
82
+ })();
83
+ </script>
84
+ </body>
85
+ </html>
@@ -0,0 +1,12 @@
1
+ {
2
+ "id": "word-swap",
3
+ "name": "Word swap",
4
+ "kind": "type",
5
+ "description": "A centered one-line sentence with a slot word that rolls vertically like a slot machine through 3–4 alternatives and lands on the final one; the slot width eases to fit each word so the line re-balances. Great for 'We make it faster / simpler / yours' value props. Transparent.",
6
+ "tags": ["rotate", "slot-machine", "word-roll", "carousel", "value-prop", "tagline", "kinetic", "swap", "cycling-word"],
7
+ "fonts": [],
8
+ "duration": 4,
9
+ "previewAt": 1.6,
10
+ "license": "original",
11
+ "previewLook": "soft-light-ad"
12
+ }
@@ -0,0 +1,122 @@
1
+ <!doctype html>
2
+ <!--
3
+ word-swap: a one-line sentence with a slot word that rolls vertically
4
+ through alternatives (slot-machine) and lands on the last one. The slot's
5
+ width eases to fit each word, so the centered sentence re-balances as it
6
+ rolls. Neighbouring words dim while they pass. Transparent background.
7
+ Params: --ws-size (font size), --ws-y (vertical center),
8
+ FIRST (time of the first roll), ROLL (seconds per roll), HOLD (seconds
9
+ each word rests), EASE.
10
+ -->
11
+ <html lang="en">
12
+ <head>
13
+ <meta charset="UTF-8" />
14
+ <script src="https://cdn.jsdelivr.net/npm/gsap@3.14.2/dist/gsap.min.js"></script>
15
+ </head>
16
+ <body>
17
+ <div
18
+ id="word-swap-root"
19
+ data-composition-id="word-swap"
20
+ data-start="0"
21
+ data-duration="4"
22
+ data-width="1920"
23
+ data-height="1080"
24
+ >
25
+ <style>
26
+ [data-composition-id="word-swap"] {
27
+ --ws-size: 150px;
28
+ --ws-y: 540px;
29
+ position: absolute;
30
+ inset: 0;
31
+ color: var(--ink, #111);
32
+ }
33
+ [data-composition-id="word-swap"] .ws-line {
34
+ position: absolute;
35
+ left: 0;
36
+ right: 0;
37
+ top: var(--ws-y);
38
+ transform: translateY(-50%);
39
+ display: flex;
40
+ justify-content: center;
41
+ align-items: flex-start;
42
+ font-family: var(--display, sans-serif);
43
+ font-weight: var(--display-weight, 800);
44
+ font-stretch: var(--display-stretch, 100%);
45
+ letter-spacing: var(--display-tracking, -0.03em);
46
+ font-size: var(--ws-size);
47
+ line-height: 1.12;
48
+ white-space: pre;
49
+ }
50
+ [data-composition-id="word-swap"] .ws-slot {
51
+ position: relative;
52
+ overflow: hidden;
53
+ height: 1.12em;
54
+ color: var(--accent, currentColor);
55
+ -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 7%, #000 93%, transparent 100%);
56
+ mask-image: linear-gradient(180deg, transparent 0%, #000 7%, #000 93%, transparent 100%);
57
+ }
58
+ [data-composition-id="word-swap"] .ws-reel {
59
+ position: absolute;
60
+ left: 0;
61
+ top: 0;
62
+ white-space: normal;
63
+ }
64
+ [data-composition-id="word-swap"] .ws-word {
65
+ display: block;
66
+ height: 1.12em;
67
+ white-space: nowrap;
68
+ }
69
+ </style>
70
+ <div class="ws-line">
71
+ <!-- edit: text before the slot (keep the trailing space) -->
72
+ <span>We make it </span>
73
+ <span class="ws-slot"
74
+ ><span class="ws-reel">
75
+ <!-- edit: slot words, in order; the last one is where it lands (3–4 words) -->
76
+ <span class="ws-word">faster</span>
77
+ <span class="ws-word">simpler</span>
78
+ <span class="ws-word">clearer</span>
79
+ <span class="ws-word">yours</span>
80
+ </span></span
81
+ >
82
+ <!-- edit: text after the slot -->
83
+ <span>.</span>
84
+ </div>
85
+ </div>
86
+ <script>
87
+ (function () {
88
+ const FIRST = 0.8;
89
+ const ROLL = 0.55;
90
+ const HOLD = 0.4;
91
+ const EASE = "expo.inOut";
92
+ const q = (s) => document.querySelector('[data-composition-id="word-swap"] ' + s);
93
+ const slot = q(".ws-slot");
94
+ const reel = q(".ws-reel");
95
+ const words = Array.from(reel.querySelectorAll(".ws-word"));
96
+ const state = { p: 0 };
97
+ // Measured on every render (fonts may load after this script runs).
98
+ function draw() {
99
+ const widths = words.map((w) => w.scrollWidth);
100
+ const h = words[0].offsetHeight;
101
+ const i = Math.min(Math.floor(state.p), words.length - 1);
102
+ const f = state.p - i;
103
+ const next = widths[Math.min(i + 1, words.length - 1)];
104
+ slot.style.width = (widths[i] + (next - widths[i]) * f).toFixed(2) + "px";
105
+ reel.style.transform = `translateY(${(-state.p * h).toFixed(2)}px)`;
106
+ words.forEach((w, j) => {
107
+ w.style.opacity = String(1 - Math.min(1, Math.abs(state.p - j)) * 0.75);
108
+ });
109
+ }
110
+ const tl = gsap.timeline({ paused: true });
111
+ tl.fromTo(q(".ws-line"), { opacity: 0, y: 40 }, { opacity: 1, y: 0, duration: 0.7, ease: "expo.out" }, 0.1);
112
+ for (let k = 1; k < words.length; k++) {
113
+ tl.to(state, { p: k, duration: ROLL, ease: EASE, onUpdate: draw }, FIRST + (k - 1) * (ROLL + HOLD));
114
+ }
115
+ tl.to({}, { duration: Math.max(0, 4 - tl.duration()) });
116
+ draw();
117
+ window.__timelines = window.__timelines || {};
118
+ window.__timelines["word-swap"] = tl;
119
+ })();
120
+ </script>
121
+ </body>
122
+ </html>
@@ -0,0 +1,5 @@
1
+ {
2
+ "name": "hyperframes",
3
+ "version": "0.8.82",
4
+ "description": "GG Motion's skills and craft references, backed by the pinned HyperFrames runtime. Release-managed by GG; no self-updates."
5
+ }
@@ -0,0 +1,20 @@
1
+ # Motion studies: behaviors, not templates
2
+
3
+ Select one relevant entry from `index.json`, then inspect its source and temporal
4
+ preview. Choose by the visible action it solves, not by palette or subject. An
5
+ ordinary brief deserves direction without asking for a showreel persona.
6
+
7
+ These small GG-authored studies connect action plans to implementation. They do
8
+ not require zoom, 3D, giant type, circles, nonstop movement or a fixed shot order.
9
+ The previews are time-ordered source renders, not full playback. A project's
10
+ approved local references may be more relevant; do not scan other folders.
11
+
12
+ `signal-study.html` is an offline, seekable reduction of GG's local signal study.
13
+ Call `seekStudy(seconds)` (0–4); transfer its coupled path/framing state into the
14
+ composition's existing GSAP timeline. It is reference source, not a replacement
15
+ HyperFrames project. The second entry points to the already-bundled library piece.
16
+
17
+ Rebuild the two JPEGs with `scripts/build-motion-references.mjs <local-gsap-file>`
18
+ from the ggcoder package. It uses installed Playwright/Sharp and blocks network
19
+ requests, substituting the supplied local GSAP for the library piece's pinned
20
+ script. No user videos, third-party logos, music or private assets are bundled.
@@ -0,0 +1,25 @@
1
+ {
2
+ "version": 1,
3
+ "studies": [
4
+ {
5
+ "id": "follow-the-action",
6
+ "source": "signal-study.html",
7
+ "preview": "signal-temporal.jpg",
8
+ "intervals": [[0, 1], [1, 3], [3, 4]],
9
+ "origin": "GG-authored reduction of .gg/motion-studies-bBxg5r/assets/studies.js signal branch, original 1.5–6.3 seconds",
10
+ "behavior": "Path progress, focal position and framing share one seekable state. The framing follows the moving signal, then reveals its complete route.",
11
+ "useFor": "Following a process, attention, flow or causal connection",
12
+ "notMandatory": "Camera following, palette, curves, circles, zoom or an abstract subject"
13
+ },
14
+ {
15
+ "id": "type-as-spatial-handoff",
16
+ "source": "../library/pieces/scale-through-word/piece.html",
17
+ "preview": "type-temporal.jpg",
18
+ "intervals": [[0.1, 0.9], [1.1, 2.5]],
19
+ "origin": "Existing GG-owned library piece; also demonstrated by the local Type Becomes the World study",
20
+ "behavior": "A word changes from something to read into a spatial opening; incoming content inherits the outgoing focal position.",
21
+ "useFor": "A semantic transition with spatial continuity, not a generic cut between captions",
22
+ "notMandatory": "Huge type, a specific font, a portal, zooms in every shot or the local showreel's shot order"
23
+ }
24
+ ]
25
+ }
@@ -0,0 +1,90 @@
1
+ # Motion language
2
+
3
+ Use this for every video you design. The user's brand kit, references or a
4
+ chosen library look override any default below. These are principles, not a
5
+ house look. Choose the concept, palette and type fresh for every video; never
6
+ copy an earlier video's.
7
+
8
+ ## The bar
9
+
10
+ Make a showcase piece, as if the best motion designers will judge it frame by
11
+ frame. Ambition means deliberate craft, not length or effect count. Every
12
+ colour, word, cut and ease needs a reason. Cut generic defaults: plain fades,
13
+ slowly drifting gradients, text that slides up and sits there.
14
+
15
+ ## Plan first
16
+
17
+ Before writing code, decide these and record them in the `Concept` and
18
+ `Language` lines of `frame.md`. A few lines is enough; nobody approves them.
19
+
20
+ - **Concept**: the idea the video demonstrates, in one sentence. Show it; don't
21
+ just state it.
22
+ - **Motif**: one shape or element that recurs and links every scene.
23
+ - **Palette**: each colour's role.
24
+ - **Type**: each family's role.
25
+ - **Beat**: tempo, arc and frame rate.
26
+
27
+ ## Principles
28
+
29
+ **Continuity.** Each scene hands something to the next: a shape, a word, a
30
+ colour field or a camera move. Prefer match cuts and shape handoffs to
31
+ cross-fades. The `type-as-spatial-handoff` study in [README.md](README.md) shows
32
+ type becoming the next scene.
33
+
34
+ **Palette.** At most four flat colours: a dark neutral, a light neutral, one
35
+ saturated hero colour and one bright accent used sparingly. Derive them from
36
+ the brand or subject. Full-frame colour blocks that change on most cuts carry
37
+ energy; gradients and glows are seasoning, not the base. Keep text readable.
38
+
39
+ **Type.** One heavy display family, set huge: hero words around 250–360 px at
40
+ 1080p, one to three words per shot. Keep any explanatory line short. Animate
41
+ weight and width axes as motion, not only position and opacity. Add at most one
42
+ contrasting voice, such as an italic serif, plus small uppercase tracked mono
43
+ for labels and UI. Bundled axes (see `fonts.mjs list` and its specimen): weight
44
+ and width in Mona Sans, Hubot Sans, Anybody, Archivo, Bricolage Grotesque and
45
+ Martian Mono; italics in Fraunces and Newsreader. Brand fonts win.
46
+
47
+ **Motion.** Entrances `expo.out`; exits `power3.in`; moves `expo.inOut` or
48
+ `power3.inOut`; pops `back.out`; settles `elastic.out`, sparingly. Most
49
+ durations 0.12–0.7 s; staggers 0.012–0.06 s. Use real animation principles
50
+ where they help: anticipation before big moves, squash and stretch on impact,
51
+ arcs instead of straight paths, overlapping action, follow-through and smears on
52
+ fast moves. Every move starts, travels and lands on purpose; nothing drifts. For
53
+ calm or luxury subjects, lengthen durations and soften eases, and stay just as
54
+ deliberate.
55
+
56
+ **Pace.** Cut on a beat grid even without music: 0.5 s at 120 BPM by default,
57
+ or the track's beats (`hf beats`) when there is music. For a short promo: a slow
58
+ opening, a fast-cut middle, one showpiece moment, a climax such as a
59
+ convergence or particle burst, then an end card held about 2 s. Declare that
60
+ hold in the hold plan before checking.
61
+
62
+ **3D, when the subject earns it.** One hero object with a physical material
63
+ (clearcoat or iridescent) and environment lighting; a few supporting elements
64
+ such as orbiting rings, trails or sparse debris; a soft coloured glow; a
65
+ cinematic camera move such as an orbit or dolly zoom. Resolve 3D back to flat 2D
66
+ to hand off to the next scene. Use the bundled Three.js (`three.mjs`); no 3D by
67
+ default.
68
+
69
+ **Chrome, when it suits.** A small persistent mono layer (labels, timecode,
70
+ chapter name, a progress bar with markers) makes a tech subject feel like a pro
71
+ tool. Leave it out elsewhere.
72
+
73
+ **Frame rate.** 60 fps for fast, dense motion, where smears and quick cuts read
74
+ cleaner; 30 fps for calmer pieces. 60 fps doubles render time.
75
+
76
+ **Truth.** Show only real product UI, numbers and claims from the user's
77
+ sources.
78
+
79
+ ## Building blocks
80
+
81
+ Library looks (`library.mjs list looks`) are complete palette, type and rhythm
82
+ systems; when one fits the concept, it replaces the palette and type defaults
83
+ above. Library pieces are optional building blocks.
84
+
85
+ ## Check against the plan
86
+
87
+ When `motion_check` returns frames, compare them with the plan in `frame.md` as
88
+ well as the technical results. A lost motif, an off-palette colour, a generic
89
+ transition or unreadable type is a concrete defect: fix it and check the new
90
+ render.