@openvidstudio/mcp-server 0.1.0 → 1.3.1

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 (1862) hide show
  1. package/LICENSE +202 -0
  2. package/README.md +63 -0
  3. package/dist/api.d.ts +28 -0
  4. package/dist/api.js +35 -0
  5. package/dist/audioTick.d.ts +33 -0
  6. package/dist/audioTick.js +117 -0
  7. package/dist/beats.d.ts +126 -3
  8. package/dist/capture.d.ts +33 -0
  9. package/dist/capture.js +97 -1
  10. package/dist/config.d.ts +46 -0
  11. package/dist/config.js +27 -1
  12. package/dist/facts.d.ts +45 -0
  13. package/dist/facts.js +124 -0
  14. package/dist/frameDiff.d.ts +74 -0
  15. package/dist/frameDiff.js +120 -0
  16. package/dist/jobs.d.ts +37 -0
  17. package/dist/jobs.js +72 -0
  18. package/dist/paths.d.ts +10 -0
  19. package/dist/paths.js +11 -1
  20. package/dist/primitives/registry.d.ts +43 -0
  21. package/dist/primitives/registry.js +729 -0
  22. package/dist/remotionBridge.d.ts +138 -0
  23. package/dist/remotionBridge.js +364 -0
  24. package/dist/renderCache.d.ts +178 -0
  25. package/dist/renderCache.js +371 -0
  26. package/dist/scenes/castToSteps.d.ts +49 -0
  27. package/dist/scenes/castToSteps.js +69 -0
  28. package/dist/scenes/cursorPoints.d.ts +43 -0
  29. package/dist/scenes/cursorPoints.js +125 -0
  30. package/dist/scenes/repoInfo.d.ts +17 -0
  31. package/dist/scenes/repoInfo.js +122 -0
  32. package/dist/scenes/templates.d.ts +77 -2
  33. package/dist/scenes/templates.js +349 -71
  34. package/dist/scenes/videoDuration.d.ts +15 -0
  35. package/dist/scenes/videoDuration.js +30 -0
  36. package/dist/server.d.ts +2 -1
  37. package/dist/server.js +19 -1
  38. package/dist/stdio.js +0 -0
  39. package/dist/tools/captureDesktop.d.ts +30 -0
  40. package/dist/tools/captureDesktop.js +225 -0
  41. package/dist/tools/captureMobile.d.ts +18 -0
  42. package/dist/tools/captureMobile.js +176 -0
  43. package/dist/tools/captureScreenRecording.d.ts +102 -2
  44. package/dist/tools/captureScreenRecording.js +310 -12
  45. package/dist/tools/captureScreenshot.d.ts +126 -2
  46. package/dist/tools/captureScreenshot.js +308 -24
  47. package/dist/tools/captureTerminal.d.ts +50 -0
  48. package/dist/tools/captureTerminal.js +156 -0
  49. package/dist/tools/checkScript.d.ts +75 -0
  50. package/dist/tools/checkScript.js +279 -0
  51. package/dist/tools/collectFacts.d.ts +82 -0
  52. package/dist/tools/collectFacts.js +210 -0
  53. package/dist/tools/composeScore.d.ts +156 -0
  54. package/dist/tools/composeScore.js +330 -0
  55. package/dist/tools/contactSheet.d.ts +19 -1
  56. package/dist/tools/contactSheet.js +53 -14
  57. package/dist/tools/diffBeats.d.ts +48 -0
  58. package/dist/tools/diffBeats.js +226 -0
  59. package/dist/tools/docsDrift.d.ts +84 -0
  60. package/dist/tools/docsDrift.js +275 -0
  61. package/dist/tools/exportRendition.d.ts +283 -0
  62. package/dist/tools/exportRendition.js +688 -0
  63. package/dist/tools/extractBrand.d.ts +32 -0
  64. package/dist/tools/extractBrand.js +541 -0
  65. package/dist/tools/finalizeVideo.d.ts +94 -0
  66. package/dist/tools/finalizeVideo.js +300 -0
  67. package/dist/tools/generateNarration.d.ts +79 -1
  68. package/dist/tools/generateNarration.js +228 -63
  69. package/dist/tools/importHiggsfieldClip.js +16 -0
  70. package/dist/tools/index.js +51 -0
  71. package/dist/tools/initProject.d.ts +12 -1
  72. package/dist/tools/initProject.js +75 -2
  73. package/dist/tools/jobStatus.d.ts +14 -0
  74. package/dist/tools/jobStatus.js +37 -0
  75. package/dist/tools/mcp.d.ts +9 -0
  76. package/dist/tools/mcp.js +66 -4
  77. package/dist/tools/motionPrimitives.d.ts +46 -0
  78. package/dist/tools/motionPrimitives.js +128 -0
  79. package/dist/tools/musicCues.d.ts +43 -0
  80. package/dist/tools/musicCues.js +252 -0
  81. package/dist/tools/musicLibrary.d.ts +80 -0
  82. package/dist/tools/musicLibrary.js +614 -0
  83. package/dist/tools/planBeats.d.ts +35 -0
  84. package/dist/tools/planBeats.js +98 -5
  85. package/dist/tools/planProduction.d.ts +77 -0
  86. package/dist/tools/planProduction.js +303 -0
  87. package/dist/tools/planShots.d.ts +79 -0
  88. package/dist/tools/planShots.js +427 -0
  89. package/dist/tools/preflight.d.ts +43 -0
  90. package/dist/tools/preflight.js +183 -15
  91. package/dist/tools/qcCapture.d.ts +38 -0
  92. package/dist/tools/qcCapture.js +206 -0
  93. package/dist/tools/qcExtractFrames.d.ts +36 -6
  94. package/dist/tools/qcExtractFrames.js +81 -28
  95. package/dist/tools/reformatVertical.d.ts +112 -0
  96. package/dist/tools/reformatVertical.js +260 -0
  97. package/dist/tools/releaseDiff.d.ts +96 -0
  98. package/dist/tools/releaseDiff.js +319 -0
  99. package/dist/tools/renderStills.d.ts +138 -0
  100. package/dist/tools/renderStills.js +399 -0
  101. package/dist/tools/renderVideo.d.ts +67 -1
  102. package/dist/tools/renderVideo.js +353 -5
  103. package/dist/tools/scaffoldScene.d.ts +29 -4
  104. package/dist/tools/scaffoldScene.js +218 -16
  105. package/dist/tools/soundEffects.d.ts +49 -0
  106. package/dist/tools/soundEffects.js +383 -0
  107. package/dist/tools/stitchComposition.d.ts +105 -6
  108. package/dist/tools/stitchComposition.js +416 -50
  109. package/dist/tools/validateBeats.d.ts +26 -0
  110. package/dist/tools/validateBeats.js +355 -21
  111. package/dist/tools/validateScenes.d.ts +65 -3
  112. package/dist/tools/validateScenes.js +325 -32
  113. package/dist/tools/validateScenesRender.d.ts +178 -0
  114. package/dist/tools/validateScenesRender.js +741 -0
  115. package/dist/tools/visualRegression.d.ts +72 -0
  116. package/dist/tools/visualRegression.js +192 -0
  117. package/dist/tools/writeBeatsFile.d.ts +1 -0
  118. package/dist/tools/writeBeatsFile.js +4 -2
  119. package/dist/tools/writeBrief.d.ts +155 -0
  120. package/dist/tools/writeBrief.js +344 -0
  121. package/dist/tools/writeDescription.d.ts +52 -0
  122. package/dist/tools/writeDescription.js +441 -0
  123. package/dist/util.d.ts +7 -12
  124. package/dist/util.js +14 -48
  125. package/docs/API.md +1060 -344
  126. package/docs/CAPTURE.md +182 -0
  127. package/docs/CREATIVE.md +217 -0
  128. package/docs/NARRATION.md +245 -111
  129. package/docs/OVERVIEW.md +30 -3
  130. package/docs/PIPELINE.md +387 -7
  131. package/docs/PLANNING.md +309 -19
  132. package/docs/PRESETS.md +153 -0
  133. package/docs/SCRIPT.md +134 -0
  134. package/docs/STYLE.md +74 -9
  135. package/docs/SUPERNOVA.md +153 -0
  136. package/docs/TOOLS.md +52 -0
  137. package/package.json +60 -54
  138. package/py/compose-score.py +1032 -0
  139. package/py/edge-words.py +57 -0
  140. package/templates/default/.agents/skills/remotion-best-practices/SKILL.md +59 -0
  141. package/templates/default/.agents/skills/remotion-best-practices/agents/openai.yaml +7 -0
  142. package/templates/default/.agents/skills/remotion-best-practices/assets/remotion-icon.png +0 -0
  143. package/templates/default/.agents/skills/remotion-best-practices/remotion-captions/REFERENCE.md +36 -0
  144. package/templates/default/.agents/skills/remotion-best-practices/remotion-captions/agents/openai.yaml +7 -0
  145. package/templates/default/.agents/skills/remotion-best-practices/remotion-captions/assets/remotion-icon.png +0 -0
  146. package/templates/default/.agents/skills/remotion-best-practices/remotion-captions/display-captions.md +190 -0
  147. package/templates/default/.agents/skills/remotion-best-practices/remotion-captions/import-srt-captions.md +73 -0
  148. package/templates/default/.agents/skills/remotion-best-practices/remotion-captions/transcribe-captions.md +70 -0
  149. package/templates/default/.agents/skills/remotion-best-practices/remotion-create/REFERENCE.md +68 -0
  150. package/templates/default/.agents/skills/remotion-best-practices/remotion-create/agents/openai.yaml +7 -0
  151. package/templates/default/.agents/skills/remotion-best-practices/remotion-create/assets/remotion-icon.png +0 -0
  152. package/templates/default/.agents/skills/remotion-best-practices/remotion-create/tailwind.md +11 -0
  153. package/templates/default/.agents/skills/remotion-best-practices/remotion-create/video-layout.md +9 -0
  154. package/templates/default/.agents/skills/remotion-best-practices/remotion-docs/REFERENCE.md +46 -0
  155. package/templates/default/.agents/skills/remotion-best-practices/remotion-docs/agents/openai.yaml +7 -0
  156. package/templates/default/.agents/skills/remotion-best-practices/remotion-docs/assets/remotion-icon.png +0 -0
  157. package/templates/default/.agents/skills/remotion-best-practices/remotion-interactivity/REFERENCE.md +247 -0
  158. package/templates/default/.agents/skills/remotion-best-practices/remotion-interactivity/agents/openai.yaml +7 -0
  159. package/templates/default/.agents/skills/remotion-best-practices/remotion-interactivity/assets/remotion-icon.png +0 -0
  160. package/templates/default/.agents/skills/remotion-best-practices/remotion-maps/REFERENCE.md +36 -0
  161. package/templates/default/.agents/skills/remotion-best-practices/remotion-maps/agents/openai.yaml +7 -0
  162. package/templates/default/.agents/skills/remotion-best-practices/remotion-maps/assets/remotion-icon.png +0 -0
  163. package/templates/default/.agents/skills/remotion-best-practices/remotion-maps/techniques/cesium/TECHNIQUE.md +89 -0
  164. package/templates/default/.agents/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/CesiumFlythrough.tsx +284 -0
  165. package/templates/default/.agents/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/cesium-path.json +299 -0
  166. package/templates/default/.agents/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/city-path.json +12 -0
  167. package/templates/default/.agents/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/example-Root.tsx +39 -0
  168. package/templates/default/.agents/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/flight-path.ts +35 -0
  169. package/templates/default/.agents/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/sample-river.geojson +215 -0
  170. package/templates/default/.agents/skills/remotion-best-practices/remotion-maps/techniques/cesium/references/3d-data-sources.md +43 -0
  171. package/templates/default/.agents/skills/remotion-best-practices/remotion-maps/techniques/cesium/references/3d-flyover-architecture.md +128 -0
  172. package/templates/default/.agents/skills/remotion-best-practices/remotion-maps/techniques/cesium/references/3d-troubleshooting.md +57 -0
  173. package/templates/default/.agents/skills/remotion-best-practices/remotion-maps/techniques/cesium/scripts/prep-cesium-path.mjs +161 -0
  174. package/templates/default/.agents/skills/remotion-best-practices/remotion-maps/techniques/mapbox/TECHNIQUE.md +449 -0
  175. package/templates/default/.agents/skills/remotion-best-practices/remotion-maps/techniques/mapbox/references/render-stability.md +64 -0
  176. package/templates/default/.agents/skills/remotion-best-practices/remotion-maps/techniques/maplibre/TECHNIQUE.md +465 -0
  177. package/templates/default/.agents/skills/remotion-best-practices/remotion-maps/techniques/maplibre/references/render-stability.md +64 -0
  178. package/templates/default/.agents/skills/remotion-best-practices/remotion-maps/techniques/maptiler/TECHNIQUE.md +80 -0
  179. package/templates/default/.agents/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/CountryLabel.tsx +70 -0
  180. package/templates/default/.agents/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/MapTilerVectorElement.ts +80 -0
  181. package/templates/default/.agents/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/RiverReveal.tsx +363 -0
  182. package/templates/default/.agents/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/example-Root.tsx +22 -0
  183. package/templates/default/.agents/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/sample-data/country-meta.json +7535 -0
  184. package/templates/default/.agents/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/sample-data/yarlung-flow.json +605 -0
  185. package/templates/default/.agents/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/tokens.ts +34 -0
  186. package/templates/default/.agents/skills/remotion-best-practices/remotion-maps/techniques/maptiler/references/map-data-sources.md +91 -0
  187. package/templates/default/.agents/skills/remotion-best-practices/remotion-maps/techniques/maptiler/references/map-explainer-architecture.md +129 -0
  188. package/templates/default/.agents/skills/remotion-best-practices/remotion-maps/techniques/maptiler/references/map-geo-prep.md +85 -0
  189. package/templates/default/.agents/skills/remotion-best-practices/remotion-maps/techniques/maptiler/references/render-stability.md +64 -0
  190. package/templates/default/.agents/skills/remotion-best-practices/remotion-maps/techniques/maptiler/scripts/prep-geo.mjs +202 -0
  191. package/templates/default/.agents/skills/remotion-best-practices/remotion-maps/techniques/static-map/TECHNIQUE.md +37 -0
  192. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/3d.md +86 -0
  193. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/REFERENCE.md +365 -0
  194. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/agents/openai.yaml +7 -0
  195. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/assets/remotion-icon.png +0 -0
  196. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/audio-visualization.md +198 -0
  197. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/audio.md +171 -0
  198. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/calculate-metadata.md +136 -0
  199. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/compositions.md +117 -0
  200. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/cropping.md +34 -0
  201. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/effects.md +251 -0
  202. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/embedding-videos.md +173 -0
  203. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/ffmpeg.md +38 -0
  204. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/gifs.md +187 -0
  205. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/google-fonts.md +76 -0
  206. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/html-in-canvas.md +128 -0
  207. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/images.md +73 -0
  208. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/light-leaks.md +106 -0
  209. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/local-fonts.md +69 -0
  210. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/lottie.md +73 -0
  211. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/measuring-dom-nodes.md +38 -0
  212. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/measuring-text.md +146 -0
  213. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/multi-scene-video.md +81 -0
  214. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/parameters.md +111 -0
  215. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/remotion-maps/REFERENCE.md +36 -0
  216. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/remotion-maps/agents/openai.yaml +7 -0
  217. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/remotion-maps/assets/remotion-icon.png +0 -0
  218. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/TECHNIQUE.md +89 -0
  219. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/CesiumFlythrough.tsx +284 -0
  220. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/cesium-path.json +299 -0
  221. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/city-path.json +12 -0
  222. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/example-Root.tsx +39 -0
  223. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/flight-path.ts +35 -0
  224. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/sample-river.geojson +215 -0
  225. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/references/3d-data-sources.md +43 -0
  226. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/references/3d-flyover-architecture.md +128 -0
  227. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/references/3d-troubleshooting.md +57 -0
  228. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/scripts/prep-cesium-path.mjs +161 -0
  229. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/mapbox/TECHNIQUE.md +449 -0
  230. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/mapbox/references/render-stability.md +64 -0
  231. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maplibre/TECHNIQUE.md +465 -0
  232. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maplibre/references/render-stability.md +64 -0
  233. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/TECHNIQUE.md +80 -0
  234. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/CountryLabel.tsx +70 -0
  235. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/MapTilerVectorElement.ts +80 -0
  236. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/RiverReveal.tsx +363 -0
  237. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/example-Root.tsx +22 -0
  238. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/sample-data/country-meta.json +7535 -0
  239. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/sample-data/yarlung-flow.json +605 -0
  240. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/tokens.ts +34 -0
  241. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/references/map-data-sources.md +91 -0
  242. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/references/map-explainer-architecture.md +129 -0
  243. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/references/map-geo-prep.md +85 -0
  244. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/references/render-stability.md +64 -0
  245. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/scripts/prep-geo.mjs +202 -0
  246. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/static-map/TECHNIQUE.md +37 -0
  247. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/sequencing.md +169 -0
  248. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/sfx.md +51 -0
  249. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/silence-detection.md +71 -0
  250. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/text-highlights.md +56 -0
  251. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/timing.md +111 -0
  252. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/transitions.md +239 -0
  253. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/video-editing.md +90 -0
  254. package/templates/default/.agents/skills/remotion-best-practices/remotion-markup/voiceover.md +99 -0
  255. package/templates/default/.agents/skills/remotion-best-practices/remotion-multimedia/REFERENCE.md +20 -0
  256. package/templates/default/.agents/skills/remotion-best-practices/remotion-multimedia/agents/openai.yaml +7 -0
  257. package/templates/default/.agents/skills/remotion-best-practices/remotion-multimedia/assets/remotion-icon.png +0 -0
  258. package/templates/default/.agents/skills/remotion-best-practices/remotion-multimedia/get-audio-duration.md +56 -0
  259. package/templates/default/.agents/skills/remotion-best-practices/remotion-multimedia/get-video-dimensions.md +66 -0
  260. package/templates/default/.agents/skills/remotion-best-practices/remotion-multimedia/get-video-duration.md +58 -0
  261. package/templates/default/.agents/skills/remotion-best-practices/remotion-render/REFERENCE.md +27 -0
  262. package/templates/default/.agents/skills/remotion-best-practices/remotion-render/agents/openai.yaml +7 -0
  263. package/templates/default/.agents/skills/remotion-best-practices/remotion-render/assets/remotion-icon.png +0 -0
  264. package/templates/default/.agents/skills/remotion-best-practices/remotion-render/transparent-videos.md +106 -0
  265. package/templates/default/.agents/skills/remotion-best-practices/remotion-saas/REFERENCE.md +33 -0
  266. package/templates/default/.agents/skills/remotion-best-practices/remotion-saas/agents/openai.yaml +7 -0
  267. package/templates/default/.agents/skills/remotion-best-practices/remotion-saas/assets/remotion-icon.png +0 -0
  268. package/templates/default/.agents/skills/remotion-best-practices/remotion-saas/framework.md +21 -0
  269. package/templates/default/.agents/skills/remotion-best-practices/remotion-saas/player.md +33 -0
  270. package/templates/default/.agents/skills/remotion-best-practices/remotion-saas/rendering.md +69 -0
  271. package/templates/default/.agents/skills/remotion-best-practices/remotion-studio/REFERENCE.md +24 -0
  272. package/templates/default/.agents/skills/remotion-best-practices/remotion-studio/agents/openai.yaml +7 -0
  273. package/templates/default/.agents/skills/remotion-best-practices/remotion-studio/assets/remotion-icon.png +0 -0
  274. package/templates/default/.agents/skills/remotion-best-practices/remotion-upgrade/REFERENCE.md +31 -0
  275. package/templates/default/.agents/skills/remotion-best-practices/remotion-upgrade/agents/openai.yaml +7 -0
  276. package/templates/default/.agents/skills/remotion-best-practices/remotion-upgrade/assets/remotion-icon.png +0 -0
  277. package/templates/default/.agents/skills/remotion-captions/SKILL.md +36 -0
  278. package/templates/default/.agents/skills/remotion-captions/agents/openai.yaml +7 -0
  279. package/templates/default/.agents/skills/remotion-captions/assets/remotion-icon.png +0 -0
  280. package/templates/default/.agents/skills/remotion-captions/display-captions.md +190 -0
  281. package/templates/default/.agents/skills/remotion-captions/import-srt-captions.md +73 -0
  282. package/templates/default/.agents/skills/remotion-captions/transcribe-captions.md +70 -0
  283. package/templates/default/.agents/skills/remotion-create/SKILL.md +68 -0
  284. package/templates/default/.agents/skills/remotion-create/agents/openai.yaml +7 -0
  285. package/templates/default/.agents/skills/remotion-create/assets/remotion-icon.png +0 -0
  286. package/templates/default/.agents/skills/remotion-create/tailwind.md +11 -0
  287. package/templates/default/.agents/skills/remotion-create/video-layout.md +9 -0
  288. package/templates/default/.agents/skills/remotion-docs/SKILL.md +46 -0
  289. package/templates/default/.agents/skills/remotion-docs/agents/openai.yaml +7 -0
  290. package/templates/default/.agents/skills/remotion-docs/assets/remotion-icon.png +0 -0
  291. package/templates/default/.agents/skills/remotion-interactivity/SKILL.md +247 -0
  292. package/templates/default/.agents/skills/remotion-interactivity/agents/openai.yaml +7 -0
  293. package/templates/default/.agents/skills/remotion-interactivity/assets/remotion-icon.png +0 -0
  294. package/templates/default/.agents/skills/remotion-maps/SKILL.md +36 -0
  295. package/templates/default/.agents/skills/remotion-maps/agents/openai.yaml +7 -0
  296. package/templates/default/.agents/skills/remotion-maps/assets/remotion-icon.png +0 -0
  297. package/templates/default/.agents/skills/remotion-maps/techniques/cesium/TECHNIQUE.md +89 -0
  298. package/templates/default/.agents/skills/remotion-maps/techniques/cesium/assets/CesiumFlythrough.tsx +284 -0
  299. package/templates/default/.agents/skills/remotion-maps/techniques/cesium/assets/cesium-path.json +299 -0
  300. package/templates/default/.agents/skills/remotion-maps/techniques/cesium/assets/city-path.json +12 -0
  301. package/templates/default/.agents/skills/remotion-maps/techniques/cesium/assets/example-Root.tsx +39 -0
  302. package/templates/default/.agents/skills/remotion-maps/techniques/cesium/assets/flight-path.ts +35 -0
  303. package/templates/default/.agents/skills/remotion-maps/techniques/cesium/assets/sample-river.geojson +215 -0
  304. package/templates/default/.agents/skills/remotion-maps/techniques/cesium/references/3d-data-sources.md +43 -0
  305. package/templates/default/.agents/skills/remotion-maps/techniques/cesium/references/3d-flyover-architecture.md +128 -0
  306. package/templates/default/.agents/skills/remotion-maps/techniques/cesium/references/3d-troubleshooting.md +57 -0
  307. package/templates/default/.agents/skills/remotion-maps/techniques/cesium/scripts/prep-cesium-path.mjs +161 -0
  308. package/templates/default/.agents/skills/remotion-maps/techniques/mapbox/TECHNIQUE.md +449 -0
  309. package/templates/default/.agents/skills/remotion-maps/techniques/mapbox/references/render-stability.md +64 -0
  310. package/templates/default/.agents/skills/remotion-maps/techniques/maplibre/TECHNIQUE.md +465 -0
  311. package/templates/default/.agents/skills/remotion-maps/techniques/maplibre/references/render-stability.md +64 -0
  312. package/templates/default/.agents/skills/remotion-maps/techniques/maptiler/TECHNIQUE.md +80 -0
  313. package/templates/default/.agents/skills/remotion-maps/techniques/maptiler/assets/CountryLabel.tsx +70 -0
  314. package/templates/default/.agents/skills/remotion-maps/techniques/maptiler/assets/MapTilerVectorElement.ts +80 -0
  315. package/templates/default/.agents/skills/remotion-maps/techniques/maptiler/assets/RiverReveal.tsx +363 -0
  316. package/templates/default/.agents/skills/remotion-maps/techniques/maptiler/assets/example-Root.tsx +22 -0
  317. package/templates/default/.agents/skills/remotion-maps/techniques/maptiler/assets/sample-data/country-meta.json +7535 -0
  318. package/templates/default/.agents/skills/remotion-maps/techniques/maptiler/assets/sample-data/yarlung-flow.json +605 -0
  319. package/templates/default/.agents/skills/remotion-maps/techniques/maptiler/assets/tokens.ts +34 -0
  320. package/templates/default/.agents/skills/remotion-maps/techniques/maptiler/references/map-data-sources.md +91 -0
  321. package/templates/default/.agents/skills/remotion-maps/techniques/maptiler/references/map-explainer-architecture.md +129 -0
  322. package/templates/default/.agents/skills/remotion-maps/techniques/maptiler/references/map-geo-prep.md +85 -0
  323. package/templates/default/.agents/skills/remotion-maps/techniques/maptiler/references/render-stability.md +64 -0
  324. package/templates/default/.agents/skills/remotion-maps/techniques/maptiler/scripts/prep-geo.mjs +202 -0
  325. package/templates/default/.agents/skills/remotion-maps/techniques/static-map/TECHNIQUE.md +37 -0
  326. package/templates/default/.agents/skills/remotion-markup/3d.md +86 -0
  327. package/templates/default/.agents/skills/remotion-markup/SKILL.md +365 -0
  328. package/templates/default/.agents/skills/remotion-markup/agents/openai.yaml +7 -0
  329. package/templates/default/.agents/skills/remotion-markup/assets/remotion-icon.png +0 -0
  330. package/templates/default/.agents/skills/remotion-markup/audio-visualization.md +198 -0
  331. package/templates/default/.agents/skills/remotion-markup/audio.md +171 -0
  332. package/templates/default/.agents/skills/remotion-markup/calculate-metadata.md +136 -0
  333. package/templates/default/.agents/skills/remotion-markup/compositions.md +117 -0
  334. package/templates/default/.agents/skills/remotion-markup/cropping.md +34 -0
  335. package/templates/default/.agents/skills/remotion-markup/effects.md +251 -0
  336. package/templates/default/.agents/skills/remotion-markup/embedding-videos.md +173 -0
  337. package/templates/default/.agents/skills/remotion-markup/ffmpeg.md +38 -0
  338. package/templates/default/.agents/skills/remotion-markup/gifs.md +187 -0
  339. package/templates/default/.agents/skills/remotion-markup/google-fonts.md +76 -0
  340. package/templates/default/.agents/skills/remotion-markup/html-in-canvas.md +128 -0
  341. package/templates/default/.agents/skills/remotion-markup/images.md +73 -0
  342. package/templates/default/.agents/skills/remotion-markup/light-leaks.md +106 -0
  343. package/templates/default/.agents/skills/remotion-markup/local-fonts.md +69 -0
  344. package/templates/default/.agents/skills/remotion-markup/lottie.md +73 -0
  345. package/templates/default/.agents/skills/remotion-markup/measuring-dom-nodes.md +38 -0
  346. package/templates/default/.agents/skills/remotion-markup/measuring-text.md +146 -0
  347. package/templates/default/.agents/skills/remotion-markup/multi-scene-video.md +81 -0
  348. package/templates/default/.agents/skills/remotion-markup/parameters.md +111 -0
  349. package/templates/default/.agents/skills/remotion-markup/remotion-maps/REFERENCE.md +36 -0
  350. package/templates/default/.agents/skills/remotion-markup/remotion-maps/agents/openai.yaml +7 -0
  351. package/templates/default/.agents/skills/remotion-markup/remotion-maps/assets/remotion-icon.png +0 -0
  352. package/templates/default/.agents/skills/remotion-markup/remotion-maps/techniques/cesium/TECHNIQUE.md +89 -0
  353. package/templates/default/.agents/skills/remotion-markup/remotion-maps/techniques/cesium/assets/CesiumFlythrough.tsx +284 -0
  354. package/templates/default/.agents/skills/remotion-markup/remotion-maps/techniques/cesium/assets/cesium-path.json +299 -0
  355. package/templates/default/.agents/skills/remotion-markup/remotion-maps/techniques/cesium/assets/city-path.json +12 -0
  356. package/templates/default/.agents/skills/remotion-markup/remotion-maps/techniques/cesium/assets/example-Root.tsx +39 -0
  357. package/templates/default/.agents/skills/remotion-markup/remotion-maps/techniques/cesium/assets/flight-path.ts +35 -0
  358. package/templates/default/.agents/skills/remotion-markup/remotion-maps/techniques/cesium/assets/sample-river.geojson +215 -0
  359. package/templates/default/.agents/skills/remotion-markup/remotion-maps/techniques/cesium/references/3d-data-sources.md +43 -0
  360. package/templates/default/.agents/skills/remotion-markup/remotion-maps/techniques/cesium/references/3d-flyover-architecture.md +128 -0
  361. package/templates/default/.agents/skills/remotion-markup/remotion-maps/techniques/cesium/references/3d-troubleshooting.md +57 -0
  362. package/templates/default/.agents/skills/remotion-markup/remotion-maps/techniques/cesium/scripts/prep-cesium-path.mjs +161 -0
  363. package/templates/default/.agents/skills/remotion-markup/remotion-maps/techniques/mapbox/TECHNIQUE.md +449 -0
  364. package/templates/default/.agents/skills/remotion-markup/remotion-maps/techniques/mapbox/references/render-stability.md +64 -0
  365. package/templates/default/.agents/skills/remotion-markup/remotion-maps/techniques/maplibre/TECHNIQUE.md +465 -0
  366. package/templates/default/.agents/skills/remotion-markup/remotion-maps/techniques/maplibre/references/render-stability.md +64 -0
  367. package/templates/default/.agents/skills/remotion-markup/remotion-maps/techniques/maptiler/TECHNIQUE.md +80 -0
  368. package/templates/default/.agents/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/CountryLabel.tsx +70 -0
  369. package/templates/default/.agents/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/MapTilerVectorElement.ts +80 -0
  370. package/templates/default/.agents/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/RiverReveal.tsx +363 -0
  371. package/templates/default/.agents/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/example-Root.tsx +22 -0
  372. package/templates/default/.agents/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/sample-data/country-meta.json +7535 -0
  373. package/templates/default/.agents/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/sample-data/yarlung-flow.json +605 -0
  374. package/templates/default/.agents/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/tokens.ts +34 -0
  375. package/templates/default/.agents/skills/remotion-markup/remotion-maps/techniques/maptiler/references/map-data-sources.md +91 -0
  376. package/templates/default/.agents/skills/remotion-markup/remotion-maps/techniques/maptiler/references/map-explainer-architecture.md +129 -0
  377. package/templates/default/.agents/skills/remotion-markup/remotion-maps/techniques/maptiler/references/map-geo-prep.md +85 -0
  378. package/templates/default/.agents/skills/remotion-markup/remotion-maps/techniques/maptiler/references/render-stability.md +64 -0
  379. package/templates/default/.agents/skills/remotion-markup/remotion-maps/techniques/maptiler/scripts/prep-geo.mjs +202 -0
  380. package/templates/default/.agents/skills/remotion-markup/remotion-maps/techniques/static-map/TECHNIQUE.md +37 -0
  381. package/templates/default/.agents/skills/remotion-markup/sequencing.md +169 -0
  382. package/templates/default/.agents/skills/remotion-markup/sfx.md +51 -0
  383. package/templates/default/.agents/skills/remotion-markup/silence-detection.md +71 -0
  384. package/templates/default/.agents/skills/remotion-markup/text-highlights.md +56 -0
  385. package/templates/default/.agents/skills/remotion-markup/timing.md +111 -0
  386. package/templates/default/.agents/skills/remotion-markup/transitions.md +239 -0
  387. package/templates/default/.agents/skills/remotion-markup/video-editing.md +90 -0
  388. package/templates/default/.agents/skills/remotion-markup/voiceover.md +99 -0
  389. package/templates/default/.agents/skills/remotion-multimedia/SKILL.md +20 -0
  390. package/templates/default/.agents/skills/remotion-multimedia/agents/openai.yaml +7 -0
  391. package/templates/default/.agents/skills/remotion-multimedia/assets/remotion-icon.png +0 -0
  392. package/templates/default/.agents/skills/remotion-multimedia/get-audio-duration.md +56 -0
  393. package/templates/default/.agents/skills/remotion-multimedia/get-video-dimensions.md +66 -0
  394. package/templates/default/.agents/skills/remotion-multimedia/get-video-duration.md +58 -0
  395. package/templates/default/.agents/skills/remotion-render/SKILL.md +27 -0
  396. package/templates/default/.agents/skills/remotion-render/agents/openai.yaml +7 -0
  397. package/templates/default/.agents/skills/remotion-render/assets/remotion-icon.png +0 -0
  398. package/templates/default/.agents/skills/remotion-render/transparent-videos.md +106 -0
  399. package/templates/default/.agents/skills/remotion-saas/SKILL.md +33 -0
  400. package/templates/default/.agents/skills/remotion-saas/agents/openai.yaml +7 -0
  401. package/templates/default/.agents/skills/remotion-saas/assets/remotion-icon.png +0 -0
  402. package/templates/default/.agents/skills/remotion-saas/framework.md +21 -0
  403. package/templates/default/.agents/skills/remotion-saas/player.md +33 -0
  404. package/templates/default/.agents/skills/remotion-saas/rendering.md +69 -0
  405. package/templates/default/.agents/skills/remotion-studio/SKILL.md +24 -0
  406. package/templates/default/.agents/skills/remotion-studio/agents/openai.yaml +7 -0
  407. package/templates/default/.agents/skills/remotion-studio/assets/remotion-icon.png +0 -0
  408. package/templates/default/.agents/skills/remotion-upgrade/SKILL.md +31 -0
  409. package/templates/default/.agents/skills/remotion-upgrade/agents/openai.yaml +7 -0
  410. package/templates/default/.agents/skills/remotion-upgrade/assets/remotion-icon.png +0 -0
  411. package/templates/default/.claude/skills/remotion-best-practices/SKILL.md +59 -0
  412. package/templates/default/.claude/skills/remotion-best-practices/agents/openai.yaml +7 -0
  413. package/templates/default/.claude/skills/remotion-best-practices/assets/remotion-icon.png +0 -0
  414. package/templates/default/.claude/skills/remotion-best-practices/remotion-captions/REFERENCE.md +36 -0
  415. package/templates/default/.claude/skills/remotion-best-practices/remotion-captions/agents/openai.yaml +7 -0
  416. package/templates/default/.claude/skills/remotion-best-practices/remotion-captions/assets/remotion-icon.png +0 -0
  417. package/templates/default/.claude/skills/remotion-best-practices/remotion-captions/display-captions.md +190 -0
  418. package/templates/default/.claude/skills/remotion-best-practices/remotion-captions/import-srt-captions.md +73 -0
  419. package/templates/default/.claude/skills/remotion-best-practices/remotion-captions/transcribe-captions.md +70 -0
  420. package/templates/default/.claude/skills/remotion-best-practices/remotion-create/REFERENCE.md +68 -0
  421. package/templates/default/.claude/skills/remotion-best-practices/remotion-create/agents/openai.yaml +7 -0
  422. package/templates/default/.claude/skills/remotion-best-practices/remotion-create/assets/remotion-icon.png +0 -0
  423. package/templates/default/.claude/skills/remotion-best-practices/remotion-create/tailwind.md +11 -0
  424. package/templates/default/.claude/skills/remotion-best-practices/remotion-create/video-layout.md +9 -0
  425. package/templates/default/.claude/skills/remotion-best-practices/remotion-docs/REFERENCE.md +46 -0
  426. package/templates/default/.claude/skills/remotion-best-practices/remotion-docs/agents/openai.yaml +7 -0
  427. package/templates/default/.claude/skills/remotion-best-practices/remotion-docs/assets/remotion-icon.png +0 -0
  428. package/templates/default/.claude/skills/remotion-best-practices/remotion-interactivity/REFERENCE.md +247 -0
  429. package/templates/default/.claude/skills/remotion-best-practices/remotion-interactivity/agents/openai.yaml +7 -0
  430. package/templates/default/.claude/skills/remotion-best-practices/remotion-interactivity/assets/remotion-icon.png +0 -0
  431. package/templates/default/.claude/skills/remotion-best-practices/remotion-maps/REFERENCE.md +36 -0
  432. package/templates/default/.claude/skills/remotion-best-practices/remotion-maps/agents/openai.yaml +7 -0
  433. package/templates/default/.claude/skills/remotion-best-practices/remotion-maps/assets/remotion-icon.png +0 -0
  434. package/templates/default/.claude/skills/remotion-best-practices/remotion-maps/techniques/cesium/TECHNIQUE.md +89 -0
  435. package/templates/default/.claude/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/CesiumFlythrough.tsx +284 -0
  436. package/templates/default/.claude/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/cesium-path.json +299 -0
  437. package/templates/default/.claude/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/city-path.json +12 -0
  438. package/templates/default/.claude/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/example-Root.tsx +39 -0
  439. package/templates/default/.claude/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/flight-path.ts +35 -0
  440. package/templates/default/.claude/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/sample-river.geojson +215 -0
  441. package/templates/default/.claude/skills/remotion-best-practices/remotion-maps/techniques/cesium/references/3d-data-sources.md +43 -0
  442. package/templates/default/.claude/skills/remotion-best-practices/remotion-maps/techniques/cesium/references/3d-flyover-architecture.md +128 -0
  443. package/templates/default/.claude/skills/remotion-best-practices/remotion-maps/techniques/cesium/references/3d-troubleshooting.md +57 -0
  444. package/templates/default/.claude/skills/remotion-best-practices/remotion-maps/techniques/cesium/scripts/prep-cesium-path.mjs +161 -0
  445. package/templates/default/.claude/skills/remotion-best-practices/remotion-maps/techniques/mapbox/TECHNIQUE.md +449 -0
  446. package/templates/default/.claude/skills/remotion-best-practices/remotion-maps/techniques/mapbox/references/render-stability.md +64 -0
  447. package/templates/default/.claude/skills/remotion-best-practices/remotion-maps/techniques/maplibre/TECHNIQUE.md +465 -0
  448. package/templates/default/.claude/skills/remotion-best-practices/remotion-maps/techniques/maplibre/references/render-stability.md +64 -0
  449. package/templates/default/.claude/skills/remotion-best-practices/remotion-maps/techniques/maptiler/TECHNIQUE.md +80 -0
  450. package/templates/default/.claude/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/CountryLabel.tsx +70 -0
  451. package/templates/default/.claude/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/MapTilerVectorElement.ts +80 -0
  452. package/templates/default/.claude/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/RiverReveal.tsx +363 -0
  453. package/templates/default/.claude/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/example-Root.tsx +22 -0
  454. package/templates/default/.claude/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/sample-data/country-meta.json +7535 -0
  455. package/templates/default/.claude/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/sample-data/yarlung-flow.json +605 -0
  456. package/templates/default/.claude/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/tokens.ts +34 -0
  457. package/templates/default/.claude/skills/remotion-best-practices/remotion-maps/techniques/maptiler/references/map-data-sources.md +91 -0
  458. package/templates/default/.claude/skills/remotion-best-practices/remotion-maps/techniques/maptiler/references/map-explainer-architecture.md +129 -0
  459. package/templates/default/.claude/skills/remotion-best-practices/remotion-maps/techniques/maptiler/references/map-geo-prep.md +85 -0
  460. package/templates/default/.claude/skills/remotion-best-practices/remotion-maps/techniques/maptiler/references/render-stability.md +64 -0
  461. package/templates/default/.claude/skills/remotion-best-practices/remotion-maps/techniques/maptiler/scripts/prep-geo.mjs +202 -0
  462. package/templates/default/.claude/skills/remotion-best-practices/remotion-maps/techniques/static-map/TECHNIQUE.md +37 -0
  463. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/3d.md +86 -0
  464. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/REFERENCE.md +365 -0
  465. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/agents/openai.yaml +7 -0
  466. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/assets/remotion-icon.png +0 -0
  467. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/audio-visualization.md +198 -0
  468. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/audio.md +171 -0
  469. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/calculate-metadata.md +136 -0
  470. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/compositions.md +117 -0
  471. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/cropping.md +34 -0
  472. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/effects.md +251 -0
  473. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/embedding-videos.md +173 -0
  474. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/ffmpeg.md +38 -0
  475. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/gifs.md +187 -0
  476. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/google-fonts.md +76 -0
  477. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/html-in-canvas.md +128 -0
  478. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/images.md +73 -0
  479. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/light-leaks.md +106 -0
  480. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/local-fonts.md +69 -0
  481. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/lottie.md +73 -0
  482. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/measuring-dom-nodes.md +38 -0
  483. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/measuring-text.md +146 -0
  484. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/multi-scene-video.md +81 -0
  485. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/parameters.md +111 -0
  486. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/remotion-maps/REFERENCE.md +36 -0
  487. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/remotion-maps/agents/openai.yaml +7 -0
  488. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/remotion-maps/assets/remotion-icon.png +0 -0
  489. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/TECHNIQUE.md +89 -0
  490. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/CesiumFlythrough.tsx +284 -0
  491. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/cesium-path.json +299 -0
  492. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/city-path.json +12 -0
  493. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/example-Root.tsx +39 -0
  494. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/flight-path.ts +35 -0
  495. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/sample-river.geojson +215 -0
  496. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/references/3d-data-sources.md +43 -0
  497. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/references/3d-flyover-architecture.md +128 -0
  498. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/references/3d-troubleshooting.md +57 -0
  499. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/scripts/prep-cesium-path.mjs +161 -0
  500. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/mapbox/TECHNIQUE.md +449 -0
  501. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/mapbox/references/render-stability.md +64 -0
  502. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maplibre/TECHNIQUE.md +465 -0
  503. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maplibre/references/render-stability.md +64 -0
  504. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/TECHNIQUE.md +80 -0
  505. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/CountryLabel.tsx +70 -0
  506. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/MapTilerVectorElement.ts +80 -0
  507. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/RiverReveal.tsx +363 -0
  508. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/example-Root.tsx +22 -0
  509. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/sample-data/country-meta.json +7535 -0
  510. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/sample-data/yarlung-flow.json +605 -0
  511. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/tokens.ts +34 -0
  512. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/references/map-data-sources.md +91 -0
  513. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/references/map-explainer-architecture.md +129 -0
  514. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/references/map-geo-prep.md +85 -0
  515. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/references/render-stability.md +64 -0
  516. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/scripts/prep-geo.mjs +202 -0
  517. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/static-map/TECHNIQUE.md +37 -0
  518. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/sequencing.md +169 -0
  519. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/sfx.md +51 -0
  520. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/silence-detection.md +71 -0
  521. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/text-highlights.md +56 -0
  522. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/timing.md +111 -0
  523. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/transitions.md +239 -0
  524. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/video-editing.md +90 -0
  525. package/templates/default/.claude/skills/remotion-best-practices/remotion-markup/voiceover.md +99 -0
  526. package/templates/default/.claude/skills/remotion-best-practices/remotion-multimedia/REFERENCE.md +20 -0
  527. package/templates/default/.claude/skills/remotion-best-practices/remotion-multimedia/agents/openai.yaml +7 -0
  528. package/templates/default/.claude/skills/remotion-best-practices/remotion-multimedia/assets/remotion-icon.png +0 -0
  529. package/templates/default/.claude/skills/remotion-best-practices/remotion-multimedia/get-audio-duration.md +56 -0
  530. package/templates/default/.claude/skills/remotion-best-practices/remotion-multimedia/get-video-dimensions.md +66 -0
  531. package/templates/default/.claude/skills/remotion-best-practices/remotion-multimedia/get-video-duration.md +58 -0
  532. package/templates/default/.claude/skills/remotion-best-practices/remotion-render/REFERENCE.md +27 -0
  533. package/templates/default/.claude/skills/remotion-best-practices/remotion-render/agents/openai.yaml +7 -0
  534. package/templates/default/.claude/skills/remotion-best-practices/remotion-render/assets/remotion-icon.png +0 -0
  535. package/templates/default/.claude/skills/remotion-best-practices/remotion-render/transparent-videos.md +106 -0
  536. package/templates/default/.claude/skills/remotion-best-practices/remotion-saas/REFERENCE.md +33 -0
  537. package/templates/default/.claude/skills/remotion-best-practices/remotion-saas/agents/openai.yaml +7 -0
  538. package/templates/default/.claude/skills/remotion-best-practices/remotion-saas/assets/remotion-icon.png +0 -0
  539. package/templates/default/.claude/skills/remotion-best-practices/remotion-saas/framework.md +21 -0
  540. package/templates/default/.claude/skills/remotion-best-practices/remotion-saas/player.md +33 -0
  541. package/templates/default/.claude/skills/remotion-best-practices/remotion-saas/rendering.md +69 -0
  542. package/templates/default/.claude/skills/remotion-best-practices/remotion-studio/REFERENCE.md +24 -0
  543. package/templates/default/.claude/skills/remotion-best-practices/remotion-studio/agents/openai.yaml +7 -0
  544. package/templates/default/.claude/skills/remotion-best-practices/remotion-studio/assets/remotion-icon.png +0 -0
  545. package/templates/default/.claude/skills/remotion-best-practices/remotion-upgrade/REFERENCE.md +31 -0
  546. package/templates/default/.claude/skills/remotion-best-practices/remotion-upgrade/agents/openai.yaml +7 -0
  547. package/templates/default/.claude/skills/remotion-best-practices/remotion-upgrade/assets/remotion-icon.png +0 -0
  548. package/templates/default/.claude/skills/remotion-captions/SKILL.md +36 -0
  549. package/templates/default/.claude/skills/remotion-captions/agents/openai.yaml +7 -0
  550. package/templates/default/.claude/skills/remotion-captions/assets/remotion-icon.png +0 -0
  551. package/templates/default/.claude/skills/remotion-captions/display-captions.md +190 -0
  552. package/templates/default/.claude/skills/remotion-captions/import-srt-captions.md +73 -0
  553. package/templates/default/.claude/skills/remotion-captions/transcribe-captions.md +70 -0
  554. package/templates/default/.claude/skills/remotion-create/SKILL.md +68 -0
  555. package/templates/default/.claude/skills/remotion-create/agents/openai.yaml +7 -0
  556. package/templates/default/.claude/skills/remotion-create/assets/remotion-icon.png +0 -0
  557. package/templates/default/.claude/skills/remotion-create/tailwind.md +11 -0
  558. package/templates/default/.claude/skills/remotion-create/video-layout.md +9 -0
  559. package/templates/default/.claude/skills/remotion-docs/SKILL.md +46 -0
  560. package/templates/default/.claude/skills/remotion-docs/agents/openai.yaml +7 -0
  561. package/templates/default/.claude/skills/remotion-docs/assets/remotion-icon.png +0 -0
  562. package/templates/default/.claude/skills/remotion-interactivity/SKILL.md +247 -0
  563. package/templates/default/.claude/skills/remotion-interactivity/agents/openai.yaml +7 -0
  564. package/templates/default/.claude/skills/remotion-interactivity/assets/remotion-icon.png +0 -0
  565. package/templates/default/.claude/skills/remotion-maps/SKILL.md +36 -0
  566. package/templates/default/.claude/skills/remotion-maps/agents/openai.yaml +7 -0
  567. package/templates/default/.claude/skills/remotion-maps/assets/remotion-icon.png +0 -0
  568. package/templates/default/.claude/skills/remotion-maps/techniques/cesium/TECHNIQUE.md +89 -0
  569. package/templates/default/.claude/skills/remotion-maps/techniques/cesium/assets/CesiumFlythrough.tsx +284 -0
  570. package/templates/default/.claude/skills/remotion-maps/techniques/cesium/assets/cesium-path.json +299 -0
  571. package/templates/default/.claude/skills/remotion-maps/techniques/cesium/assets/city-path.json +12 -0
  572. package/templates/default/.claude/skills/remotion-maps/techniques/cesium/assets/example-Root.tsx +39 -0
  573. package/templates/default/.claude/skills/remotion-maps/techniques/cesium/assets/flight-path.ts +35 -0
  574. package/templates/default/.claude/skills/remotion-maps/techniques/cesium/assets/sample-river.geojson +215 -0
  575. package/templates/default/.claude/skills/remotion-maps/techniques/cesium/references/3d-data-sources.md +43 -0
  576. package/templates/default/.claude/skills/remotion-maps/techniques/cesium/references/3d-flyover-architecture.md +128 -0
  577. package/templates/default/.claude/skills/remotion-maps/techniques/cesium/references/3d-troubleshooting.md +57 -0
  578. package/templates/default/.claude/skills/remotion-maps/techniques/cesium/scripts/prep-cesium-path.mjs +161 -0
  579. package/templates/default/.claude/skills/remotion-maps/techniques/mapbox/TECHNIQUE.md +449 -0
  580. package/templates/default/.claude/skills/remotion-maps/techniques/mapbox/references/render-stability.md +64 -0
  581. package/templates/default/.claude/skills/remotion-maps/techniques/maplibre/TECHNIQUE.md +465 -0
  582. package/templates/default/.claude/skills/remotion-maps/techniques/maplibre/references/render-stability.md +64 -0
  583. package/templates/default/.claude/skills/remotion-maps/techniques/maptiler/TECHNIQUE.md +80 -0
  584. package/templates/default/.claude/skills/remotion-maps/techniques/maptiler/assets/CountryLabel.tsx +70 -0
  585. package/templates/default/.claude/skills/remotion-maps/techniques/maptiler/assets/MapTilerVectorElement.ts +80 -0
  586. package/templates/default/.claude/skills/remotion-maps/techniques/maptiler/assets/RiverReveal.tsx +363 -0
  587. package/templates/default/.claude/skills/remotion-maps/techniques/maptiler/assets/example-Root.tsx +22 -0
  588. package/templates/default/.claude/skills/remotion-maps/techniques/maptiler/assets/sample-data/country-meta.json +7535 -0
  589. package/templates/default/.claude/skills/remotion-maps/techniques/maptiler/assets/sample-data/yarlung-flow.json +605 -0
  590. package/templates/default/.claude/skills/remotion-maps/techniques/maptiler/assets/tokens.ts +34 -0
  591. package/templates/default/.claude/skills/remotion-maps/techniques/maptiler/references/map-data-sources.md +91 -0
  592. package/templates/default/.claude/skills/remotion-maps/techniques/maptiler/references/map-explainer-architecture.md +129 -0
  593. package/templates/default/.claude/skills/remotion-maps/techniques/maptiler/references/map-geo-prep.md +85 -0
  594. package/templates/default/.claude/skills/remotion-maps/techniques/maptiler/references/render-stability.md +64 -0
  595. package/templates/default/.claude/skills/remotion-maps/techniques/maptiler/scripts/prep-geo.mjs +202 -0
  596. package/templates/default/.claude/skills/remotion-maps/techniques/static-map/TECHNIQUE.md +37 -0
  597. package/templates/default/.claude/skills/remotion-markup/3d.md +86 -0
  598. package/templates/default/.claude/skills/remotion-markup/SKILL.md +365 -0
  599. package/templates/default/.claude/skills/remotion-markup/agents/openai.yaml +7 -0
  600. package/templates/default/.claude/skills/remotion-markup/assets/remotion-icon.png +0 -0
  601. package/templates/default/.claude/skills/remotion-markup/audio-visualization.md +198 -0
  602. package/templates/default/.claude/skills/remotion-markup/audio.md +171 -0
  603. package/templates/default/.claude/skills/remotion-markup/calculate-metadata.md +136 -0
  604. package/templates/default/.claude/skills/remotion-markup/compositions.md +117 -0
  605. package/templates/default/.claude/skills/remotion-markup/cropping.md +34 -0
  606. package/templates/default/.claude/skills/remotion-markup/effects.md +251 -0
  607. package/templates/default/.claude/skills/remotion-markup/embedding-videos.md +173 -0
  608. package/templates/default/.claude/skills/remotion-markup/ffmpeg.md +38 -0
  609. package/templates/default/.claude/skills/remotion-markup/gifs.md +187 -0
  610. package/templates/default/.claude/skills/remotion-markup/google-fonts.md +76 -0
  611. package/templates/default/.claude/skills/remotion-markup/html-in-canvas.md +128 -0
  612. package/templates/default/.claude/skills/remotion-markup/images.md +73 -0
  613. package/templates/default/.claude/skills/remotion-markup/light-leaks.md +106 -0
  614. package/templates/default/.claude/skills/remotion-markup/local-fonts.md +69 -0
  615. package/templates/default/.claude/skills/remotion-markup/lottie.md +73 -0
  616. package/templates/default/.claude/skills/remotion-markup/measuring-dom-nodes.md +38 -0
  617. package/templates/default/.claude/skills/remotion-markup/measuring-text.md +146 -0
  618. package/templates/default/.claude/skills/remotion-markup/multi-scene-video.md +81 -0
  619. package/templates/default/.claude/skills/remotion-markup/parameters.md +111 -0
  620. package/templates/default/.claude/skills/remotion-markup/remotion-maps/REFERENCE.md +36 -0
  621. package/templates/default/.claude/skills/remotion-markup/remotion-maps/agents/openai.yaml +7 -0
  622. package/templates/default/.claude/skills/remotion-markup/remotion-maps/assets/remotion-icon.png +0 -0
  623. package/templates/default/.claude/skills/remotion-markup/remotion-maps/techniques/cesium/TECHNIQUE.md +89 -0
  624. package/templates/default/.claude/skills/remotion-markup/remotion-maps/techniques/cesium/assets/CesiumFlythrough.tsx +284 -0
  625. package/templates/default/.claude/skills/remotion-markup/remotion-maps/techniques/cesium/assets/cesium-path.json +299 -0
  626. package/templates/default/.claude/skills/remotion-markup/remotion-maps/techniques/cesium/assets/city-path.json +12 -0
  627. package/templates/default/.claude/skills/remotion-markup/remotion-maps/techniques/cesium/assets/example-Root.tsx +39 -0
  628. package/templates/default/.claude/skills/remotion-markup/remotion-maps/techniques/cesium/assets/flight-path.ts +35 -0
  629. package/templates/default/.claude/skills/remotion-markup/remotion-maps/techniques/cesium/assets/sample-river.geojson +215 -0
  630. package/templates/default/.claude/skills/remotion-markup/remotion-maps/techniques/cesium/references/3d-data-sources.md +43 -0
  631. package/templates/default/.claude/skills/remotion-markup/remotion-maps/techniques/cesium/references/3d-flyover-architecture.md +128 -0
  632. package/templates/default/.claude/skills/remotion-markup/remotion-maps/techniques/cesium/references/3d-troubleshooting.md +57 -0
  633. package/templates/default/.claude/skills/remotion-markup/remotion-maps/techniques/cesium/scripts/prep-cesium-path.mjs +161 -0
  634. package/templates/default/.claude/skills/remotion-markup/remotion-maps/techniques/mapbox/TECHNIQUE.md +449 -0
  635. package/templates/default/.claude/skills/remotion-markup/remotion-maps/techniques/mapbox/references/render-stability.md +64 -0
  636. package/templates/default/.claude/skills/remotion-markup/remotion-maps/techniques/maplibre/TECHNIQUE.md +465 -0
  637. package/templates/default/.claude/skills/remotion-markup/remotion-maps/techniques/maplibre/references/render-stability.md +64 -0
  638. package/templates/default/.claude/skills/remotion-markup/remotion-maps/techniques/maptiler/TECHNIQUE.md +80 -0
  639. package/templates/default/.claude/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/CountryLabel.tsx +70 -0
  640. package/templates/default/.claude/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/MapTilerVectorElement.ts +80 -0
  641. package/templates/default/.claude/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/RiverReveal.tsx +363 -0
  642. package/templates/default/.claude/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/example-Root.tsx +22 -0
  643. package/templates/default/.claude/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/sample-data/country-meta.json +7535 -0
  644. package/templates/default/.claude/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/sample-data/yarlung-flow.json +605 -0
  645. package/templates/default/.claude/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/tokens.ts +34 -0
  646. package/templates/default/.claude/skills/remotion-markup/remotion-maps/techniques/maptiler/references/map-data-sources.md +91 -0
  647. package/templates/default/.claude/skills/remotion-markup/remotion-maps/techniques/maptiler/references/map-explainer-architecture.md +129 -0
  648. package/templates/default/.claude/skills/remotion-markup/remotion-maps/techniques/maptiler/references/map-geo-prep.md +85 -0
  649. package/templates/default/.claude/skills/remotion-markup/remotion-maps/techniques/maptiler/references/render-stability.md +64 -0
  650. package/templates/default/.claude/skills/remotion-markup/remotion-maps/techniques/maptiler/scripts/prep-geo.mjs +202 -0
  651. package/templates/default/.claude/skills/remotion-markup/remotion-maps/techniques/static-map/TECHNIQUE.md +37 -0
  652. package/templates/default/.claude/skills/remotion-markup/sequencing.md +169 -0
  653. package/templates/default/.claude/skills/remotion-markup/sfx.md +51 -0
  654. package/templates/default/.claude/skills/remotion-markup/silence-detection.md +71 -0
  655. package/templates/default/.claude/skills/remotion-markup/text-highlights.md +56 -0
  656. package/templates/default/.claude/skills/remotion-markup/timing.md +111 -0
  657. package/templates/default/.claude/skills/remotion-markup/transitions.md +239 -0
  658. package/templates/default/.claude/skills/remotion-markup/video-editing.md +90 -0
  659. package/templates/default/.claude/skills/remotion-markup/voiceover.md +99 -0
  660. package/templates/default/.claude/skills/remotion-multimedia/SKILL.md +20 -0
  661. package/templates/default/.claude/skills/remotion-multimedia/agents/openai.yaml +7 -0
  662. package/templates/default/.claude/skills/remotion-multimedia/assets/remotion-icon.png +0 -0
  663. package/templates/default/.claude/skills/remotion-multimedia/get-audio-duration.md +56 -0
  664. package/templates/default/.claude/skills/remotion-multimedia/get-video-dimensions.md +66 -0
  665. package/templates/default/.claude/skills/remotion-multimedia/get-video-duration.md +58 -0
  666. package/templates/default/.claude/skills/remotion-render/SKILL.md +27 -0
  667. package/templates/default/.claude/skills/remotion-render/agents/openai.yaml +7 -0
  668. package/templates/default/.claude/skills/remotion-render/assets/remotion-icon.png +0 -0
  669. package/templates/default/.claude/skills/remotion-render/transparent-videos.md +106 -0
  670. package/templates/default/.claude/skills/remotion-saas/SKILL.md +33 -0
  671. package/templates/default/.claude/skills/remotion-saas/agents/openai.yaml +7 -0
  672. package/templates/default/.claude/skills/remotion-saas/assets/remotion-icon.png +0 -0
  673. package/templates/default/.claude/skills/remotion-saas/framework.md +21 -0
  674. package/templates/default/.claude/skills/remotion-saas/player.md +33 -0
  675. package/templates/default/.claude/skills/remotion-saas/rendering.md +69 -0
  676. package/templates/default/.claude/skills/remotion-studio/SKILL.md +24 -0
  677. package/templates/default/.claude/skills/remotion-studio/agents/openai.yaml +7 -0
  678. package/templates/default/.claude/skills/remotion-studio/assets/remotion-icon.png +0 -0
  679. package/templates/default/.claude/skills/remotion-upgrade/SKILL.md +31 -0
  680. package/templates/default/.claude/skills/remotion-upgrade/agents/openai.yaml +7 -0
  681. package/templates/default/.claude/skills/remotion-upgrade/assets/remotion-icon.png +0 -0
  682. package/templates/default/.cursor/skills/remotion-best-practices/SKILL.md +59 -0
  683. package/templates/default/.cursor/skills/remotion-best-practices/agents/openai.yaml +7 -0
  684. package/templates/default/.cursor/skills/remotion-best-practices/assets/remotion-icon.png +0 -0
  685. package/templates/default/.cursor/skills/remotion-best-practices/remotion-captions/REFERENCE.md +36 -0
  686. package/templates/default/.cursor/skills/remotion-best-practices/remotion-captions/agents/openai.yaml +7 -0
  687. package/templates/default/.cursor/skills/remotion-best-practices/remotion-captions/assets/remotion-icon.png +0 -0
  688. package/templates/default/.cursor/skills/remotion-best-practices/remotion-captions/display-captions.md +190 -0
  689. package/templates/default/.cursor/skills/remotion-best-practices/remotion-captions/import-srt-captions.md +73 -0
  690. package/templates/default/.cursor/skills/remotion-best-practices/remotion-captions/transcribe-captions.md +70 -0
  691. package/templates/default/.cursor/skills/remotion-best-practices/remotion-create/REFERENCE.md +68 -0
  692. package/templates/default/.cursor/skills/remotion-best-practices/remotion-create/agents/openai.yaml +7 -0
  693. package/templates/default/.cursor/skills/remotion-best-practices/remotion-create/assets/remotion-icon.png +0 -0
  694. package/templates/default/.cursor/skills/remotion-best-practices/remotion-create/tailwind.md +11 -0
  695. package/templates/default/.cursor/skills/remotion-best-practices/remotion-create/video-layout.md +9 -0
  696. package/templates/default/.cursor/skills/remotion-best-practices/remotion-docs/REFERENCE.md +46 -0
  697. package/templates/default/.cursor/skills/remotion-best-practices/remotion-docs/agents/openai.yaml +7 -0
  698. package/templates/default/.cursor/skills/remotion-best-practices/remotion-docs/assets/remotion-icon.png +0 -0
  699. package/templates/default/.cursor/skills/remotion-best-practices/remotion-interactivity/REFERENCE.md +247 -0
  700. package/templates/default/.cursor/skills/remotion-best-practices/remotion-interactivity/agents/openai.yaml +7 -0
  701. package/templates/default/.cursor/skills/remotion-best-practices/remotion-interactivity/assets/remotion-icon.png +0 -0
  702. package/templates/default/.cursor/skills/remotion-best-practices/remotion-maps/REFERENCE.md +36 -0
  703. package/templates/default/.cursor/skills/remotion-best-practices/remotion-maps/agents/openai.yaml +7 -0
  704. package/templates/default/.cursor/skills/remotion-best-practices/remotion-maps/assets/remotion-icon.png +0 -0
  705. package/templates/default/.cursor/skills/remotion-best-practices/remotion-maps/techniques/cesium/TECHNIQUE.md +89 -0
  706. package/templates/default/.cursor/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/CesiumFlythrough.tsx +284 -0
  707. package/templates/default/.cursor/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/cesium-path.json +299 -0
  708. package/templates/default/.cursor/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/city-path.json +12 -0
  709. package/templates/default/.cursor/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/example-Root.tsx +39 -0
  710. package/templates/default/.cursor/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/flight-path.ts +35 -0
  711. package/templates/default/.cursor/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/sample-river.geojson +215 -0
  712. package/templates/default/.cursor/skills/remotion-best-practices/remotion-maps/techniques/cesium/references/3d-data-sources.md +43 -0
  713. package/templates/default/.cursor/skills/remotion-best-practices/remotion-maps/techniques/cesium/references/3d-flyover-architecture.md +128 -0
  714. package/templates/default/.cursor/skills/remotion-best-practices/remotion-maps/techniques/cesium/references/3d-troubleshooting.md +57 -0
  715. package/templates/default/.cursor/skills/remotion-best-practices/remotion-maps/techniques/cesium/scripts/prep-cesium-path.mjs +161 -0
  716. package/templates/default/.cursor/skills/remotion-best-practices/remotion-maps/techniques/mapbox/TECHNIQUE.md +449 -0
  717. package/templates/default/.cursor/skills/remotion-best-practices/remotion-maps/techniques/mapbox/references/render-stability.md +64 -0
  718. package/templates/default/.cursor/skills/remotion-best-practices/remotion-maps/techniques/maplibre/TECHNIQUE.md +465 -0
  719. package/templates/default/.cursor/skills/remotion-best-practices/remotion-maps/techniques/maplibre/references/render-stability.md +64 -0
  720. package/templates/default/.cursor/skills/remotion-best-practices/remotion-maps/techniques/maptiler/TECHNIQUE.md +80 -0
  721. package/templates/default/.cursor/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/CountryLabel.tsx +70 -0
  722. package/templates/default/.cursor/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/MapTilerVectorElement.ts +80 -0
  723. package/templates/default/.cursor/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/RiverReveal.tsx +363 -0
  724. package/templates/default/.cursor/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/example-Root.tsx +22 -0
  725. package/templates/default/.cursor/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/sample-data/country-meta.json +7535 -0
  726. package/templates/default/.cursor/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/sample-data/yarlung-flow.json +605 -0
  727. package/templates/default/.cursor/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/tokens.ts +34 -0
  728. package/templates/default/.cursor/skills/remotion-best-practices/remotion-maps/techniques/maptiler/references/map-data-sources.md +91 -0
  729. package/templates/default/.cursor/skills/remotion-best-practices/remotion-maps/techniques/maptiler/references/map-explainer-architecture.md +129 -0
  730. package/templates/default/.cursor/skills/remotion-best-practices/remotion-maps/techniques/maptiler/references/map-geo-prep.md +85 -0
  731. package/templates/default/.cursor/skills/remotion-best-practices/remotion-maps/techniques/maptiler/references/render-stability.md +64 -0
  732. package/templates/default/.cursor/skills/remotion-best-practices/remotion-maps/techniques/maptiler/scripts/prep-geo.mjs +202 -0
  733. package/templates/default/.cursor/skills/remotion-best-practices/remotion-maps/techniques/static-map/TECHNIQUE.md +37 -0
  734. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/3d.md +86 -0
  735. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/REFERENCE.md +365 -0
  736. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/agents/openai.yaml +7 -0
  737. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/assets/remotion-icon.png +0 -0
  738. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/audio-visualization.md +198 -0
  739. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/audio.md +171 -0
  740. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/calculate-metadata.md +136 -0
  741. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/compositions.md +117 -0
  742. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/cropping.md +34 -0
  743. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/effects.md +251 -0
  744. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/embedding-videos.md +173 -0
  745. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/ffmpeg.md +38 -0
  746. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/gifs.md +187 -0
  747. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/google-fonts.md +76 -0
  748. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/html-in-canvas.md +128 -0
  749. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/images.md +73 -0
  750. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/light-leaks.md +106 -0
  751. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/local-fonts.md +69 -0
  752. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/lottie.md +73 -0
  753. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/measuring-dom-nodes.md +38 -0
  754. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/measuring-text.md +146 -0
  755. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/multi-scene-video.md +81 -0
  756. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/parameters.md +111 -0
  757. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/remotion-maps/REFERENCE.md +36 -0
  758. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/remotion-maps/agents/openai.yaml +7 -0
  759. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/remotion-maps/assets/remotion-icon.png +0 -0
  760. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/TECHNIQUE.md +89 -0
  761. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/CesiumFlythrough.tsx +284 -0
  762. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/cesium-path.json +299 -0
  763. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/city-path.json +12 -0
  764. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/example-Root.tsx +39 -0
  765. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/flight-path.ts +35 -0
  766. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/sample-river.geojson +215 -0
  767. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/references/3d-data-sources.md +43 -0
  768. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/references/3d-flyover-architecture.md +128 -0
  769. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/references/3d-troubleshooting.md +57 -0
  770. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/scripts/prep-cesium-path.mjs +161 -0
  771. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/mapbox/TECHNIQUE.md +449 -0
  772. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/mapbox/references/render-stability.md +64 -0
  773. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maplibre/TECHNIQUE.md +465 -0
  774. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maplibre/references/render-stability.md +64 -0
  775. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/TECHNIQUE.md +80 -0
  776. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/CountryLabel.tsx +70 -0
  777. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/MapTilerVectorElement.ts +80 -0
  778. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/RiverReveal.tsx +363 -0
  779. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/example-Root.tsx +22 -0
  780. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/sample-data/country-meta.json +7535 -0
  781. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/sample-data/yarlung-flow.json +605 -0
  782. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/tokens.ts +34 -0
  783. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/references/map-data-sources.md +91 -0
  784. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/references/map-explainer-architecture.md +129 -0
  785. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/references/map-geo-prep.md +85 -0
  786. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/references/render-stability.md +64 -0
  787. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/scripts/prep-geo.mjs +202 -0
  788. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/static-map/TECHNIQUE.md +37 -0
  789. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/sequencing.md +169 -0
  790. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/sfx.md +51 -0
  791. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/silence-detection.md +71 -0
  792. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/text-highlights.md +56 -0
  793. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/timing.md +111 -0
  794. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/transitions.md +239 -0
  795. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/video-editing.md +90 -0
  796. package/templates/default/.cursor/skills/remotion-best-practices/remotion-markup/voiceover.md +99 -0
  797. package/templates/default/.cursor/skills/remotion-best-practices/remotion-multimedia/REFERENCE.md +20 -0
  798. package/templates/default/.cursor/skills/remotion-best-practices/remotion-multimedia/agents/openai.yaml +7 -0
  799. package/templates/default/.cursor/skills/remotion-best-practices/remotion-multimedia/assets/remotion-icon.png +0 -0
  800. package/templates/default/.cursor/skills/remotion-best-practices/remotion-multimedia/get-audio-duration.md +56 -0
  801. package/templates/default/.cursor/skills/remotion-best-practices/remotion-multimedia/get-video-dimensions.md +66 -0
  802. package/templates/default/.cursor/skills/remotion-best-practices/remotion-multimedia/get-video-duration.md +58 -0
  803. package/templates/default/.cursor/skills/remotion-best-practices/remotion-render/REFERENCE.md +27 -0
  804. package/templates/default/.cursor/skills/remotion-best-practices/remotion-render/agents/openai.yaml +7 -0
  805. package/templates/default/.cursor/skills/remotion-best-practices/remotion-render/assets/remotion-icon.png +0 -0
  806. package/templates/default/.cursor/skills/remotion-best-practices/remotion-render/transparent-videos.md +106 -0
  807. package/templates/default/.cursor/skills/remotion-best-practices/remotion-saas/REFERENCE.md +33 -0
  808. package/templates/default/.cursor/skills/remotion-best-practices/remotion-saas/agents/openai.yaml +7 -0
  809. package/templates/default/.cursor/skills/remotion-best-practices/remotion-saas/assets/remotion-icon.png +0 -0
  810. package/templates/default/.cursor/skills/remotion-best-practices/remotion-saas/framework.md +21 -0
  811. package/templates/default/.cursor/skills/remotion-best-practices/remotion-saas/player.md +33 -0
  812. package/templates/default/.cursor/skills/remotion-best-practices/remotion-saas/rendering.md +69 -0
  813. package/templates/default/.cursor/skills/remotion-best-practices/remotion-studio/REFERENCE.md +24 -0
  814. package/templates/default/.cursor/skills/remotion-best-practices/remotion-studio/agents/openai.yaml +7 -0
  815. package/templates/default/.cursor/skills/remotion-best-practices/remotion-studio/assets/remotion-icon.png +0 -0
  816. package/templates/default/.cursor/skills/remotion-best-practices/remotion-upgrade/REFERENCE.md +31 -0
  817. package/templates/default/.cursor/skills/remotion-best-practices/remotion-upgrade/agents/openai.yaml +7 -0
  818. package/templates/default/.cursor/skills/remotion-best-practices/remotion-upgrade/assets/remotion-icon.png +0 -0
  819. package/templates/default/.cursor/skills/remotion-captions/SKILL.md +36 -0
  820. package/templates/default/.cursor/skills/remotion-captions/agents/openai.yaml +7 -0
  821. package/templates/default/.cursor/skills/remotion-captions/assets/remotion-icon.png +0 -0
  822. package/templates/default/.cursor/skills/remotion-captions/display-captions.md +190 -0
  823. package/templates/default/.cursor/skills/remotion-captions/import-srt-captions.md +73 -0
  824. package/templates/default/.cursor/skills/remotion-captions/transcribe-captions.md +70 -0
  825. package/templates/default/.cursor/skills/remotion-create/SKILL.md +68 -0
  826. package/templates/default/.cursor/skills/remotion-create/agents/openai.yaml +7 -0
  827. package/templates/default/.cursor/skills/remotion-create/assets/remotion-icon.png +0 -0
  828. package/templates/default/.cursor/skills/remotion-create/tailwind.md +11 -0
  829. package/templates/default/.cursor/skills/remotion-create/video-layout.md +9 -0
  830. package/templates/default/.cursor/skills/remotion-docs/SKILL.md +46 -0
  831. package/templates/default/.cursor/skills/remotion-docs/agents/openai.yaml +7 -0
  832. package/templates/default/.cursor/skills/remotion-docs/assets/remotion-icon.png +0 -0
  833. package/templates/default/.cursor/skills/remotion-interactivity/SKILL.md +247 -0
  834. package/templates/default/.cursor/skills/remotion-interactivity/agents/openai.yaml +7 -0
  835. package/templates/default/.cursor/skills/remotion-interactivity/assets/remotion-icon.png +0 -0
  836. package/templates/default/.cursor/skills/remotion-maps/SKILL.md +36 -0
  837. package/templates/default/.cursor/skills/remotion-maps/agents/openai.yaml +7 -0
  838. package/templates/default/.cursor/skills/remotion-maps/assets/remotion-icon.png +0 -0
  839. package/templates/default/.cursor/skills/remotion-maps/techniques/cesium/TECHNIQUE.md +89 -0
  840. package/templates/default/.cursor/skills/remotion-maps/techniques/cesium/assets/CesiumFlythrough.tsx +284 -0
  841. package/templates/default/.cursor/skills/remotion-maps/techniques/cesium/assets/cesium-path.json +299 -0
  842. package/templates/default/.cursor/skills/remotion-maps/techniques/cesium/assets/city-path.json +12 -0
  843. package/templates/default/.cursor/skills/remotion-maps/techniques/cesium/assets/example-Root.tsx +39 -0
  844. package/templates/default/.cursor/skills/remotion-maps/techniques/cesium/assets/flight-path.ts +35 -0
  845. package/templates/default/.cursor/skills/remotion-maps/techniques/cesium/assets/sample-river.geojson +215 -0
  846. package/templates/default/.cursor/skills/remotion-maps/techniques/cesium/references/3d-data-sources.md +43 -0
  847. package/templates/default/.cursor/skills/remotion-maps/techniques/cesium/references/3d-flyover-architecture.md +128 -0
  848. package/templates/default/.cursor/skills/remotion-maps/techniques/cesium/references/3d-troubleshooting.md +57 -0
  849. package/templates/default/.cursor/skills/remotion-maps/techniques/cesium/scripts/prep-cesium-path.mjs +161 -0
  850. package/templates/default/.cursor/skills/remotion-maps/techniques/mapbox/TECHNIQUE.md +449 -0
  851. package/templates/default/.cursor/skills/remotion-maps/techniques/mapbox/references/render-stability.md +64 -0
  852. package/templates/default/.cursor/skills/remotion-maps/techniques/maplibre/TECHNIQUE.md +465 -0
  853. package/templates/default/.cursor/skills/remotion-maps/techniques/maplibre/references/render-stability.md +64 -0
  854. package/templates/default/.cursor/skills/remotion-maps/techniques/maptiler/TECHNIQUE.md +80 -0
  855. package/templates/default/.cursor/skills/remotion-maps/techniques/maptiler/assets/CountryLabel.tsx +70 -0
  856. package/templates/default/.cursor/skills/remotion-maps/techniques/maptiler/assets/MapTilerVectorElement.ts +80 -0
  857. package/templates/default/.cursor/skills/remotion-maps/techniques/maptiler/assets/RiverReveal.tsx +363 -0
  858. package/templates/default/.cursor/skills/remotion-maps/techniques/maptiler/assets/example-Root.tsx +22 -0
  859. package/templates/default/.cursor/skills/remotion-maps/techniques/maptiler/assets/sample-data/country-meta.json +7535 -0
  860. package/templates/default/.cursor/skills/remotion-maps/techniques/maptiler/assets/sample-data/yarlung-flow.json +605 -0
  861. package/templates/default/.cursor/skills/remotion-maps/techniques/maptiler/assets/tokens.ts +34 -0
  862. package/templates/default/.cursor/skills/remotion-maps/techniques/maptiler/references/map-data-sources.md +91 -0
  863. package/templates/default/.cursor/skills/remotion-maps/techniques/maptiler/references/map-explainer-architecture.md +129 -0
  864. package/templates/default/.cursor/skills/remotion-maps/techniques/maptiler/references/map-geo-prep.md +85 -0
  865. package/templates/default/.cursor/skills/remotion-maps/techniques/maptiler/references/render-stability.md +64 -0
  866. package/templates/default/.cursor/skills/remotion-maps/techniques/maptiler/scripts/prep-geo.mjs +202 -0
  867. package/templates/default/.cursor/skills/remotion-maps/techniques/static-map/TECHNIQUE.md +37 -0
  868. package/templates/default/.cursor/skills/remotion-markup/3d.md +86 -0
  869. package/templates/default/.cursor/skills/remotion-markup/SKILL.md +365 -0
  870. package/templates/default/.cursor/skills/remotion-markup/agents/openai.yaml +7 -0
  871. package/templates/default/.cursor/skills/remotion-markup/assets/remotion-icon.png +0 -0
  872. package/templates/default/.cursor/skills/remotion-markup/audio-visualization.md +198 -0
  873. package/templates/default/.cursor/skills/remotion-markup/audio.md +171 -0
  874. package/templates/default/.cursor/skills/remotion-markup/calculate-metadata.md +136 -0
  875. package/templates/default/.cursor/skills/remotion-markup/compositions.md +117 -0
  876. package/templates/default/.cursor/skills/remotion-markup/cropping.md +34 -0
  877. package/templates/default/.cursor/skills/remotion-markup/effects.md +251 -0
  878. package/templates/default/.cursor/skills/remotion-markup/embedding-videos.md +173 -0
  879. package/templates/default/.cursor/skills/remotion-markup/ffmpeg.md +38 -0
  880. package/templates/default/.cursor/skills/remotion-markup/gifs.md +187 -0
  881. package/templates/default/.cursor/skills/remotion-markup/google-fonts.md +76 -0
  882. package/templates/default/.cursor/skills/remotion-markup/html-in-canvas.md +128 -0
  883. package/templates/default/.cursor/skills/remotion-markup/images.md +73 -0
  884. package/templates/default/.cursor/skills/remotion-markup/light-leaks.md +106 -0
  885. package/templates/default/.cursor/skills/remotion-markup/local-fonts.md +69 -0
  886. package/templates/default/.cursor/skills/remotion-markup/lottie.md +73 -0
  887. package/templates/default/.cursor/skills/remotion-markup/measuring-dom-nodes.md +38 -0
  888. package/templates/default/.cursor/skills/remotion-markup/measuring-text.md +146 -0
  889. package/templates/default/.cursor/skills/remotion-markup/multi-scene-video.md +81 -0
  890. package/templates/default/.cursor/skills/remotion-markup/parameters.md +111 -0
  891. package/templates/default/.cursor/skills/remotion-markup/remotion-maps/REFERENCE.md +36 -0
  892. package/templates/default/.cursor/skills/remotion-markup/remotion-maps/agents/openai.yaml +7 -0
  893. package/templates/default/.cursor/skills/remotion-markup/remotion-maps/assets/remotion-icon.png +0 -0
  894. package/templates/default/.cursor/skills/remotion-markup/remotion-maps/techniques/cesium/TECHNIQUE.md +89 -0
  895. package/templates/default/.cursor/skills/remotion-markup/remotion-maps/techniques/cesium/assets/CesiumFlythrough.tsx +284 -0
  896. package/templates/default/.cursor/skills/remotion-markup/remotion-maps/techniques/cesium/assets/cesium-path.json +299 -0
  897. package/templates/default/.cursor/skills/remotion-markup/remotion-maps/techniques/cesium/assets/city-path.json +12 -0
  898. package/templates/default/.cursor/skills/remotion-markup/remotion-maps/techniques/cesium/assets/example-Root.tsx +39 -0
  899. package/templates/default/.cursor/skills/remotion-markup/remotion-maps/techniques/cesium/assets/flight-path.ts +35 -0
  900. package/templates/default/.cursor/skills/remotion-markup/remotion-maps/techniques/cesium/assets/sample-river.geojson +215 -0
  901. package/templates/default/.cursor/skills/remotion-markup/remotion-maps/techniques/cesium/references/3d-data-sources.md +43 -0
  902. package/templates/default/.cursor/skills/remotion-markup/remotion-maps/techniques/cesium/references/3d-flyover-architecture.md +128 -0
  903. package/templates/default/.cursor/skills/remotion-markup/remotion-maps/techniques/cesium/references/3d-troubleshooting.md +57 -0
  904. package/templates/default/.cursor/skills/remotion-markup/remotion-maps/techniques/cesium/scripts/prep-cesium-path.mjs +161 -0
  905. package/templates/default/.cursor/skills/remotion-markup/remotion-maps/techniques/mapbox/TECHNIQUE.md +449 -0
  906. package/templates/default/.cursor/skills/remotion-markup/remotion-maps/techniques/mapbox/references/render-stability.md +64 -0
  907. package/templates/default/.cursor/skills/remotion-markup/remotion-maps/techniques/maplibre/TECHNIQUE.md +465 -0
  908. package/templates/default/.cursor/skills/remotion-markup/remotion-maps/techniques/maplibre/references/render-stability.md +64 -0
  909. package/templates/default/.cursor/skills/remotion-markup/remotion-maps/techniques/maptiler/TECHNIQUE.md +80 -0
  910. package/templates/default/.cursor/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/CountryLabel.tsx +70 -0
  911. package/templates/default/.cursor/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/MapTilerVectorElement.ts +80 -0
  912. package/templates/default/.cursor/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/RiverReveal.tsx +363 -0
  913. package/templates/default/.cursor/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/example-Root.tsx +22 -0
  914. package/templates/default/.cursor/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/sample-data/country-meta.json +7535 -0
  915. package/templates/default/.cursor/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/sample-data/yarlung-flow.json +605 -0
  916. package/templates/default/.cursor/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/tokens.ts +34 -0
  917. package/templates/default/.cursor/skills/remotion-markup/remotion-maps/techniques/maptiler/references/map-data-sources.md +91 -0
  918. package/templates/default/.cursor/skills/remotion-markup/remotion-maps/techniques/maptiler/references/map-explainer-architecture.md +129 -0
  919. package/templates/default/.cursor/skills/remotion-markup/remotion-maps/techniques/maptiler/references/map-geo-prep.md +85 -0
  920. package/templates/default/.cursor/skills/remotion-markup/remotion-maps/techniques/maptiler/references/render-stability.md +64 -0
  921. package/templates/default/.cursor/skills/remotion-markup/remotion-maps/techniques/maptiler/scripts/prep-geo.mjs +202 -0
  922. package/templates/default/.cursor/skills/remotion-markup/remotion-maps/techniques/static-map/TECHNIQUE.md +37 -0
  923. package/templates/default/.cursor/skills/remotion-markup/sequencing.md +169 -0
  924. package/templates/default/.cursor/skills/remotion-markup/sfx.md +51 -0
  925. package/templates/default/.cursor/skills/remotion-markup/silence-detection.md +71 -0
  926. package/templates/default/.cursor/skills/remotion-markup/text-highlights.md +56 -0
  927. package/templates/default/.cursor/skills/remotion-markup/timing.md +111 -0
  928. package/templates/default/.cursor/skills/remotion-markup/transitions.md +239 -0
  929. package/templates/default/.cursor/skills/remotion-markup/video-editing.md +90 -0
  930. package/templates/default/.cursor/skills/remotion-markup/voiceover.md +99 -0
  931. package/templates/default/.cursor/skills/remotion-multimedia/SKILL.md +20 -0
  932. package/templates/default/.cursor/skills/remotion-multimedia/agents/openai.yaml +7 -0
  933. package/templates/default/.cursor/skills/remotion-multimedia/assets/remotion-icon.png +0 -0
  934. package/templates/default/.cursor/skills/remotion-multimedia/get-audio-duration.md +56 -0
  935. package/templates/default/.cursor/skills/remotion-multimedia/get-video-dimensions.md +66 -0
  936. package/templates/default/.cursor/skills/remotion-multimedia/get-video-duration.md +58 -0
  937. package/templates/default/.cursor/skills/remotion-render/SKILL.md +27 -0
  938. package/templates/default/.cursor/skills/remotion-render/agents/openai.yaml +7 -0
  939. package/templates/default/.cursor/skills/remotion-render/assets/remotion-icon.png +0 -0
  940. package/templates/default/.cursor/skills/remotion-render/transparent-videos.md +106 -0
  941. package/templates/default/.cursor/skills/remotion-saas/SKILL.md +33 -0
  942. package/templates/default/.cursor/skills/remotion-saas/agents/openai.yaml +7 -0
  943. package/templates/default/.cursor/skills/remotion-saas/assets/remotion-icon.png +0 -0
  944. package/templates/default/.cursor/skills/remotion-saas/framework.md +21 -0
  945. package/templates/default/.cursor/skills/remotion-saas/player.md +33 -0
  946. package/templates/default/.cursor/skills/remotion-saas/rendering.md +69 -0
  947. package/templates/default/.cursor/skills/remotion-studio/SKILL.md +24 -0
  948. package/templates/default/.cursor/skills/remotion-studio/agents/openai.yaml +7 -0
  949. package/templates/default/.cursor/skills/remotion-studio/assets/remotion-icon.png +0 -0
  950. package/templates/default/.cursor/skills/remotion-upgrade/SKILL.md +31 -0
  951. package/templates/default/.cursor/skills/remotion-upgrade/agents/openai.yaml +7 -0
  952. package/templates/default/.cursor/skills/remotion-upgrade/assets/remotion-icon.png +0 -0
  953. package/templates/default/.github/skills/remotion-best-practices/SKILL.md +59 -0
  954. package/templates/default/.github/skills/remotion-best-practices/agents/openai.yaml +7 -0
  955. package/templates/default/.github/skills/remotion-best-practices/assets/remotion-icon.png +0 -0
  956. package/templates/default/.github/skills/remotion-best-practices/remotion-captions/REFERENCE.md +36 -0
  957. package/templates/default/.github/skills/remotion-best-practices/remotion-captions/agents/openai.yaml +7 -0
  958. package/templates/default/.github/skills/remotion-best-practices/remotion-captions/assets/remotion-icon.png +0 -0
  959. package/templates/default/.github/skills/remotion-best-practices/remotion-captions/display-captions.md +190 -0
  960. package/templates/default/.github/skills/remotion-best-practices/remotion-captions/import-srt-captions.md +73 -0
  961. package/templates/default/.github/skills/remotion-best-practices/remotion-captions/transcribe-captions.md +70 -0
  962. package/templates/default/.github/skills/remotion-best-practices/remotion-create/REFERENCE.md +68 -0
  963. package/templates/default/.github/skills/remotion-best-practices/remotion-create/agents/openai.yaml +7 -0
  964. package/templates/default/.github/skills/remotion-best-practices/remotion-create/assets/remotion-icon.png +0 -0
  965. package/templates/default/.github/skills/remotion-best-practices/remotion-create/tailwind.md +11 -0
  966. package/templates/default/.github/skills/remotion-best-practices/remotion-create/video-layout.md +9 -0
  967. package/templates/default/.github/skills/remotion-best-practices/remotion-docs/REFERENCE.md +46 -0
  968. package/templates/default/.github/skills/remotion-best-practices/remotion-docs/agents/openai.yaml +7 -0
  969. package/templates/default/.github/skills/remotion-best-practices/remotion-docs/assets/remotion-icon.png +0 -0
  970. package/templates/default/.github/skills/remotion-best-practices/remotion-interactivity/REFERENCE.md +247 -0
  971. package/templates/default/.github/skills/remotion-best-practices/remotion-interactivity/agents/openai.yaml +7 -0
  972. package/templates/default/.github/skills/remotion-best-practices/remotion-interactivity/assets/remotion-icon.png +0 -0
  973. package/templates/default/.github/skills/remotion-best-practices/remotion-maps/REFERENCE.md +36 -0
  974. package/templates/default/.github/skills/remotion-best-practices/remotion-maps/agents/openai.yaml +7 -0
  975. package/templates/default/.github/skills/remotion-best-practices/remotion-maps/assets/remotion-icon.png +0 -0
  976. package/templates/default/.github/skills/remotion-best-practices/remotion-maps/techniques/cesium/TECHNIQUE.md +89 -0
  977. package/templates/default/.github/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/CesiumFlythrough.tsx +284 -0
  978. package/templates/default/.github/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/cesium-path.json +299 -0
  979. package/templates/default/.github/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/city-path.json +12 -0
  980. package/templates/default/.github/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/example-Root.tsx +39 -0
  981. package/templates/default/.github/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/flight-path.ts +35 -0
  982. package/templates/default/.github/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/sample-river.geojson +215 -0
  983. package/templates/default/.github/skills/remotion-best-practices/remotion-maps/techniques/cesium/references/3d-data-sources.md +43 -0
  984. package/templates/default/.github/skills/remotion-best-practices/remotion-maps/techniques/cesium/references/3d-flyover-architecture.md +128 -0
  985. package/templates/default/.github/skills/remotion-best-practices/remotion-maps/techniques/cesium/references/3d-troubleshooting.md +57 -0
  986. package/templates/default/.github/skills/remotion-best-practices/remotion-maps/techniques/cesium/scripts/prep-cesium-path.mjs +161 -0
  987. package/templates/default/.github/skills/remotion-best-practices/remotion-maps/techniques/mapbox/TECHNIQUE.md +449 -0
  988. package/templates/default/.github/skills/remotion-best-practices/remotion-maps/techniques/mapbox/references/render-stability.md +64 -0
  989. package/templates/default/.github/skills/remotion-best-practices/remotion-maps/techniques/maplibre/TECHNIQUE.md +465 -0
  990. package/templates/default/.github/skills/remotion-best-practices/remotion-maps/techniques/maplibre/references/render-stability.md +64 -0
  991. package/templates/default/.github/skills/remotion-best-practices/remotion-maps/techniques/maptiler/TECHNIQUE.md +80 -0
  992. package/templates/default/.github/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/CountryLabel.tsx +70 -0
  993. package/templates/default/.github/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/MapTilerVectorElement.ts +80 -0
  994. package/templates/default/.github/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/RiverReveal.tsx +363 -0
  995. package/templates/default/.github/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/example-Root.tsx +22 -0
  996. package/templates/default/.github/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/sample-data/country-meta.json +7535 -0
  997. package/templates/default/.github/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/sample-data/yarlung-flow.json +605 -0
  998. package/templates/default/.github/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/tokens.ts +34 -0
  999. package/templates/default/.github/skills/remotion-best-practices/remotion-maps/techniques/maptiler/references/map-data-sources.md +91 -0
  1000. package/templates/default/.github/skills/remotion-best-practices/remotion-maps/techniques/maptiler/references/map-explainer-architecture.md +129 -0
  1001. package/templates/default/.github/skills/remotion-best-practices/remotion-maps/techniques/maptiler/references/map-geo-prep.md +85 -0
  1002. package/templates/default/.github/skills/remotion-best-practices/remotion-maps/techniques/maptiler/references/render-stability.md +64 -0
  1003. package/templates/default/.github/skills/remotion-best-practices/remotion-maps/techniques/maptiler/scripts/prep-geo.mjs +202 -0
  1004. package/templates/default/.github/skills/remotion-best-practices/remotion-maps/techniques/static-map/TECHNIQUE.md +37 -0
  1005. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/3d.md +86 -0
  1006. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/REFERENCE.md +365 -0
  1007. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/agents/openai.yaml +7 -0
  1008. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/assets/remotion-icon.png +0 -0
  1009. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/audio-visualization.md +198 -0
  1010. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/audio.md +171 -0
  1011. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/calculate-metadata.md +136 -0
  1012. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/compositions.md +117 -0
  1013. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/cropping.md +34 -0
  1014. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/effects.md +251 -0
  1015. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/embedding-videos.md +173 -0
  1016. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/ffmpeg.md +38 -0
  1017. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/gifs.md +187 -0
  1018. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/google-fonts.md +76 -0
  1019. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/html-in-canvas.md +128 -0
  1020. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/images.md +73 -0
  1021. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/light-leaks.md +106 -0
  1022. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/local-fonts.md +69 -0
  1023. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/lottie.md +73 -0
  1024. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/measuring-dom-nodes.md +38 -0
  1025. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/measuring-text.md +146 -0
  1026. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/multi-scene-video.md +81 -0
  1027. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/parameters.md +111 -0
  1028. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/remotion-maps/REFERENCE.md +36 -0
  1029. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/remotion-maps/agents/openai.yaml +7 -0
  1030. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/remotion-maps/assets/remotion-icon.png +0 -0
  1031. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/TECHNIQUE.md +89 -0
  1032. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/CesiumFlythrough.tsx +284 -0
  1033. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/cesium-path.json +299 -0
  1034. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/city-path.json +12 -0
  1035. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/example-Root.tsx +39 -0
  1036. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/flight-path.ts +35 -0
  1037. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/sample-river.geojson +215 -0
  1038. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/references/3d-data-sources.md +43 -0
  1039. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/references/3d-flyover-architecture.md +128 -0
  1040. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/references/3d-troubleshooting.md +57 -0
  1041. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/scripts/prep-cesium-path.mjs +161 -0
  1042. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/mapbox/TECHNIQUE.md +449 -0
  1043. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/mapbox/references/render-stability.md +64 -0
  1044. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maplibre/TECHNIQUE.md +465 -0
  1045. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maplibre/references/render-stability.md +64 -0
  1046. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/TECHNIQUE.md +80 -0
  1047. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/CountryLabel.tsx +70 -0
  1048. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/MapTilerVectorElement.ts +80 -0
  1049. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/RiverReveal.tsx +363 -0
  1050. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/example-Root.tsx +22 -0
  1051. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/sample-data/country-meta.json +7535 -0
  1052. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/sample-data/yarlung-flow.json +605 -0
  1053. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/tokens.ts +34 -0
  1054. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/references/map-data-sources.md +91 -0
  1055. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/references/map-explainer-architecture.md +129 -0
  1056. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/references/map-geo-prep.md +85 -0
  1057. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/references/render-stability.md +64 -0
  1058. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/scripts/prep-geo.mjs +202 -0
  1059. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/static-map/TECHNIQUE.md +37 -0
  1060. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/sequencing.md +169 -0
  1061. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/sfx.md +51 -0
  1062. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/silence-detection.md +71 -0
  1063. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/text-highlights.md +56 -0
  1064. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/timing.md +111 -0
  1065. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/transitions.md +239 -0
  1066. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/video-editing.md +90 -0
  1067. package/templates/default/.github/skills/remotion-best-practices/remotion-markup/voiceover.md +99 -0
  1068. package/templates/default/.github/skills/remotion-best-practices/remotion-multimedia/REFERENCE.md +20 -0
  1069. package/templates/default/.github/skills/remotion-best-practices/remotion-multimedia/agents/openai.yaml +7 -0
  1070. package/templates/default/.github/skills/remotion-best-practices/remotion-multimedia/assets/remotion-icon.png +0 -0
  1071. package/templates/default/.github/skills/remotion-best-practices/remotion-multimedia/get-audio-duration.md +56 -0
  1072. package/templates/default/.github/skills/remotion-best-practices/remotion-multimedia/get-video-dimensions.md +66 -0
  1073. package/templates/default/.github/skills/remotion-best-practices/remotion-multimedia/get-video-duration.md +58 -0
  1074. package/templates/default/.github/skills/remotion-best-practices/remotion-render/REFERENCE.md +27 -0
  1075. package/templates/default/.github/skills/remotion-best-practices/remotion-render/agents/openai.yaml +7 -0
  1076. package/templates/default/.github/skills/remotion-best-practices/remotion-render/assets/remotion-icon.png +0 -0
  1077. package/templates/default/.github/skills/remotion-best-practices/remotion-render/transparent-videos.md +106 -0
  1078. package/templates/default/.github/skills/remotion-best-practices/remotion-saas/REFERENCE.md +33 -0
  1079. package/templates/default/.github/skills/remotion-best-practices/remotion-saas/agents/openai.yaml +7 -0
  1080. package/templates/default/.github/skills/remotion-best-practices/remotion-saas/assets/remotion-icon.png +0 -0
  1081. package/templates/default/.github/skills/remotion-best-practices/remotion-saas/framework.md +21 -0
  1082. package/templates/default/.github/skills/remotion-best-practices/remotion-saas/player.md +33 -0
  1083. package/templates/default/.github/skills/remotion-best-practices/remotion-saas/rendering.md +69 -0
  1084. package/templates/default/.github/skills/remotion-best-practices/remotion-studio/REFERENCE.md +24 -0
  1085. package/templates/default/.github/skills/remotion-best-practices/remotion-studio/agents/openai.yaml +7 -0
  1086. package/templates/default/.github/skills/remotion-best-practices/remotion-studio/assets/remotion-icon.png +0 -0
  1087. package/templates/default/.github/skills/remotion-best-practices/remotion-upgrade/REFERENCE.md +31 -0
  1088. package/templates/default/.github/skills/remotion-best-practices/remotion-upgrade/agents/openai.yaml +7 -0
  1089. package/templates/default/.github/skills/remotion-best-practices/remotion-upgrade/assets/remotion-icon.png +0 -0
  1090. package/templates/default/.github/skills/remotion-captions/SKILL.md +36 -0
  1091. package/templates/default/.github/skills/remotion-captions/agents/openai.yaml +7 -0
  1092. package/templates/default/.github/skills/remotion-captions/assets/remotion-icon.png +0 -0
  1093. package/templates/default/.github/skills/remotion-captions/display-captions.md +190 -0
  1094. package/templates/default/.github/skills/remotion-captions/import-srt-captions.md +73 -0
  1095. package/templates/default/.github/skills/remotion-captions/transcribe-captions.md +70 -0
  1096. package/templates/default/.github/skills/remotion-create/SKILL.md +68 -0
  1097. package/templates/default/.github/skills/remotion-create/agents/openai.yaml +7 -0
  1098. package/templates/default/.github/skills/remotion-create/assets/remotion-icon.png +0 -0
  1099. package/templates/default/.github/skills/remotion-create/tailwind.md +11 -0
  1100. package/templates/default/.github/skills/remotion-create/video-layout.md +9 -0
  1101. package/templates/default/.github/skills/remotion-docs/SKILL.md +46 -0
  1102. package/templates/default/.github/skills/remotion-docs/agents/openai.yaml +7 -0
  1103. package/templates/default/.github/skills/remotion-docs/assets/remotion-icon.png +0 -0
  1104. package/templates/default/.github/skills/remotion-interactivity/SKILL.md +247 -0
  1105. package/templates/default/.github/skills/remotion-interactivity/agents/openai.yaml +7 -0
  1106. package/templates/default/.github/skills/remotion-interactivity/assets/remotion-icon.png +0 -0
  1107. package/templates/default/.github/skills/remotion-maps/SKILL.md +36 -0
  1108. package/templates/default/.github/skills/remotion-maps/agents/openai.yaml +7 -0
  1109. package/templates/default/.github/skills/remotion-maps/assets/remotion-icon.png +0 -0
  1110. package/templates/default/.github/skills/remotion-maps/techniques/cesium/TECHNIQUE.md +89 -0
  1111. package/templates/default/.github/skills/remotion-maps/techniques/cesium/assets/CesiumFlythrough.tsx +284 -0
  1112. package/templates/default/.github/skills/remotion-maps/techniques/cesium/assets/cesium-path.json +299 -0
  1113. package/templates/default/.github/skills/remotion-maps/techniques/cesium/assets/city-path.json +12 -0
  1114. package/templates/default/.github/skills/remotion-maps/techniques/cesium/assets/example-Root.tsx +39 -0
  1115. package/templates/default/.github/skills/remotion-maps/techniques/cesium/assets/flight-path.ts +35 -0
  1116. package/templates/default/.github/skills/remotion-maps/techniques/cesium/assets/sample-river.geojson +215 -0
  1117. package/templates/default/.github/skills/remotion-maps/techniques/cesium/references/3d-data-sources.md +43 -0
  1118. package/templates/default/.github/skills/remotion-maps/techniques/cesium/references/3d-flyover-architecture.md +128 -0
  1119. package/templates/default/.github/skills/remotion-maps/techniques/cesium/references/3d-troubleshooting.md +57 -0
  1120. package/templates/default/.github/skills/remotion-maps/techniques/cesium/scripts/prep-cesium-path.mjs +161 -0
  1121. package/templates/default/.github/skills/remotion-maps/techniques/mapbox/TECHNIQUE.md +449 -0
  1122. package/templates/default/.github/skills/remotion-maps/techniques/mapbox/references/render-stability.md +64 -0
  1123. package/templates/default/.github/skills/remotion-maps/techniques/maplibre/TECHNIQUE.md +465 -0
  1124. package/templates/default/.github/skills/remotion-maps/techniques/maplibre/references/render-stability.md +64 -0
  1125. package/templates/default/.github/skills/remotion-maps/techniques/maptiler/TECHNIQUE.md +80 -0
  1126. package/templates/default/.github/skills/remotion-maps/techniques/maptiler/assets/CountryLabel.tsx +70 -0
  1127. package/templates/default/.github/skills/remotion-maps/techniques/maptiler/assets/MapTilerVectorElement.ts +80 -0
  1128. package/templates/default/.github/skills/remotion-maps/techniques/maptiler/assets/RiverReveal.tsx +363 -0
  1129. package/templates/default/.github/skills/remotion-maps/techniques/maptiler/assets/example-Root.tsx +22 -0
  1130. package/templates/default/.github/skills/remotion-maps/techniques/maptiler/assets/sample-data/country-meta.json +7535 -0
  1131. package/templates/default/.github/skills/remotion-maps/techniques/maptiler/assets/sample-data/yarlung-flow.json +605 -0
  1132. package/templates/default/.github/skills/remotion-maps/techniques/maptiler/assets/tokens.ts +34 -0
  1133. package/templates/default/.github/skills/remotion-maps/techniques/maptiler/references/map-data-sources.md +91 -0
  1134. package/templates/default/.github/skills/remotion-maps/techniques/maptiler/references/map-explainer-architecture.md +129 -0
  1135. package/templates/default/.github/skills/remotion-maps/techniques/maptiler/references/map-geo-prep.md +85 -0
  1136. package/templates/default/.github/skills/remotion-maps/techniques/maptiler/references/render-stability.md +64 -0
  1137. package/templates/default/.github/skills/remotion-maps/techniques/maptiler/scripts/prep-geo.mjs +202 -0
  1138. package/templates/default/.github/skills/remotion-maps/techniques/static-map/TECHNIQUE.md +37 -0
  1139. package/templates/default/.github/skills/remotion-markup/3d.md +86 -0
  1140. package/templates/default/.github/skills/remotion-markup/SKILL.md +365 -0
  1141. package/templates/default/.github/skills/remotion-markup/agents/openai.yaml +7 -0
  1142. package/templates/default/.github/skills/remotion-markup/assets/remotion-icon.png +0 -0
  1143. package/templates/default/.github/skills/remotion-markup/audio-visualization.md +198 -0
  1144. package/templates/default/.github/skills/remotion-markup/audio.md +171 -0
  1145. package/templates/default/.github/skills/remotion-markup/calculate-metadata.md +136 -0
  1146. package/templates/default/.github/skills/remotion-markup/compositions.md +117 -0
  1147. package/templates/default/.github/skills/remotion-markup/cropping.md +34 -0
  1148. package/templates/default/.github/skills/remotion-markup/effects.md +251 -0
  1149. package/templates/default/.github/skills/remotion-markup/embedding-videos.md +173 -0
  1150. package/templates/default/.github/skills/remotion-markup/ffmpeg.md +38 -0
  1151. package/templates/default/.github/skills/remotion-markup/gifs.md +187 -0
  1152. package/templates/default/.github/skills/remotion-markup/google-fonts.md +76 -0
  1153. package/templates/default/.github/skills/remotion-markup/html-in-canvas.md +128 -0
  1154. package/templates/default/.github/skills/remotion-markup/images.md +73 -0
  1155. package/templates/default/.github/skills/remotion-markup/light-leaks.md +106 -0
  1156. package/templates/default/.github/skills/remotion-markup/local-fonts.md +69 -0
  1157. package/templates/default/.github/skills/remotion-markup/lottie.md +73 -0
  1158. package/templates/default/.github/skills/remotion-markup/measuring-dom-nodes.md +38 -0
  1159. package/templates/default/.github/skills/remotion-markup/measuring-text.md +146 -0
  1160. package/templates/default/.github/skills/remotion-markup/multi-scene-video.md +81 -0
  1161. package/templates/default/.github/skills/remotion-markup/parameters.md +111 -0
  1162. package/templates/default/.github/skills/remotion-markup/remotion-maps/REFERENCE.md +36 -0
  1163. package/templates/default/.github/skills/remotion-markup/remotion-maps/agents/openai.yaml +7 -0
  1164. package/templates/default/.github/skills/remotion-markup/remotion-maps/assets/remotion-icon.png +0 -0
  1165. package/templates/default/.github/skills/remotion-markup/remotion-maps/techniques/cesium/TECHNIQUE.md +89 -0
  1166. package/templates/default/.github/skills/remotion-markup/remotion-maps/techniques/cesium/assets/CesiumFlythrough.tsx +284 -0
  1167. package/templates/default/.github/skills/remotion-markup/remotion-maps/techniques/cesium/assets/cesium-path.json +299 -0
  1168. package/templates/default/.github/skills/remotion-markup/remotion-maps/techniques/cesium/assets/city-path.json +12 -0
  1169. package/templates/default/.github/skills/remotion-markup/remotion-maps/techniques/cesium/assets/example-Root.tsx +39 -0
  1170. package/templates/default/.github/skills/remotion-markup/remotion-maps/techniques/cesium/assets/flight-path.ts +35 -0
  1171. package/templates/default/.github/skills/remotion-markup/remotion-maps/techniques/cesium/assets/sample-river.geojson +215 -0
  1172. package/templates/default/.github/skills/remotion-markup/remotion-maps/techniques/cesium/references/3d-data-sources.md +43 -0
  1173. package/templates/default/.github/skills/remotion-markup/remotion-maps/techniques/cesium/references/3d-flyover-architecture.md +128 -0
  1174. package/templates/default/.github/skills/remotion-markup/remotion-maps/techniques/cesium/references/3d-troubleshooting.md +57 -0
  1175. package/templates/default/.github/skills/remotion-markup/remotion-maps/techniques/cesium/scripts/prep-cesium-path.mjs +161 -0
  1176. package/templates/default/.github/skills/remotion-markup/remotion-maps/techniques/mapbox/TECHNIQUE.md +449 -0
  1177. package/templates/default/.github/skills/remotion-markup/remotion-maps/techniques/mapbox/references/render-stability.md +64 -0
  1178. package/templates/default/.github/skills/remotion-markup/remotion-maps/techniques/maplibre/TECHNIQUE.md +465 -0
  1179. package/templates/default/.github/skills/remotion-markup/remotion-maps/techniques/maplibre/references/render-stability.md +64 -0
  1180. package/templates/default/.github/skills/remotion-markup/remotion-maps/techniques/maptiler/TECHNIQUE.md +80 -0
  1181. package/templates/default/.github/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/CountryLabel.tsx +70 -0
  1182. package/templates/default/.github/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/MapTilerVectorElement.ts +80 -0
  1183. package/templates/default/.github/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/RiverReveal.tsx +363 -0
  1184. package/templates/default/.github/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/example-Root.tsx +22 -0
  1185. package/templates/default/.github/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/sample-data/country-meta.json +7535 -0
  1186. package/templates/default/.github/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/sample-data/yarlung-flow.json +605 -0
  1187. package/templates/default/.github/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/tokens.ts +34 -0
  1188. package/templates/default/.github/skills/remotion-markup/remotion-maps/techniques/maptiler/references/map-data-sources.md +91 -0
  1189. package/templates/default/.github/skills/remotion-markup/remotion-maps/techniques/maptiler/references/map-explainer-architecture.md +129 -0
  1190. package/templates/default/.github/skills/remotion-markup/remotion-maps/techniques/maptiler/references/map-geo-prep.md +85 -0
  1191. package/templates/default/.github/skills/remotion-markup/remotion-maps/techniques/maptiler/references/render-stability.md +64 -0
  1192. package/templates/default/.github/skills/remotion-markup/remotion-maps/techniques/maptiler/scripts/prep-geo.mjs +202 -0
  1193. package/templates/default/.github/skills/remotion-markup/remotion-maps/techniques/static-map/TECHNIQUE.md +37 -0
  1194. package/templates/default/.github/skills/remotion-markup/sequencing.md +169 -0
  1195. package/templates/default/.github/skills/remotion-markup/sfx.md +51 -0
  1196. package/templates/default/.github/skills/remotion-markup/silence-detection.md +71 -0
  1197. package/templates/default/.github/skills/remotion-markup/text-highlights.md +56 -0
  1198. package/templates/default/.github/skills/remotion-markup/timing.md +111 -0
  1199. package/templates/default/.github/skills/remotion-markup/transitions.md +239 -0
  1200. package/templates/default/.github/skills/remotion-markup/video-editing.md +90 -0
  1201. package/templates/default/.github/skills/remotion-markup/voiceover.md +99 -0
  1202. package/templates/default/.github/skills/remotion-multimedia/SKILL.md +20 -0
  1203. package/templates/default/.github/skills/remotion-multimedia/agents/openai.yaml +7 -0
  1204. package/templates/default/.github/skills/remotion-multimedia/assets/remotion-icon.png +0 -0
  1205. package/templates/default/.github/skills/remotion-multimedia/get-audio-duration.md +56 -0
  1206. package/templates/default/.github/skills/remotion-multimedia/get-video-dimensions.md +66 -0
  1207. package/templates/default/.github/skills/remotion-multimedia/get-video-duration.md +58 -0
  1208. package/templates/default/.github/skills/remotion-render/SKILL.md +27 -0
  1209. package/templates/default/.github/skills/remotion-render/agents/openai.yaml +7 -0
  1210. package/templates/default/.github/skills/remotion-render/assets/remotion-icon.png +0 -0
  1211. package/templates/default/.github/skills/remotion-render/transparent-videos.md +106 -0
  1212. package/templates/default/.github/skills/remotion-saas/SKILL.md +33 -0
  1213. package/templates/default/.github/skills/remotion-saas/agents/openai.yaml +7 -0
  1214. package/templates/default/.github/skills/remotion-saas/assets/remotion-icon.png +0 -0
  1215. package/templates/default/.github/skills/remotion-saas/framework.md +21 -0
  1216. package/templates/default/.github/skills/remotion-saas/player.md +33 -0
  1217. package/templates/default/.github/skills/remotion-saas/rendering.md +69 -0
  1218. package/templates/default/.github/skills/remotion-studio/SKILL.md +24 -0
  1219. package/templates/default/.github/skills/remotion-studio/agents/openai.yaml +7 -0
  1220. package/templates/default/.github/skills/remotion-studio/assets/remotion-icon.png +0 -0
  1221. package/templates/default/.github/skills/remotion-upgrade/SKILL.md +31 -0
  1222. package/templates/default/.github/skills/remotion-upgrade/agents/openai.yaml +7 -0
  1223. package/templates/default/.github/skills/remotion-upgrade/assets/remotion-icon.png +0 -0
  1224. package/templates/default/.github/workflows/visual-regression.yml +69 -0
  1225. package/templates/default/.opencode/skills/remotion-best-practices/SKILL.md +59 -0
  1226. package/templates/default/.opencode/skills/remotion-best-practices/agents/openai.yaml +7 -0
  1227. package/templates/default/.opencode/skills/remotion-best-practices/assets/remotion-icon.png +0 -0
  1228. package/templates/default/.opencode/skills/remotion-best-practices/remotion-captions/REFERENCE.md +36 -0
  1229. package/templates/default/.opencode/skills/remotion-best-practices/remotion-captions/agents/openai.yaml +7 -0
  1230. package/templates/default/.opencode/skills/remotion-best-practices/remotion-captions/assets/remotion-icon.png +0 -0
  1231. package/templates/default/.opencode/skills/remotion-best-practices/remotion-captions/display-captions.md +190 -0
  1232. package/templates/default/.opencode/skills/remotion-best-practices/remotion-captions/import-srt-captions.md +73 -0
  1233. package/templates/default/.opencode/skills/remotion-best-practices/remotion-captions/transcribe-captions.md +70 -0
  1234. package/templates/default/.opencode/skills/remotion-best-practices/remotion-create/REFERENCE.md +68 -0
  1235. package/templates/default/.opencode/skills/remotion-best-practices/remotion-create/agents/openai.yaml +7 -0
  1236. package/templates/default/.opencode/skills/remotion-best-practices/remotion-create/assets/remotion-icon.png +0 -0
  1237. package/templates/default/.opencode/skills/remotion-best-practices/remotion-create/tailwind.md +11 -0
  1238. package/templates/default/.opencode/skills/remotion-best-practices/remotion-create/video-layout.md +9 -0
  1239. package/templates/default/.opencode/skills/remotion-best-practices/remotion-docs/REFERENCE.md +46 -0
  1240. package/templates/default/.opencode/skills/remotion-best-practices/remotion-docs/agents/openai.yaml +7 -0
  1241. package/templates/default/.opencode/skills/remotion-best-practices/remotion-docs/assets/remotion-icon.png +0 -0
  1242. package/templates/default/.opencode/skills/remotion-best-practices/remotion-interactivity/REFERENCE.md +247 -0
  1243. package/templates/default/.opencode/skills/remotion-best-practices/remotion-interactivity/agents/openai.yaml +7 -0
  1244. package/templates/default/.opencode/skills/remotion-best-practices/remotion-interactivity/assets/remotion-icon.png +0 -0
  1245. package/templates/default/.opencode/skills/remotion-best-practices/remotion-maps/REFERENCE.md +36 -0
  1246. package/templates/default/.opencode/skills/remotion-best-practices/remotion-maps/agents/openai.yaml +7 -0
  1247. package/templates/default/.opencode/skills/remotion-best-practices/remotion-maps/assets/remotion-icon.png +0 -0
  1248. package/templates/default/.opencode/skills/remotion-best-practices/remotion-maps/techniques/cesium/TECHNIQUE.md +89 -0
  1249. package/templates/default/.opencode/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/CesiumFlythrough.tsx +284 -0
  1250. package/templates/default/.opencode/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/cesium-path.json +299 -0
  1251. package/templates/default/.opencode/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/city-path.json +12 -0
  1252. package/templates/default/.opencode/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/example-Root.tsx +39 -0
  1253. package/templates/default/.opencode/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/flight-path.ts +35 -0
  1254. package/templates/default/.opencode/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/sample-river.geojson +215 -0
  1255. package/templates/default/.opencode/skills/remotion-best-practices/remotion-maps/techniques/cesium/references/3d-data-sources.md +43 -0
  1256. package/templates/default/.opencode/skills/remotion-best-practices/remotion-maps/techniques/cesium/references/3d-flyover-architecture.md +128 -0
  1257. package/templates/default/.opencode/skills/remotion-best-practices/remotion-maps/techniques/cesium/references/3d-troubleshooting.md +57 -0
  1258. package/templates/default/.opencode/skills/remotion-best-practices/remotion-maps/techniques/cesium/scripts/prep-cesium-path.mjs +161 -0
  1259. package/templates/default/.opencode/skills/remotion-best-practices/remotion-maps/techniques/mapbox/TECHNIQUE.md +449 -0
  1260. package/templates/default/.opencode/skills/remotion-best-practices/remotion-maps/techniques/mapbox/references/render-stability.md +64 -0
  1261. package/templates/default/.opencode/skills/remotion-best-practices/remotion-maps/techniques/maplibre/TECHNIQUE.md +465 -0
  1262. package/templates/default/.opencode/skills/remotion-best-practices/remotion-maps/techniques/maplibre/references/render-stability.md +64 -0
  1263. package/templates/default/.opencode/skills/remotion-best-practices/remotion-maps/techniques/maptiler/TECHNIQUE.md +80 -0
  1264. package/templates/default/.opencode/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/CountryLabel.tsx +70 -0
  1265. package/templates/default/.opencode/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/MapTilerVectorElement.ts +80 -0
  1266. package/templates/default/.opencode/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/RiverReveal.tsx +363 -0
  1267. package/templates/default/.opencode/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/example-Root.tsx +22 -0
  1268. package/templates/default/.opencode/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/sample-data/country-meta.json +7535 -0
  1269. package/templates/default/.opencode/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/sample-data/yarlung-flow.json +605 -0
  1270. package/templates/default/.opencode/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/tokens.ts +34 -0
  1271. package/templates/default/.opencode/skills/remotion-best-practices/remotion-maps/techniques/maptiler/references/map-data-sources.md +91 -0
  1272. package/templates/default/.opencode/skills/remotion-best-practices/remotion-maps/techniques/maptiler/references/map-explainer-architecture.md +129 -0
  1273. package/templates/default/.opencode/skills/remotion-best-practices/remotion-maps/techniques/maptiler/references/map-geo-prep.md +85 -0
  1274. package/templates/default/.opencode/skills/remotion-best-practices/remotion-maps/techniques/maptiler/references/render-stability.md +64 -0
  1275. package/templates/default/.opencode/skills/remotion-best-practices/remotion-maps/techniques/maptiler/scripts/prep-geo.mjs +202 -0
  1276. package/templates/default/.opencode/skills/remotion-best-practices/remotion-maps/techniques/static-map/TECHNIQUE.md +37 -0
  1277. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/3d.md +86 -0
  1278. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/REFERENCE.md +365 -0
  1279. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/agents/openai.yaml +7 -0
  1280. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/assets/remotion-icon.png +0 -0
  1281. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/audio-visualization.md +198 -0
  1282. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/audio.md +171 -0
  1283. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/calculate-metadata.md +136 -0
  1284. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/compositions.md +117 -0
  1285. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/cropping.md +34 -0
  1286. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/effects.md +251 -0
  1287. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/embedding-videos.md +173 -0
  1288. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/ffmpeg.md +38 -0
  1289. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/gifs.md +187 -0
  1290. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/google-fonts.md +76 -0
  1291. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/html-in-canvas.md +128 -0
  1292. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/images.md +73 -0
  1293. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/light-leaks.md +106 -0
  1294. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/local-fonts.md +69 -0
  1295. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/lottie.md +73 -0
  1296. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/measuring-dom-nodes.md +38 -0
  1297. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/measuring-text.md +146 -0
  1298. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/multi-scene-video.md +81 -0
  1299. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/parameters.md +111 -0
  1300. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/remotion-maps/REFERENCE.md +36 -0
  1301. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/remotion-maps/agents/openai.yaml +7 -0
  1302. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/remotion-maps/assets/remotion-icon.png +0 -0
  1303. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/TECHNIQUE.md +89 -0
  1304. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/CesiumFlythrough.tsx +284 -0
  1305. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/cesium-path.json +299 -0
  1306. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/city-path.json +12 -0
  1307. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/example-Root.tsx +39 -0
  1308. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/flight-path.ts +35 -0
  1309. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/sample-river.geojson +215 -0
  1310. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/references/3d-data-sources.md +43 -0
  1311. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/references/3d-flyover-architecture.md +128 -0
  1312. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/references/3d-troubleshooting.md +57 -0
  1313. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/scripts/prep-cesium-path.mjs +161 -0
  1314. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/mapbox/TECHNIQUE.md +449 -0
  1315. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/mapbox/references/render-stability.md +64 -0
  1316. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maplibre/TECHNIQUE.md +465 -0
  1317. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maplibre/references/render-stability.md +64 -0
  1318. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/TECHNIQUE.md +80 -0
  1319. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/CountryLabel.tsx +70 -0
  1320. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/MapTilerVectorElement.ts +80 -0
  1321. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/RiverReveal.tsx +363 -0
  1322. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/example-Root.tsx +22 -0
  1323. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/sample-data/country-meta.json +7535 -0
  1324. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/sample-data/yarlung-flow.json +605 -0
  1325. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/tokens.ts +34 -0
  1326. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/references/map-data-sources.md +91 -0
  1327. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/references/map-explainer-architecture.md +129 -0
  1328. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/references/map-geo-prep.md +85 -0
  1329. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/references/render-stability.md +64 -0
  1330. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/scripts/prep-geo.mjs +202 -0
  1331. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/static-map/TECHNIQUE.md +37 -0
  1332. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/sequencing.md +169 -0
  1333. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/sfx.md +51 -0
  1334. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/silence-detection.md +71 -0
  1335. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/text-highlights.md +56 -0
  1336. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/timing.md +111 -0
  1337. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/transitions.md +239 -0
  1338. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/video-editing.md +90 -0
  1339. package/templates/default/.opencode/skills/remotion-best-practices/remotion-markup/voiceover.md +99 -0
  1340. package/templates/default/.opencode/skills/remotion-best-practices/remotion-multimedia/REFERENCE.md +20 -0
  1341. package/templates/default/.opencode/skills/remotion-best-practices/remotion-multimedia/agents/openai.yaml +7 -0
  1342. package/templates/default/.opencode/skills/remotion-best-practices/remotion-multimedia/assets/remotion-icon.png +0 -0
  1343. package/templates/default/.opencode/skills/remotion-best-practices/remotion-multimedia/get-audio-duration.md +56 -0
  1344. package/templates/default/.opencode/skills/remotion-best-practices/remotion-multimedia/get-video-dimensions.md +66 -0
  1345. package/templates/default/.opencode/skills/remotion-best-practices/remotion-multimedia/get-video-duration.md +58 -0
  1346. package/templates/default/.opencode/skills/remotion-best-practices/remotion-render/REFERENCE.md +27 -0
  1347. package/templates/default/.opencode/skills/remotion-best-practices/remotion-render/agents/openai.yaml +7 -0
  1348. package/templates/default/.opencode/skills/remotion-best-practices/remotion-render/assets/remotion-icon.png +0 -0
  1349. package/templates/default/.opencode/skills/remotion-best-practices/remotion-render/transparent-videos.md +106 -0
  1350. package/templates/default/.opencode/skills/remotion-best-practices/remotion-saas/REFERENCE.md +33 -0
  1351. package/templates/default/.opencode/skills/remotion-best-practices/remotion-saas/agents/openai.yaml +7 -0
  1352. package/templates/default/.opencode/skills/remotion-best-practices/remotion-saas/assets/remotion-icon.png +0 -0
  1353. package/templates/default/.opencode/skills/remotion-best-practices/remotion-saas/framework.md +21 -0
  1354. package/templates/default/.opencode/skills/remotion-best-practices/remotion-saas/player.md +33 -0
  1355. package/templates/default/.opencode/skills/remotion-best-practices/remotion-saas/rendering.md +69 -0
  1356. package/templates/default/.opencode/skills/remotion-best-practices/remotion-studio/REFERENCE.md +24 -0
  1357. package/templates/default/.opencode/skills/remotion-best-practices/remotion-studio/agents/openai.yaml +7 -0
  1358. package/templates/default/.opencode/skills/remotion-best-practices/remotion-studio/assets/remotion-icon.png +0 -0
  1359. package/templates/default/.opencode/skills/remotion-best-practices/remotion-upgrade/REFERENCE.md +31 -0
  1360. package/templates/default/.opencode/skills/remotion-best-practices/remotion-upgrade/agents/openai.yaml +7 -0
  1361. package/templates/default/.opencode/skills/remotion-best-practices/remotion-upgrade/assets/remotion-icon.png +0 -0
  1362. package/templates/default/.opencode/skills/remotion-captions/SKILL.md +36 -0
  1363. package/templates/default/.opencode/skills/remotion-captions/agents/openai.yaml +7 -0
  1364. package/templates/default/.opencode/skills/remotion-captions/assets/remotion-icon.png +0 -0
  1365. package/templates/default/.opencode/skills/remotion-captions/display-captions.md +190 -0
  1366. package/templates/default/.opencode/skills/remotion-captions/import-srt-captions.md +73 -0
  1367. package/templates/default/.opencode/skills/remotion-captions/transcribe-captions.md +70 -0
  1368. package/templates/default/.opencode/skills/remotion-create/SKILL.md +68 -0
  1369. package/templates/default/.opencode/skills/remotion-create/agents/openai.yaml +7 -0
  1370. package/templates/default/.opencode/skills/remotion-create/assets/remotion-icon.png +0 -0
  1371. package/templates/default/.opencode/skills/remotion-create/tailwind.md +11 -0
  1372. package/templates/default/.opencode/skills/remotion-create/video-layout.md +9 -0
  1373. package/templates/default/.opencode/skills/remotion-docs/SKILL.md +46 -0
  1374. package/templates/default/.opencode/skills/remotion-docs/agents/openai.yaml +7 -0
  1375. package/templates/default/.opencode/skills/remotion-docs/assets/remotion-icon.png +0 -0
  1376. package/templates/default/.opencode/skills/remotion-interactivity/SKILL.md +247 -0
  1377. package/templates/default/.opencode/skills/remotion-interactivity/agents/openai.yaml +7 -0
  1378. package/templates/default/.opencode/skills/remotion-interactivity/assets/remotion-icon.png +0 -0
  1379. package/templates/default/.opencode/skills/remotion-maps/SKILL.md +36 -0
  1380. package/templates/default/.opencode/skills/remotion-maps/agents/openai.yaml +7 -0
  1381. package/templates/default/.opencode/skills/remotion-maps/assets/remotion-icon.png +0 -0
  1382. package/templates/default/.opencode/skills/remotion-maps/techniques/cesium/TECHNIQUE.md +89 -0
  1383. package/templates/default/.opencode/skills/remotion-maps/techniques/cesium/assets/CesiumFlythrough.tsx +284 -0
  1384. package/templates/default/.opencode/skills/remotion-maps/techniques/cesium/assets/cesium-path.json +299 -0
  1385. package/templates/default/.opencode/skills/remotion-maps/techniques/cesium/assets/city-path.json +12 -0
  1386. package/templates/default/.opencode/skills/remotion-maps/techniques/cesium/assets/example-Root.tsx +39 -0
  1387. package/templates/default/.opencode/skills/remotion-maps/techniques/cesium/assets/flight-path.ts +35 -0
  1388. package/templates/default/.opencode/skills/remotion-maps/techniques/cesium/assets/sample-river.geojson +215 -0
  1389. package/templates/default/.opencode/skills/remotion-maps/techniques/cesium/references/3d-data-sources.md +43 -0
  1390. package/templates/default/.opencode/skills/remotion-maps/techniques/cesium/references/3d-flyover-architecture.md +128 -0
  1391. package/templates/default/.opencode/skills/remotion-maps/techniques/cesium/references/3d-troubleshooting.md +57 -0
  1392. package/templates/default/.opencode/skills/remotion-maps/techniques/cesium/scripts/prep-cesium-path.mjs +161 -0
  1393. package/templates/default/.opencode/skills/remotion-maps/techniques/mapbox/TECHNIQUE.md +449 -0
  1394. package/templates/default/.opencode/skills/remotion-maps/techniques/mapbox/references/render-stability.md +64 -0
  1395. package/templates/default/.opencode/skills/remotion-maps/techniques/maplibre/TECHNIQUE.md +465 -0
  1396. package/templates/default/.opencode/skills/remotion-maps/techniques/maplibre/references/render-stability.md +64 -0
  1397. package/templates/default/.opencode/skills/remotion-maps/techniques/maptiler/TECHNIQUE.md +80 -0
  1398. package/templates/default/.opencode/skills/remotion-maps/techniques/maptiler/assets/CountryLabel.tsx +70 -0
  1399. package/templates/default/.opencode/skills/remotion-maps/techniques/maptiler/assets/MapTilerVectorElement.ts +80 -0
  1400. package/templates/default/.opencode/skills/remotion-maps/techniques/maptiler/assets/RiverReveal.tsx +363 -0
  1401. package/templates/default/.opencode/skills/remotion-maps/techniques/maptiler/assets/example-Root.tsx +22 -0
  1402. package/templates/default/.opencode/skills/remotion-maps/techniques/maptiler/assets/sample-data/country-meta.json +7535 -0
  1403. package/templates/default/.opencode/skills/remotion-maps/techniques/maptiler/assets/sample-data/yarlung-flow.json +605 -0
  1404. package/templates/default/.opencode/skills/remotion-maps/techniques/maptiler/assets/tokens.ts +34 -0
  1405. package/templates/default/.opencode/skills/remotion-maps/techniques/maptiler/references/map-data-sources.md +91 -0
  1406. package/templates/default/.opencode/skills/remotion-maps/techniques/maptiler/references/map-explainer-architecture.md +129 -0
  1407. package/templates/default/.opencode/skills/remotion-maps/techniques/maptiler/references/map-geo-prep.md +85 -0
  1408. package/templates/default/.opencode/skills/remotion-maps/techniques/maptiler/references/render-stability.md +64 -0
  1409. package/templates/default/.opencode/skills/remotion-maps/techniques/maptiler/scripts/prep-geo.mjs +202 -0
  1410. package/templates/default/.opencode/skills/remotion-maps/techniques/static-map/TECHNIQUE.md +37 -0
  1411. package/templates/default/.opencode/skills/remotion-markup/3d.md +86 -0
  1412. package/templates/default/.opencode/skills/remotion-markup/SKILL.md +365 -0
  1413. package/templates/default/.opencode/skills/remotion-markup/agents/openai.yaml +7 -0
  1414. package/templates/default/.opencode/skills/remotion-markup/assets/remotion-icon.png +0 -0
  1415. package/templates/default/.opencode/skills/remotion-markup/audio-visualization.md +198 -0
  1416. package/templates/default/.opencode/skills/remotion-markup/audio.md +171 -0
  1417. package/templates/default/.opencode/skills/remotion-markup/calculate-metadata.md +136 -0
  1418. package/templates/default/.opencode/skills/remotion-markup/compositions.md +117 -0
  1419. package/templates/default/.opencode/skills/remotion-markup/cropping.md +34 -0
  1420. package/templates/default/.opencode/skills/remotion-markup/effects.md +251 -0
  1421. package/templates/default/.opencode/skills/remotion-markup/embedding-videos.md +173 -0
  1422. package/templates/default/.opencode/skills/remotion-markup/ffmpeg.md +38 -0
  1423. package/templates/default/.opencode/skills/remotion-markup/gifs.md +187 -0
  1424. package/templates/default/.opencode/skills/remotion-markup/google-fonts.md +76 -0
  1425. package/templates/default/.opencode/skills/remotion-markup/html-in-canvas.md +128 -0
  1426. package/templates/default/.opencode/skills/remotion-markup/images.md +73 -0
  1427. package/templates/default/.opencode/skills/remotion-markup/light-leaks.md +106 -0
  1428. package/templates/default/.opencode/skills/remotion-markup/local-fonts.md +69 -0
  1429. package/templates/default/.opencode/skills/remotion-markup/lottie.md +73 -0
  1430. package/templates/default/.opencode/skills/remotion-markup/measuring-dom-nodes.md +38 -0
  1431. package/templates/default/.opencode/skills/remotion-markup/measuring-text.md +146 -0
  1432. package/templates/default/.opencode/skills/remotion-markup/multi-scene-video.md +81 -0
  1433. package/templates/default/.opencode/skills/remotion-markup/parameters.md +111 -0
  1434. package/templates/default/.opencode/skills/remotion-markup/remotion-maps/REFERENCE.md +36 -0
  1435. package/templates/default/.opencode/skills/remotion-markup/remotion-maps/agents/openai.yaml +7 -0
  1436. package/templates/default/.opencode/skills/remotion-markup/remotion-maps/assets/remotion-icon.png +0 -0
  1437. package/templates/default/.opencode/skills/remotion-markup/remotion-maps/techniques/cesium/TECHNIQUE.md +89 -0
  1438. package/templates/default/.opencode/skills/remotion-markup/remotion-maps/techniques/cesium/assets/CesiumFlythrough.tsx +284 -0
  1439. package/templates/default/.opencode/skills/remotion-markup/remotion-maps/techniques/cesium/assets/cesium-path.json +299 -0
  1440. package/templates/default/.opencode/skills/remotion-markup/remotion-maps/techniques/cesium/assets/city-path.json +12 -0
  1441. package/templates/default/.opencode/skills/remotion-markup/remotion-maps/techniques/cesium/assets/example-Root.tsx +39 -0
  1442. package/templates/default/.opencode/skills/remotion-markup/remotion-maps/techniques/cesium/assets/flight-path.ts +35 -0
  1443. package/templates/default/.opencode/skills/remotion-markup/remotion-maps/techniques/cesium/assets/sample-river.geojson +215 -0
  1444. package/templates/default/.opencode/skills/remotion-markup/remotion-maps/techniques/cesium/references/3d-data-sources.md +43 -0
  1445. package/templates/default/.opencode/skills/remotion-markup/remotion-maps/techniques/cesium/references/3d-flyover-architecture.md +128 -0
  1446. package/templates/default/.opencode/skills/remotion-markup/remotion-maps/techniques/cesium/references/3d-troubleshooting.md +57 -0
  1447. package/templates/default/.opencode/skills/remotion-markup/remotion-maps/techniques/cesium/scripts/prep-cesium-path.mjs +161 -0
  1448. package/templates/default/.opencode/skills/remotion-markup/remotion-maps/techniques/mapbox/TECHNIQUE.md +449 -0
  1449. package/templates/default/.opencode/skills/remotion-markup/remotion-maps/techniques/mapbox/references/render-stability.md +64 -0
  1450. package/templates/default/.opencode/skills/remotion-markup/remotion-maps/techniques/maplibre/TECHNIQUE.md +465 -0
  1451. package/templates/default/.opencode/skills/remotion-markup/remotion-maps/techniques/maplibre/references/render-stability.md +64 -0
  1452. package/templates/default/.opencode/skills/remotion-markup/remotion-maps/techniques/maptiler/TECHNIQUE.md +80 -0
  1453. package/templates/default/.opencode/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/CountryLabel.tsx +70 -0
  1454. package/templates/default/.opencode/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/MapTilerVectorElement.ts +80 -0
  1455. package/templates/default/.opencode/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/RiverReveal.tsx +363 -0
  1456. package/templates/default/.opencode/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/example-Root.tsx +22 -0
  1457. package/templates/default/.opencode/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/sample-data/country-meta.json +7535 -0
  1458. package/templates/default/.opencode/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/sample-data/yarlung-flow.json +605 -0
  1459. package/templates/default/.opencode/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/tokens.ts +34 -0
  1460. package/templates/default/.opencode/skills/remotion-markup/remotion-maps/techniques/maptiler/references/map-data-sources.md +91 -0
  1461. package/templates/default/.opencode/skills/remotion-markup/remotion-maps/techniques/maptiler/references/map-explainer-architecture.md +129 -0
  1462. package/templates/default/.opencode/skills/remotion-markup/remotion-maps/techniques/maptiler/references/map-geo-prep.md +85 -0
  1463. package/templates/default/.opencode/skills/remotion-markup/remotion-maps/techniques/maptiler/references/render-stability.md +64 -0
  1464. package/templates/default/.opencode/skills/remotion-markup/remotion-maps/techniques/maptiler/scripts/prep-geo.mjs +202 -0
  1465. package/templates/default/.opencode/skills/remotion-markup/remotion-maps/techniques/static-map/TECHNIQUE.md +37 -0
  1466. package/templates/default/.opencode/skills/remotion-markup/sequencing.md +169 -0
  1467. package/templates/default/.opencode/skills/remotion-markup/sfx.md +51 -0
  1468. package/templates/default/.opencode/skills/remotion-markup/silence-detection.md +71 -0
  1469. package/templates/default/.opencode/skills/remotion-markup/text-highlights.md +56 -0
  1470. package/templates/default/.opencode/skills/remotion-markup/timing.md +111 -0
  1471. package/templates/default/.opencode/skills/remotion-markup/transitions.md +239 -0
  1472. package/templates/default/.opencode/skills/remotion-markup/video-editing.md +90 -0
  1473. package/templates/default/.opencode/skills/remotion-markup/voiceover.md +99 -0
  1474. package/templates/default/.opencode/skills/remotion-multimedia/SKILL.md +20 -0
  1475. package/templates/default/.opencode/skills/remotion-multimedia/agents/openai.yaml +7 -0
  1476. package/templates/default/.opencode/skills/remotion-multimedia/assets/remotion-icon.png +0 -0
  1477. package/templates/default/.opencode/skills/remotion-multimedia/get-audio-duration.md +56 -0
  1478. package/templates/default/.opencode/skills/remotion-multimedia/get-video-dimensions.md +66 -0
  1479. package/templates/default/.opencode/skills/remotion-multimedia/get-video-duration.md +58 -0
  1480. package/templates/default/.opencode/skills/remotion-render/SKILL.md +27 -0
  1481. package/templates/default/.opencode/skills/remotion-render/agents/openai.yaml +7 -0
  1482. package/templates/default/.opencode/skills/remotion-render/assets/remotion-icon.png +0 -0
  1483. package/templates/default/.opencode/skills/remotion-render/transparent-videos.md +106 -0
  1484. package/templates/default/.opencode/skills/remotion-saas/SKILL.md +33 -0
  1485. package/templates/default/.opencode/skills/remotion-saas/agents/openai.yaml +7 -0
  1486. package/templates/default/.opencode/skills/remotion-saas/assets/remotion-icon.png +0 -0
  1487. package/templates/default/.opencode/skills/remotion-saas/framework.md +21 -0
  1488. package/templates/default/.opencode/skills/remotion-saas/player.md +33 -0
  1489. package/templates/default/.opencode/skills/remotion-saas/rendering.md +69 -0
  1490. package/templates/default/.opencode/skills/remotion-studio/SKILL.md +24 -0
  1491. package/templates/default/.opencode/skills/remotion-studio/agents/openai.yaml +7 -0
  1492. package/templates/default/.opencode/skills/remotion-studio/assets/remotion-icon.png +0 -0
  1493. package/templates/default/.opencode/skills/remotion-upgrade/SKILL.md +31 -0
  1494. package/templates/default/.opencode/skills/remotion-upgrade/agents/openai.yaml +7 -0
  1495. package/templates/default/.opencode/skills/remotion-upgrade/assets/remotion-icon.png +0 -0
  1496. package/templates/default/.windsurf/skills/remotion-best-practices/SKILL.md +59 -0
  1497. package/templates/default/.windsurf/skills/remotion-best-practices/agents/openai.yaml +7 -0
  1498. package/templates/default/.windsurf/skills/remotion-best-practices/assets/remotion-icon.png +0 -0
  1499. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-captions/REFERENCE.md +36 -0
  1500. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-captions/agents/openai.yaml +7 -0
  1501. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-captions/assets/remotion-icon.png +0 -0
  1502. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-captions/display-captions.md +190 -0
  1503. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-captions/import-srt-captions.md +73 -0
  1504. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-captions/transcribe-captions.md +70 -0
  1505. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-create/REFERENCE.md +68 -0
  1506. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-create/agents/openai.yaml +7 -0
  1507. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-create/assets/remotion-icon.png +0 -0
  1508. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-create/tailwind.md +11 -0
  1509. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-create/video-layout.md +9 -0
  1510. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-docs/REFERENCE.md +46 -0
  1511. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-docs/agents/openai.yaml +7 -0
  1512. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-docs/assets/remotion-icon.png +0 -0
  1513. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-interactivity/REFERENCE.md +247 -0
  1514. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-interactivity/agents/openai.yaml +7 -0
  1515. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-interactivity/assets/remotion-icon.png +0 -0
  1516. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-maps/REFERENCE.md +36 -0
  1517. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-maps/agents/openai.yaml +7 -0
  1518. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-maps/assets/remotion-icon.png +0 -0
  1519. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-maps/techniques/cesium/TECHNIQUE.md +89 -0
  1520. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/CesiumFlythrough.tsx +284 -0
  1521. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/cesium-path.json +299 -0
  1522. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/city-path.json +12 -0
  1523. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/example-Root.tsx +39 -0
  1524. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/flight-path.ts +35 -0
  1525. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-maps/techniques/cesium/assets/sample-river.geojson +215 -0
  1526. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-maps/techniques/cesium/references/3d-data-sources.md +43 -0
  1527. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-maps/techniques/cesium/references/3d-flyover-architecture.md +128 -0
  1528. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-maps/techniques/cesium/references/3d-troubleshooting.md +57 -0
  1529. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-maps/techniques/cesium/scripts/prep-cesium-path.mjs +161 -0
  1530. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-maps/techniques/mapbox/TECHNIQUE.md +449 -0
  1531. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-maps/techniques/mapbox/references/render-stability.md +64 -0
  1532. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-maps/techniques/maplibre/TECHNIQUE.md +465 -0
  1533. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-maps/techniques/maplibre/references/render-stability.md +64 -0
  1534. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-maps/techniques/maptiler/TECHNIQUE.md +80 -0
  1535. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/CountryLabel.tsx +70 -0
  1536. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/MapTilerVectorElement.ts +80 -0
  1537. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/RiverReveal.tsx +363 -0
  1538. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/example-Root.tsx +22 -0
  1539. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/sample-data/country-meta.json +7535 -0
  1540. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/sample-data/yarlung-flow.json +605 -0
  1541. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-maps/techniques/maptiler/assets/tokens.ts +34 -0
  1542. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-maps/techniques/maptiler/references/map-data-sources.md +91 -0
  1543. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-maps/techniques/maptiler/references/map-explainer-architecture.md +129 -0
  1544. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-maps/techniques/maptiler/references/map-geo-prep.md +85 -0
  1545. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-maps/techniques/maptiler/references/render-stability.md +64 -0
  1546. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-maps/techniques/maptiler/scripts/prep-geo.mjs +202 -0
  1547. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-maps/techniques/static-map/TECHNIQUE.md +37 -0
  1548. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/3d.md +86 -0
  1549. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/REFERENCE.md +365 -0
  1550. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/agents/openai.yaml +7 -0
  1551. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/assets/remotion-icon.png +0 -0
  1552. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/audio-visualization.md +198 -0
  1553. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/audio.md +171 -0
  1554. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/calculate-metadata.md +136 -0
  1555. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/compositions.md +117 -0
  1556. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/cropping.md +34 -0
  1557. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/effects.md +251 -0
  1558. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/embedding-videos.md +173 -0
  1559. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/ffmpeg.md +38 -0
  1560. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/gifs.md +187 -0
  1561. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/google-fonts.md +76 -0
  1562. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/html-in-canvas.md +128 -0
  1563. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/images.md +73 -0
  1564. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/light-leaks.md +106 -0
  1565. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/local-fonts.md +69 -0
  1566. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/lottie.md +73 -0
  1567. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/measuring-dom-nodes.md +38 -0
  1568. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/measuring-text.md +146 -0
  1569. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/multi-scene-video.md +81 -0
  1570. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/parameters.md +111 -0
  1571. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/remotion-maps/REFERENCE.md +36 -0
  1572. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/remotion-maps/agents/openai.yaml +7 -0
  1573. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/remotion-maps/assets/remotion-icon.png +0 -0
  1574. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/TECHNIQUE.md +89 -0
  1575. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/CesiumFlythrough.tsx +284 -0
  1576. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/cesium-path.json +299 -0
  1577. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/city-path.json +12 -0
  1578. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/example-Root.tsx +39 -0
  1579. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/flight-path.ts +35 -0
  1580. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/assets/sample-river.geojson +215 -0
  1581. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/references/3d-data-sources.md +43 -0
  1582. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/references/3d-flyover-architecture.md +128 -0
  1583. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/references/3d-troubleshooting.md +57 -0
  1584. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/cesium/scripts/prep-cesium-path.mjs +161 -0
  1585. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/mapbox/TECHNIQUE.md +449 -0
  1586. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/mapbox/references/render-stability.md +64 -0
  1587. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maplibre/TECHNIQUE.md +465 -0
  1588. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maplibre/references/render-stability.md +64 -0
  1589. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/TECHNIQUE.md +80 -0
  1590. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/CountryLabel.tsx +70 -0
  1591. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/MapTilerVectorElement.ts +80 -0
  1592. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/RiverReveal.tsx +363 -0
  1593. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/example-Root.tsx +22 -0
  1594. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/sample-data/country-meta.json +7535 -0
  1595. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/sample-data/yarlung-flow.json +605 -0
  1596. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/assets/tokens.ts +34 -0
  1597. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/references/map-data-sources.md +91 -0
  1598. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/references/map-explainer-architecture.md +129 -0
  1599. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/references/map-geo-prep.md +85 -0
  1600. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/references/render-stability.md +64 -0
  1601. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maptiler/scripts/prep-geo.mjs +202 -0
  1602. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/static-map/TECHNIQUE.md +37 -0
  1603. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/sequencing.md +169 -0
  1604. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/sfx.md +51 -0
  1605. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/silence-detection.md +71 -0
  1606. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/text-highlights.md +56 -0
  1607. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/timing.md +111 -0
  1608. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/transitions.md +239 -0
  1609. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/video-editing.md +90 -0
  1610. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-markup/voiceover.md +99 -0
  1611. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-multimedia/REFERENCE.md +20 -0
  1612. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-multimedia/agents/openai.yaml +7 -0
  1613. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-multimedia/assets/remotion-icon.png +0 -0
  1614. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-multimedia/get-audio-duration.md +56 -0
  1615. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-multimedia/get-video-dimensions.md +66 -0
  1616. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-multimedia/get-video-duration.md +58 -0
  1617. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-render/REFERENCE.md +27 -0
  1618. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-render/agents/openai.yaml +7 -0
  1619. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-render/assets/remotion-icon.png +0 -0
  1620. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-render/transparent-videos.md +106 -0
  1621. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-saas/REFERENCE.md +33 -0
  1622. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-saas/agents/openai.yaml +7 -0
  1623. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-saas/assets/remotion-icon.png +0 -0
  1624. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-saas/framework.md +21 -0
  1625. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-saas/player.md +33 -0
  1626. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-saas/rendering.md +69 -0
  1627. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-studio/REFERENCE.md +24 -0
  1628. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-studio/agents/openai.yaml +7 -0
  1629. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-studio/assets/remotion-icon.png +0 -0
  1630. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-upgrade/REFERENCE.md +31 -0
  1631. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-upgrade/agents/openai.yaml +7 -0
  1632. package/templates/default/.windsurf/skills/remotion-best-practices/remotion-upgrade/assets/remotion-icon.png +0 -0
  1633. package/templates/default/.windsurf/skills/remotion-captions/SKILL.md +36 -0
  1634. package/templates/default/.windsurf/skills/remotion-captions/agents/openai.yaml +7 -0
  1635. package/templates/default/.windsurf/skills/remotion-captions/assets/remotion-icon.png +0 -0
  1636. package/templates/default/.windsurf/skills/remotion-captions/display-captions.md +190 -0
  1637. package/templates/default/.windsurf/skills/remotion-captions/import-srt-captions.md +73 -0
  1638. package/templates/default/.windsurf/skills/remotion-captions/transcribe-captions.md +70 -0
  1639. package/templates/default/.windsurf/skills/remotion-create/SKILL.md +68 -0
  1640. package/templates/default/.windsurf/skills/remotion-create/agents/openai.yaml +7 -0
  1641. package/templates/default/.windsurf/skills/remotion-create/assets/remotion-icon.png +0 -0
  1642. package/templates/default/.windsurf/skills/remotion-create/tailwind.md +11 -0
  1643. package/templates/default/.windsurf/skills/remotion-create/video-layout.md +9 -0
  1644. package/templates/default/.windsurf/skills/remotion-docs/SKILL.md +46 -0
  1645. package/templates/default/.windsurf/skills/remotion-docs/agents/openai.yaml +7 -0
  1646. package/templates/default/.windsurf/skills/remotion-docs/assets/remotion-icon.png +0 -0
  1647. package/templates/default/.windsurf/skills/remotion-interactivity/SKILL.md +247 -0
  1648. package/templates/default/.windsurf/skills/remotion-interactivity/agents/openai.yaml +7 -0
  1649. package/templates/default/.windsurf/skills/remotion-interactivity/assets/remotion-icon.png +0 -0
  1650. package/templates/default/.windsurf/skills/remotion-maps/SKILL.md +36 -0
  1651. package/templates/default/.windsurf/skills/remotion-maps/agents/openai.yaml +7 -0
  1652. package/templates/default/.windsurf/skills/remotion-maps/assets/remotion-icon.png +0 -0
  1653. package/templates/default/.windsurf/skills/remotion-maps/techniques/cesium/TECHNIQUE.md +89 -0
  1654. package/templates/default/.windsurf/skills/remotion-maps/techniques/cesium/assets/CesiumFlythrough.tsx +284 -0
  1655. package/templates/default/.windsurf/skills/remotion-maps/techniques/cesium/assets/cesium-path.json +299 -0
  1656. package/templates/default/.windsurf/skills/remotion-maps/techniques/cesium/assets/city-path.json +12 -0
  1657. package/templates/default/.windsurf/skills/remotion-maps/techniques/cesium/assets/example-Root.tsx +39 -0
  1658. package/templates/default/.windsurf/skills/remotion-maps/techniques/cesium/assets/flight-path.ts +35 -0
  1659. package/templates/default/.windsurf/skills/remotion-maps/techniques/cesium/assets/sample-river.geojson +215 -0
  1660. package/templates/default/.windsurf/skills/remotion-maps/techniques/cesium/references/3d-data-sources.md +43 -0
  1661. package/templates/default/.windsurf/skills/remotion-maps/techniques/cesium/references/3d-flyover-architecture.md +128 -0
  1662. package/templates/default/.windsurf/skills/remotion-maps/techniques/cesium/references/3d-troubleshooting.md +57 -0
  1663. package/templates/default/.windsurf/skills/remotion-maps/techniques/cesium/scripts/prep-cesium-path.mjs +161 -0
  1664. package/templates/default/.windsurf/skills/remotion-maps/techniques/mapbox/TECHNIQUE.md +449 -0
  1665. package/templates/default/.windsurf/skills/remotion-maps/techniques/mapbox/references/render-stability.md +64 -0
  1666. package/templates/default/.windsurf/skills/remotion-maps/techniques/maplibre/TECHNIQUE.md +465 -0
  1667. package/templates/default/.windsurf/skills/remotion-maps/techniques/maplibre/references/render-stability.md +64 -0
  1668. package/templates/default/.windsurf/skills/remotion-maps/techniques/maptiler/TECHNIQUE.md +80 -0
  1669. package/templates/default/.windsurf/skills/remotion-maps/techniques/maptiler/assets/CountryLabel.tsx +70 -0
  1670. package/templates/default/.windsurf/skills/remotion-maps/techniques/maptiler/assets/MapTilerVectorElement.ts +80 -0
  1671. package/templates/default/.windsurf/skills/remotion-maps/techniques/maptiler/assets/RiverReveal.tsx +363 -0
  1672. package/templates/default/.windsurf/skills/remotion-maps/techniques/maptiler/assets/example-Root.tsx +22 -0
  1673. package/templates/default/.windsurf/skills/remotion-maps/techniques/maptiler/assets/sample-data/country-meta.json +7535 -0
  1674. package/templates/default/.windsurf/skills/remotion-maps/techniques/maptiler/assets/sample-data/yarlung-flow.json +605 -0
  1675. package/templates/default/.windsurf/skills/remotion-maps/techniques/maptiler/assets/tokens.ts +34 -0
  1676. package/templates/default/.windsurf/skills/remotion-maps/techniques/maptiler/references/map-data-sources.md +91 -0
  1677. package/templates/default/.windsurf/skills/remotion-maps/techniques/maptiler/references/map-explainer-architecture.md +129 -0
  1678. package/templates/default/.windsurf/skills/remotion-maps/techniques/maptiler/references/map-geo-prep.md +85 -0
  1679. package/templates/default/.windsurf/skills/remotion-maps/techniques/maptiler/references/render-stability.md +64 -0
  1680. package/templates/default/.windsurf/skills/remotion-maps/techniques/maptiler/scripts/prep-geo.mjs +202 -0
  1681. package/templates/default/.windsurf/skills/remotion-maps/techniques/static-map/TECHNIQUE.md +37 -0
  1682. package/templates/default/.windsurf/skills/remotion-markup/3d.md +86 -0
  1683. package/templates/default/.windsurf/skills/remotion-markup/SKILL.md +365 -0
  1684. package/templates/default/.windsurf/skills/remotion-markup/agents/openai.yaml +7 -0
  1685. package/templates/default/.windsurf/skills/remotion-markup/assets/remotion-icon.png +0 -0
  1686. package/templates/default/.windsurf/skills/remotion-markup/audio-visualization.md +198 -0
  1687. package/templates/default/.windsurf/skills/remotion-markup/audio.md +171 -0
  1688. package/templates/default/.windsurf/skills/remotion-markup/calculate-metadata.md +136 -0
  1689. package/templates/default/.windsurf/skills/remotion-markup/compositions.md +117 -0
  1690. package/templates/default/.windsurf/skills/remotion-markup/cropping.md +34 -0
  1691. package/templates/default/.windsurf/skills/remotion-markup/effects.md +251 -0
  1692. package/templates/default/.windsurf/skills/remotion-markup/embedding-videos.md +173 -0
  1693. package/templates/default/.windsurf/skills/remotion-markup/ffmpeg.md +38 -0
  1694. package/templates/default/.windsurf/skills/remotion-markup/gifs.md +187 -0
  1695. package/templates/default/.windsurf/skills/remotion-markup/google-fonts.md +76 -0
  1696. package/templates/default/.windsurf/skills/remotion-markup/html-in-canvas.md +128 -0
  1697. package/templates/default/.windsurf/skills/remotion-markup/images.md +73 -0
  1698. package/templates/default/.windsurf/skills/remotion-markup/light-leaks.md +106 -0
  1699. package/templates/default/.windsurf/skills/remotion-markup/local-fonts.md +69 -0
  1700. package/templates/default/.windsurf/skills/remotion-markup/lottie.md +73 -0
  1701. package/templates/default/.windsurf/skills/remotion-markup/measuring-dom-nodes.md +38 -0
  1702. package/templates/default/.windsurf/skills/remotion-markup/measuring-text.md +146 -0
  1703. package/templates/default/.windsurf/skills/remotion-markup/multi-scene-video.md +81 -0
  1704. package/templates/default/.windsurf/skills/remotion-markup/parameters.md +111 -0
  1705. package/templates/default/.windsurf/skills/remotion-markup/remotion-maps/REFERENCE.md +36 -0
  1706. package/templates/default/.windsurf/skills/remotion-markup/remotion-maps/agents/openai.yaml +7 -0
  1707. package/templates/default/.windsurf/skills/remotion-markup/remotion-maps/assets/remotion-icon.png +0 -0
  1708. package/templates/default/.windsurf/skills/remotion-markup/remotion-maps/techniques/cesium/TECHNIQUE.md +89 -0
  1709. package/templates/default/.windsurf/skills/remotion-markup/remotion-maps/techniques/cesium/assets/CesiumFlythrough.tsx +284 -0
  1710. package/templates/default/.windsurf/skills/remotion-markup/remotion-maps/techniques/cesium/assets/cesium-path.json +299 -0
  1711. package/templates/default/.windsurf/skills/remotion-markup/remotion-maps/techniques/cesium/assets/city-path.json +12 -0
  1712. package/templates/default/.windsurf/skills/remotion-markup/remotion-maps/techniques/cesium/assets/example-Root.tsx +39 -0
  1713. package/templates/default/.windsurf/skills/remotion-markup/remotion-maps/techniques/cesium/assets/flight-path.ts +35 -0
  1714. package/templates/default/.windsurf/skills/remotion-markup/remotion-maps/techniques/cesium/assets/sample-river.geojson +215 -0
  1715. package/templates/default/.windsurf/skills/remotion-markup/remotion-maps/techniques/cesium/references/3d-data-sources.md +43 -0
  1716. package/templates/default/.windsurf/skills/remotion-markup/remotion-maps/techniques/cesium/references/3d-flyover-architecture.md +128 -0
  1717. package/templates/default/.windsurf/skills/remotion-markup/remotion-maps/techniques/cesium/references/3d-troubleshooting.md +57 -0
  1718. package/templates/default/.windsurf/skills/remotion-markup/remotion-maps/techniques/cesium/scripts/prep-cesium-path.mjs +161 -0
  1719. package/templates/default/.windsurf/skills/remotion-markup/remotion-maps/techniques/mapbox/TECHNIQUE.md +449 -0
  1720. package/templates/default/.windsurf/skills/remotion-markup/remotion-maps/techniques/mapbox/references/render-stability.md +64 -0
  1721. package/templates/default/.windsurf/skills/remotion-markup/remotion-maps/techniques/maplibre/TECHNIQUE.md +465 -0
  1722. package/templates/default/.windsurf/skills/remotion-markup/remotion-maps/techniques/maplibre/references/render-stability.md +64 -0
  1723. package/templates/default/.windsurf/skills/remotion-markup/remotion-maps/techniques/maptiler/TECHNIQUE.md +80 -0
  1724. package/templates/default/.windsurf/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/CountryLabel.tsx +70 -0
  1725. package/templates/default/.windsurf/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/MapTilerVectorElement.ts +80 -0
  1726. package/templates/default/.windsurf/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/RiverReveal.tsx +363 -0
  1727. package/templates/default/.windsurf/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/example-Root.tsx +22 -0
  1728. package/templates/default/.windsurf/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/sample-data/country-meta.json +7535 -0
  1729. package/templates/default/.windsurf/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/sample-data/yarlung-flow.json +605 -0
  1730. package/templates/default/.windsurf/skills/remotion-markup/remotion-maps/techniques/maptiler/assets/tokens.ts +34 -0
  1731. package/templates/default/.windsurf/skills/remotion-markup/remotion-maps/techniques/maptiler/references/map-data-sources.md +91 -0
  1732. package/templates/default/.windsurf/skills/remotion-markup/remotion-maps/techniques/maptiler/references/map-explainer-architecture.md +129 -0
  1733. package/templates/default/.windsurf/skills/remotion-markup/remotion-maps/techniques/maptiler/references/map-geo-prep.md +85 -0
  1734. package/templates/default/.windsurf/skills/remotion-markup/remotion-maps/techniques/maptiler/references/render-stability.md +64 -0
  1735. package/templates/default/.windsurf/skills/remotion-markup/remotion-maps/techniques/maptiler/scripts/prep-geo.mjs +202 -0
  1736. package/templates/default/.windsurf/skills/remotion-markup/remotion-maps/techniques/static-map/TECHNIQUE.md +37 -0
  1737. package/templates/default/.windsurf/skills/remotion-markup/sequencing.md +169 -0
  1738. package/templates/default/.windsurf/skills/remotion-markup/sfx.md +51 -0
  1739. package/templates/default/.windsurf/skills/remotion-markup/silence-detection.md +71 -0
  1740. package/templates/default/.windsurf/skills/remotion-markup/text-highlights.md +56 -0
  1741. package/templates/default/.windsurf/skills/remotion-markup/timing.md +111 -0
  1742. package/templates/default/.windsurf/skills/remotion-markup/transitions.md +239 -0
  1743. package/templates/default/.windsurf/skills/remotion-markup/video-editing.md +90 -0
  1744. package/templates/default/.windsurf/skills/remotion-markup/voiceover.md +99 -0
  1745. package/templates/default/.windsurf/skills/remotion-multimedia/SKILL.md +20 -0
  1746. package/templates/default/.windsurf/skills/remotion-multimedia/agents/openai.yaml +7 -0
  1747. package/templates/default/.windsurf/skills/remotion-multimedia/assets/remotion-icon.png +0 -0
  1748. package/templates/default/.windsurf/skills/remotion-multimedia/get-audio-duration.md +56 -0
  1749. package/templates/default/.windsurf/skills/remotion-multimedia/get-video-dimensions.md +66 -0
  1750. package/templates/default/.windsurf/skills/remotion-multimedia/get-video-duration.md +58 -0
  1751. package/templates/default/.windsurf/skills/remotion-render/SKILL.md +27 -0
  1752. package/templates/default/.windsurf/skills/remotion-render/agents/openai.yaml +7 -0
  1753. package/templates/default/.windsurf/skills/remotion-render/assets/remotion-icon.png +0 -0
  1754. package/templates/default/.windsurf/skills/remotion-render/transparent-videos.md +106 -0
  1755. package/templates/default/.windsurf/skills/remotion-saas/SKILL.md +33 -0
  1756. package/templates/default/.windsurf/skills/remotion-saas/agents/openai.yaml +7 -0
  1757. package/templates/default/.windsurf/skills/remotion-saas/assets/remotion-icon.png +0 -0
  1758. package/templates/default/.windsurf/skills/remotion-saas/framework.md +21 -0
  1759. package/templates/default/.windsurf/skills/remotion-saas/player.md +33 -0
  1760. package/templates/default/.windsurf/skills/remotion-saas/rendering.md +69 -0
  1761. package/templates/default/.windsurf/skills/remotion-studio/SKILL.md +24 -0
  1762. package/templates/default/.windsurf/skills/remotion-studio/agents/openai.yaml +7 -0
  1763. package/templates/default/.windsurf/skills/remotion-studio/assets/remotion-icon.png +0 -0
  1764. package/templates/default/.windsurf/skills/remotion-upgrade/SKILL.md +31 -0
  1765. package/templates/default/.windsurf/skills/remotion-upgrade/agents/openai.yaml +7 -0
  1766. package/templates/default/.windsurf/skills/remotion-upgrade/assets/remotion-icon.png +0 -0
  1767. package/templates/default/AGENTS.md +61 -0
  1768. package/templates/default/CLAUDE.md +49 -8
  1769. package/templates/default/openvidstudio-core/package.json +16 -12
  1770. package/templates/default/openvidstudio-core/scripts/gen-fonts.sh +31 -0
  1771. package/templates/default/openvidstudio-core/scripts/gen-sfx.sh +2 -20
  1772. package/templates/default/openvidstudio-core/src/ChecklistPanel.tsx +2 -5
  1773. package/templates/default/openvidstudio-core/src/CinematicScene.tsx +14 -6
  1774. package/templates/default/openvidstudio-core/src/CursorActor.tsx +59 -15
  1775. package/templates/default/openvidstudio-core/src/DirectedShot.tsx +294 -0
  1776. package/templates/default/openvidstudio-core/src/KineticText.tsx +84 -17
  1777. package/templates/default/openvidstudio-core/src/LayeredShot.tsx +80 -0
  1778. package/templates/default/openvidstudio-core/src/RepoCta.tsx +21 -15
  1779. package/templates/default/openvidstudio-core/src/TerminalReplay.tsx +2 -5
  1780. package/templates/default/openvidstudio-core/src/TransitionOverlay.tsx +194 -0
  1781. package/templates/default/openvidstudio-core/src/atmosphere.tsx +109 -0
  1782. package/templates/default/openvidstudio-core/src/camera.tsx +72 -12
  1783. package/templates/default/openvidstudio-core/src/designSystem.ts +179 -0
  1784. package/templates/default/openvidstudio-core/src/handheld.tsx +116 -0
  1785. package/templates/default/openvidstudio-core/src/index.ts +69 -7
  1786. package/templates/default/openvidstudio-core/src/kinetic.tsx +152 -0
  1787. package/templates/default/openvidstudio-core/src/localFonts.ts +67 -0
  1788. package/templates/default/openvidstudio-core/src/motion.ts +6 -0
  1789. package/templates/default/openvidstudio-core/src/motionBlur.tsx +35 -0
  1790. package/templates/default/openvidstudio-core/src/musicClock.tsx +171 -0
  1791. package/templates/default/openvidstudio-core/src/narrationWords.tsx +85 -0
  1792. package/templates/default/openvidstudio-core/src/panels.tsx +367 -0
  1793. package/templates/default/openvidstudio-core/src/pixel.tsx +285 -0
  1794. package/templates/default/openvidstudio-core/src/sfx.tsx +77 -30
  1795. package/templates/default/openvidstudio-core/src/shots.ts +114 -0
  1796. package/templates/default/openvidstudio-core/src/tokens.ts +51 -2
  1797. package/templates/default/openvidstudio-stem/package.json +41 -0
  1798. package/templates/default/openvidstudio-stem/public/fonts/SPACE-GROTESK-LICENSE.txt +93 -0
  1799. package/templates/default/openvidstudio-stem/public/fonts/space-grotesk-latin-500-normal.woff2 +0 -0
  1800. package/templates/default/openvidstudio-stem/public/fonts/space-grotesk-latin-700-normal.woff2 +0 -0
  1801. package/templates/default/openvidstudio-stem/public/mathjax/MATHJAX-LICENSE.txt +202 -0
  1802. package/templates/default/openvidstudio-stem/public/mathjax/fira/svg/dynamic/accents-other.js +1 -0
  1803. package/templates/default/openvidstudio-stem/public/mathjax/fira/svg/dynamic/accents.js +1 -0
  1804. package/templates/default/openvidstudio-stem/public/mathjax/fira/svg/dynamic/arrows.js +1 -0
  1805. package/templates/default/openvidstudio-stem/public/mathjax/fira/svg/dynamic/calligraphic.js +1 -0
  1806. package/templates/default/openvidstudio-stem/public/mathjax/fira/svg/dynamic/cyrillic.js +1 -0
  1807. package/templates/default/openvidstudio-stem/public/mathjax/fira/svg/dynamic/double-struck.js +1 -0
  1808. package/templates/default/openvidstudio-stem/public/mathjax/fira/svg/dynamic/fraktur.js +1 -0
  1809. package/templates/default/openvidstudio-stem/public/mathjax/fira/svg/dynamic/greek.js +1 -0
  1810. package/templates/default/openvidstudio-stem/public/mathjax/fira/svg/dynamic/latin-b.js +1 -0
  1811. package/templates/default/openvidstudio-stem/public/mathjax/fira/svg/dynamic/latin-bi.js +1 -0
  1812. package/templates/default/openvidstudio-stem/public/mathjax/fira/svg/dynamic/latin-i.js +1 -0
  1813. package/templates/default/openvidstudio-stem/public/mathjax/fira/svg/dynamic/latin-m.js +1 -0
  1814. package/templates/default/openvidstudio-stem/public/mathjax/fira/svg/dynamic/latin.js +1 -0
  1815. package/templates/default/openvidstudio-stem/public/mathjax/fira/svg/dynamic/math-other.js +1 -0
  1816. package/templates/default/openvidstudio-stem/public/mathjax/fira/svg/dynamic/monospace.js +1 -0
  1817. package/templates/default/openvidstudio-stem/public/mathjax/fira/svg/dynamic/phonetics.js +1 -0
  1818. package/templates/default/openvidstudio-stem/public/mathjax/fira/svg/dynamic/sans-serif.js +1 -0
  1819. package/templates/default/openvidstudio-stem/public/mathjax/fira/svg/dynamic/script.js +1 -0
  1820. package/templates/default/openvidstudio-stem/public/mathjax/fira/svg/dynamic/shapes.js +1 -0
  1821. package/templates/default/openvidstudio-stem/public/mathjax/fira/svg/dynamic/stretchy.js +1 -0
  1822. package/templates/default/openvidstudio-stem/public/mathjax/fira/svg/dynamic/symbols-other.js +1 -0
  1823. package/templates/default/openvidstudio-stem/public/mathjax/fira/svg/dynamic/symbols.js +1 -0
  1824. package/templates/default/openvidstudio-stem/public/mathjax/fira/svg/dynamic/up-int.js +1 -0
  1825. package/templates/default/openvidstudio-stem/public/mathjax/fira/svg/dynamic/variants.js +1 -0
  1826. package/templates/default/openvidstudio-stem/public/mathjax/fira/svg.js +1 -0
  1827. package/templates/default/openvidstudio-stem/public/mathjax/tex-svg-nofont.js +1 -0
  1828. package/templates/default/openvidstudio-stem/src/ArrayViz.tsx +118 -0
  1829. package/templates/default/openvidstudio-stem/src/Equation.tsx +132 -0
  1830. package/templates/default/openvidstudio-stem/src/FreeBody.tsx +152 -0
  1831. package/templates/default/openvidstudio-stem/src/Nova.tsx +104 -0
  1832. package/templates/default/openvidstudio-stem/src/Spark.tsx +69 -0
  1833. package/templates/default/openvidstudio-stem/src/designSystem.ts +76 -0
  1834. package/templates/default/openvidstudio-stem/src/glow.tsx +52 -0
  1835. package/templates/default/openvidstudio-stem/src/graph.tsx +331 -0
  1836. package/templates/default/openvidstudio-stem/src/index.ts +40 -0
  1837. package/templates/default/openvidstudio-stem/src/localFonts.ts +40 -0
  1838. package/templates/default/openvidstudio-stem/src/mathjax.ts +79 -0
  1839. package/templates/default/openvidstudio-stem/src/paths.ts +148 -0
  1840. package/templates/default/output/.gitignore +3 -0
  1841. package/templates/default/output/README.md +9 -0
  1842. package/templates/default/package.json +19 -13
  1843. package/templates/default/public/fonts/inter-latin-400-normal.woff2 +0 -0
  1844. package/templates/default/public/fonts/inter-latin-500-normal.woff2 +0 -0
  1845. package/templates/default/public/fonts/inter-latin-700-normal.woff2 +0 -0
  1846. package/templates/default/public/fonts/inter-latin-800-normal.woff2 +0 -0
  1847. package/templates/default/public/fonts/inter-latin-900-normal.woff2 +0 -0
  1848. package/templates/default/public/fonts/jetbrains-mono-latin-400-normal.woff2 +0 -0
  1849. package/templates/default/public/fonts/jetbrains-mono-latin-700-normal.woff2 +0 -0
  1850. package/templates/default/public/imported_audios/README.md +14 -0
  1851. package/templates/default/public/sfx/CREDITS.md +49 -0
  1852. package/templates/default/public/sfx/bong.wav +0 -0
  1853. package/templates/default/public/sfx/click.wav +0 -0
  1854. package/templates/default/public/sfx/click_soft.wav +0 -0
  1855. package/templates/default/public/sfx/drop.wav +0 -0
  1856. package/templates/default/public/sfx/typing-effect.mp3 +0 -0
  1857. package/templates/default/scripts/visual-regression.mjs +69 -0
  1858. package/templates/default/src/PreflightBenchmark.tsx +49 -0
  1859. package/templates/default/public/sfx/key_a.wav +0 -0
  1860. package/templates/default/public/sfx/key_b.wav +0 -0
  1861. package/templates/default/public/sfx/key_c.wav +0 -0
  1862. package/templates/default/public/sfx/key_enter.wav +0 -0
@@ -0,0 +1,178 @@
1
+ /**
2
+ * Per-beat render caching, so changing one caption does not cost a full re-render.
3
+ *
4
+ * diff_beats can already tell you that exactly one beat changed. Until now the only
5
+ * available response was render_video, which re-renders the whole composition, because
6
+ * Remotion has no partial-render mode. On a five minute video that is 9000 frames for a
7
+ * one word edit, which is slow enough that nobody edits.
8
+ *
9
+ * The way around it is that Remotion does support rendering a frame RANGE. A beat owns a
10
+ * contiguous range (`start` to `start + duration - 1`), so each beat can be rendered to
11
+ * its own segment and the segments concatenated with ffmpeg's concat demuxer under stream
12
+ * copy: no re-encode, no generation loss, and the result is the same bytes the encoder
13
+ * would have produced for that range in one pass.
14
+ *
15
+ * What makes it safe is hashing the real inputs. A segment is reused only when the beat's
16
+ * own JSON, its scene source, every artifact it references, its narration file, and the
17
+ * project-wide inputs that affect every frame (brand tokens, the generated composition,
18
+ * the music bed) are all byte-identical to when that segment was rendered. Anything this
19
+ * cannot see is a correctness bug, so the hash deliberately errs toward including too much:
20
+ * a false cache miss costs one segment render, a false cache hit ships a wrong video.
21
+ */
22
+ export declare const CACHE_VERSION = 2;
23
+ export interface CachedSegment {
24
+ hash: string;
25
+ /** Project-relative path, so a cache written on one machine is readable on another. */
26
+ file: string;
27
+ start: number;
28
+ duration: number;
29
+ renderedAt: string;
30
+ }
31
+ export interface RenderCacheManifest {
32
+ version: number;
33
+ compositionId: string;
34
+ /** Render settings that change every frame, so a draft segment is never reused for a final. */
35
+ renderKey: string;
36
+ segments: Record<string, CachedSegment>;
37
+ }
38
+ export interface BeatLike {
39
+ id: string;
40
+ start: number;
41
+ duration: number;
42
+ visual?: {
43
+ assetPath?: string;
44
+ };
45
+ artifacts?: Record<string, string | undefined>;
46
+ }
47
+ /**
48
+ * Hash of a file's contents, or a fixed sentinel when it does not exist.
49
+ *
50
+ * Absence is hashed rather than skipped: a beat whose screenshot was deleted has genuinely
51
+ * changed, and skipping a missing file would make the deletion invisible to the cache.
52
+ */
53
+ export declare function hashFile(absPath: string): string;
54
+ /**
55
+ * Inputs shared by every beat: change any of them and no segment is reusable.
56
+ *
57
+ * brand.ts is here because applyBrand mutates the token objects every scene reads, so a
58
+ * brand change repaints frames whose own scene file never moved. The generated composition
59
+ * is here because it owns the audio layout and the sequence boundaries.
60
+ */
61
+ export declare function globalInputsHash(projectRoot: string, videoName: string, compositionId: string): string;
62
+ /** Every file on disk a single beat's frames are drawn from. */
63
+ export declare function beatInputFiles(projectRoot: string, videoName: string, beat: BeatLike): string[];
64
+ export declare function beatHash(projectRoot: string, videoName: string, beat: BeatLike, globalHash: string): string;
65
+ /**
66
+ * Settings that change the pixels of every frame. Kept separate from the per-beat hash so
67
+ * a switch between draft and final invalidates the whole cache in one comparison rather
68
+ * than looking like every beat changed at once.
69
+ */
70
+ export declare function renderKey(opts: {
71
+ draft?: boolean;
72
+ width: number;
73
+ height: number;
74
+ fps: number;
75
+ }): string;
76
+ export declare function cachePath(projectRoot: string, videoName: string): string;
77
+ export declare function segmentsDir(projectRoot: string, videoName: string): string;
78
+ export declare function readCache(projectRoot: string, videoName: string): RenderCacheManifest | null;
79
+ export declare function writeCache(projectRoot: string, videoName: string, manifest: RenderCacheManifest): void;
80
+ export interface SegmentPlan {
81
+ beatId: string;
82
+ hash: string;
83
+ /** Project-relative. */
84
+ file: string;
85
+ firstFrame: number;
86
+ lastFrame: number;
87
+ reused: boolean;
88
+ }
89
+ /**
90
+ * Decides, per beat, whether the existing segment can be reused.
91
+ *
92
+ * A cache entry is trusted only if the hash matches, the render settings match, AND the
93
+ * segment file is still on disk: a manifest that outlived its own output is the commonest
94
+ * way a cache lies.
95
+ */
96
+ export declare function planSegments(opts: {
97
+ projectRoot: string;
98
+ videoName: string;
99
+ compositionId: string;
100
+ beats: BeatLike[];
101
+ renderKey: string;
102
+ cache: RenderCacheManifest | null;
103
+ }): {
104
+ plan: SegmentPlan[];
105
+ globalHash: string;
106
+ };
107
+ /**
108
+ * Remotion's frame-range render, for one beat.
109
+ *
110
+ * `--enforce-audio-track` is not optional here. A beat with no narration renders with no
111
+ * audio stream at all, and the concat demuxer under stream copy cannot join a segment that
112
+ * has an audio track to one that does not: it either fails or silently drops the audio for
113
+ * the rest of the file. Forcing a silent track onto every segment costs nothing and makes
114
+ * the streams uniform, which is the precondition for copying rather than re-encoding.
115
+ */
116
+ export declare function buildSegmentRenderArgs(compositionId: string, outPath: string, firstFrame: number, lastFrame: number, opts?: {
117
+ draft?: boolean;
118
+ concurrency?: number;
119
+ browserExecutable?: string;
120
+ }): {
121
+ command: string;
122
+ args: string[];
123
+ };
124
+ /**
125
+ * concat demuxer list. Paths are single-quoted with embedded quotes escaped per ffmpeg's
126
+ * own rules, and written relative to the list file's directory so the list is portable.
127
+ */
128
+ export declare function buildConcatList(segmentFiles: string[]): string;
129
+ export declare function buildConcatArgs(listPath: string, outPath: string): string[];
130
+ /**
131
+ * Sample-exact audio join for the incremental render's concat step.
132
+ *
133
+ * Each per-beat segment is rendered separately and its AAC track ends up a little longer
134
+ * than its video: the encoder pads to a full AAC frame (1024 samples), typically tens of ms
135
+ * per segment. Stream-copying every segment's audio track under the same concat demuxer that
136
+ * joins the video stacks that padding beat over beat, so a 16-beat video can end with its
137
+ * audio visibly behind its video even though every individual segment looks fine in
138
+ * isolation. The fix joins video and audio through two different paths: video stays a
139
+ * gapless stream copy (no per-segment padding on the video side), audio is decoded to raw
140
+ * PCM per segment, trimmed or padded to exactly `duration/fps` seconds, concatenated as raw
141
+ * samples, and encoded to AAC once at the end -- so the only rounding that can happen is
142
+ * inside a single final encode, not once per beat.
143
+ */
144
+ export declare const AUDIO_SAMPLE_RATE = 48000;
145
+ export declare const AUDIO_CHANNELS = 2;
146
+ export declare function pcmFileName(beatId: string): string;
147
+ /** ffmpeg args to decode one segment's audio to raw interleaved s16le PCM. */
148
+ export declare function buildExtractPcmArgs(segmentFile: string, pcmOutPath: string): string[];
149
+ /** Exact PCM byte length for a beat of `durationFrames` at `fps`, at the canonical rate above. */
150
+ export declare function expectedPcmBytes(durationFrames: number, fps: number): number;
151
+ /**
152
+ * Trims or zero-pads (silence) a PCM buffer to exactly `expectedBytes`. Pure and
153
+ * frame-count-based, so this is what makes the join sample-exact rather than
154
+ * "close, rounded to whatever the codec happened to produce."
155
+ */
156
+ export declare function fitPcmLength(buf: Buffer, expectedBytes: number): Buffer;
157
+ /**
158
+ * Strips a segment's audio into its own fresh container.
159
+ *
160
+ * This has to happen before concatenation, not as an `-an` flag on the concat step itself:
161
+ * each beat's segment is muxed with audio deliberately longer than its video (the padding
162
+ * this whole join exists to defeat), so the segment's own container-level duration reflects
163
+ * that longer audio track, not the true video length. The concat demuxer trusts each input's
164
+ * container duration to place the next file's start, so concatenating the original segments
165
+ * with `-an` still leaves a gap at every join equal to that segment's audio overrun -- the
166
+ * video track ends up gapful, just silent instead of desynced. Re-muxing video-only into its
167
+ * own container first drops that stale duration along with the audio, so the isolated file's
168
+ * own duration is the true one and concatenation is actually gapless.
169
+ */
170
+ export declare function buildIsolateVideoArgs(segmentFile: string, videoOnlyOutPath: string): string[];
171
+ export declare function videoOnlyFileName(beatId: string): string;
172
+ /** Video-only stream copy over already-isolated per-segment files: gapless picture track. */
173
+ export declare function buildVideoOnlyConcatArgs(listPath: string, outPath: string): string[];
174
+ /**
175
+ * Final mux: the gapless video-only file plus one raw-PCM audio input (already the exact
176
+ * concatenation of every beat's trimmed/padded PCM), encoded to AAC exactly once.
177
+ */
178
+ export declare function buildFinalMuxArgs(videoOnlyPath: string, concatPcmPath: string, outPath: string): string[];
@@ -0,0 +1,371 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.AUDIO_CHANNELS = exports.AUDIO_SAMPLE_RATE = exports.CACHE_VERSION = void 0;
37
+ exports.hashFile = hashFile;
38
+ exports.globalInputsHash = globalInputsHash;
39
+ exports.beatInputFiles = beatInputFiles;
40
+ exports.beatHash = beatHash;
41
+ exports.renderKey = renderKey;
42
+ exports.cachePath = cachePath;
43
+ exports.segmentsDir = segmentsDir;
44
+ exports.readCache = readCache;
45
+ exports.writeCache = writeCache;
46
+ exports.planSegments = planSegments;
47
+ exports.buildSegmentRenderArgs = buildSegmentRenderArgs;
48
+ exports.buildConcatList = buildConcatList;
49
+ exports.buildConcatArgs = buildConcatArgs;
50
+ exports.pcmFileName = pcmFileName;
51
+ exports.buildExtractPcmArgs = buildExtractPcmArgs;
52
+ exports.expectedPcmBytes = expectedPcmBytes;
53
+ exports.fitPcmLength = fitPcmLength;
54
+ exports.buildIsolateVideoArgs = buildIsolateVideoArgs;
55
+ exports.videoOnlyFileName = videoOnlyFileName;
56
+ exports.buildVideoOnlyConcatArgs = buildVideoOnlyConcatArgs;
57
+ exports.buildFinalMuxArgs = buildFinalMuxArgs;
58
+ const fs = __importStar(require("node:fs"));
59
+ const path = __importStar(require("node:path"));
60
+ const crypto = __importStar(require("node:crypto"));
61
+ const util_1 = require("./util");
62
+ /**
63
+ * Per-beat render caching, so changing one caption does not cost a full re-render.
64
+ *
65
+ * diff_beats can already tell you that exactly one beat changed. Until now the only
66
+ * available response was render_video, which re-renders the whole composition, because
67
+ * Remotion has no partial-render mode. On a five minute video that is 9000 frames for a
68
+ * one word edit, which is slow enough that nobody edits.
69
+ *
70
+ * The way around it is that Remotion does support rendering a frame RANGE. A beat owns a
71
+ * contiguous range (`start` to `start + duration - 1`), so each beat can be rendered to
72
+ * its own segment and the segments concatenated with ffmpeg's concat demuxer under stream
73
+ * copy: no re-encode, no generation loss, and the result is the same bytes the encoder
74
+ * would have produced for that range in one pass.
75
+ *
76
+ * What makes it safe is hashing the real inputs. A segment is reused only when the beat's
77
+ * own JSON, its scene source, every artifact it references, its narration file, and the
78
+ * project-wide inputs that affect every frame (brand tokens, the generated composition,
79
+ * the music bed) are all byte-identical to when that segment was rendered. Anything this
80
+ * cannot see is a correctness bug, so the hash deliberately errs toward including too much:
81
+ * a false cache miss costs one segment render, a false cache hit ships a wrong video.
82
+ */
83
+ exports.CACHE_VERSION = 2;
84
+ const EMPTY = "0".repeat(64);
85
+ function sha256(data) {
86
+ const input = typeof data === "string" || ArrayBuffer.isView(data) ? data : Buffer.from(data);
87
+ return crypto.createHash("sha256").update(input).digest("hex");
88
+ }
89
+ /**
90
+ * Hash of a file's contents, or a fixed sentinel when it does not exist.
91
+ *
92
+ * Absence is hashed rather than skipped: a beat whose screenshot was deleted has genuinely
93
+ * changed, and skipping a missing file would make the deletion invisible to the cache.
94
+ */
95
+ function hashFile(absPath) {
96
+ if (!fs.existsSync(absPath))
97
+ return EMPTY;
98
+ const stat = fs.statSync(absPath);
99
+ if (!stat.isFile())
100
+ return EMPTY;
101
+ return sha256(fs.readFileSync(absPath));
102
+ }
103
+ /**
104
+ * Inputs shared by every beat: change any of them and no segment is reusable.
105
+ *
106
+ * brand.ts is here because applyBrand mutates the token objects every scene reads, so a
107
+ * brand change repaints frames whose own scene file never moved. The generated composition
108
+ * is here because it owns the audio layout and the sequence boundaries.
109
+ */
110
+ function globalInputsHash(projectRoot, videoName, compositionId) {
111
+ const files = [
112
+ path.join(projectRoot, "src", "brand.ts"),
113
+ path.join(projectRoot, "src", "videos", videoName, `${compositionId}.tsx`),
114
+ path.join(projectRoot, "public", "audio", "music-bed.mp3"),
115
+ path.join(projectRoot, "openvidstudio.config.json"),
116
+ ];
117
+ return sha256(files.map(hashFile).join(":"));
118
+ }
119
+ /** Every file on disk a single beat's frames are drawn from. */
120
+ function beatInputFiles(projectRoot, videoName, beat) {
121
+ const files = [
122
+ path.join(projectRoot, "src", "videos", videoName, "scenes", `${(0, util_1.pascalCase)(beat.id)}.tsx`),
123
+ path.join(projectRoot, "public", "audio", "vo", `${beat.id}.mp3`),
124
+ // Convention paths for each capture kind. Hashing all of them regardless of this
125
+ // beat's captureMethod costs nothing (a missing file hashes to the sentinel) and means
126
+ // a beat that switches from a screenshot to a recording is not mistaken for unchanged.
127
+ path.join(projectRoot, "public", "images", `${beat.id}.png`),
128
+ path.join(projectRoot, "public", "video", `${beat.id}.mp4`),
129
+ path.join(projectRoot, "public", "terminal", `${beat.id}.json`),
130
+ ];
131
+ for (const rel of Object.values(beat.artifacts ?? {})) {
132
+ if (typeof rel === "string" && rel.length > 0)
133
+ files.push(path.join(projectRoot, rel));
134
+ }
135
+ if (beat.visual?.assetPath)
136
+ files.push(path.join(projectRoot, beat.visual.assetPath));
137
+ return files;
138
+ }
139
+ function beatHash(projectRoot, videoName, beat, globalHash) {
140
+ const parts = [
141
+ String(exports.CACHE_VERSION),
142
+ globalHash,
143
+ JSON.stringify(beat),
144
+ ...beatInputFiles(projectRoot, videoName, beat).map(hashFile),
145
+ ];
146
+ return sha256(parts.join(":"));
147
+ }
148
+ /**
149
+ * Settings that change the pixels of every frame. Kept separate from the per-beat hash so
150
+ * a switch between draft and final invalidates the whole cache in one comparison rather
151
+ * than looking like every beat changed at once.
152
+ */
153
+ function renderKey(opts) {
154
+ return `${opts.draft ? "draft" : "final"}-${opts.width}x${opts.height}@${opts.fps}`;
155
+ }
156
+ function cachePath(projectRoot, videoName) {
157
+ return path.join(projectRoot, "output", "segments", videoName, "cache.json");
158
+ }
159
+ function segmentsDir(projectRoot, videoName) {
160
+ return path.join(projectRoot, "output", "segments", videoName);
161
+ }
162
+ function readCache(projectRoot, videoName) {
163
+ const p = cachePath(projectRoot, videoName);
164
+ if (!fs.existsSync(p))
165
+ return null;
166
+ try {
167
+ const parsed = JSON.parse(fs.readFileSync(p, "utf8"));
168
+ return parsed.version === exports.CACHE_VERSION ? parsed : null;
169
+ }
170
+ catch {
171
+ // A half-written manifest is a reason to re-render everything, not to fail the render.
172
+ return null;
173
+ }
174
+ }
175
+ function writeCache(projectRoot, videoName, manifest) {
176
+ const p = cachePath(projectRoot, videoName);
177
+ fs.mkdirSync(path.dirname(p), { recursive: true });
178
+ fs.writeFileSync(p, JSON.stringify(manifest, null, 2) + "\n", "utf8");
179
+ }
180
+ /**
181
+ * Decides, per beat, whether the existing segment can be reused.
182
+ *
183
+ * A cache entry is trusted only if the hash matches, the render settings match, AND the
184
+ * segment file is still on disk: a manifest that outlived its own output is the commonest
185
+ * way a cache lies.
186
+ */
187
+ function planSegments(opts) {
188
+ const { projectRoot, videoName, compositionId, beats, cache } = opts;
189
+ const globalHash = globalInputsHash(projectRoot, videoName, compositionId);
190
+ const usable = cache && cache.renderKey === opts.renderKey && cache.compositionId === compositionId ? cache : null;
191
+ const plan = beats.map((beat) => {
192
+ const hash = beatHash(projectRoot, videoName, beat, globalHash);
193
+ // Posix separators, deliberately: this string is written into a manifest that should
194
+ // still read correctly if the project is opened on another platform.
195
+ const file = `output/segments/${videoName}/${beat.id}.mp4`;
196
+ const cached = usable?.segments[beat.id];
197
+ const reused = Boolean(cached) &&
198
+ cached.hash === hash &&
199
+ cached.start === beat.start &&
200
+ cached.duration === beat.duration &&
201
+ fs.existsSync(path.join(projectRoot, file));
202
+ return {
203
+ beatId: beat.id,
204
+ hash,
205
+ file,
206
+ firstFrame: beat.start,
207
+ lastFrame: beat.start + beat.duration - 1,
208
+ reused,
209
+ };
210
+ });
211
+ return { plan, globalHash };
212
+ }
213
+ /**
214
+ * Remotion's frame-range render, for one beat.
215
+ *
216
+ * `--enforce-audio-track` is not optional here. A beat with no narration renders with no
217
+ * audio stream at all, and the concat demuxer under stream copy cannot join a segment that
218
+ * has an audio track to one that does not: it either fails or silently drops the audio for
219
+ * the rest of the file. Forcing a silent track onto every segment costs nothing and makes
220
+ * the streams uniform, which is the precondition for copying rather than re-encoding.
221
+ */
222
+ function buildSegmentRenderArgs(compositionId, outPath, firstFrame, lastFrame, opts = {}) {
223
+ const args = ["remotion", "render", compositionId, outPath, `--frames=${firstFrame}-${lastFrame}`, "--enforce-audio-track"];
224
+ if (opts.draft)
225
+ args.push("--scale=0.5", "--crf=32", "--x264-preset=veryfast");
226
+ if (opts.concurrency && opts.concurrency > 0)
227
+ args.push(`--concurrency=${Math.floor(opts.concurrency)}`);
228
+ // See buildRenderCommand's matching option (renderVideo.ts): reuses the project's
229
+ // configured browser instead of Remotion downloading its own.
230
+ if (opts.browserExecutable)
231
+ args.push(`--browser-executable=${opts.browserExecutable}`);
232
+ args.push("--log=verbose");
233
+ return { command: process.platform === "win32" ? "npx.cmd" : "npx", args };
234
+ }
235
+ /**
236
+ * concat demuxer list. Paths are single-quoted with embedded quotes escaped per ffmpeg's
237
+ * own rules, and written relative to the list file's directory so the list is portable.
238
+ */
239
+ function buildConcatList(segmentFiles) {
240
+ return segmentFiles.map((f) => `file '${f.replace(/'/g, "'\\''")}'`).join("\n") + "\n";
241
+ }
242
+ function buildConcatArgs(listPath, outPath) {
243
+ return [
244
+ "-nostdin",
245
+ "-f",
246
+ "concat",
247
+ // The list holds relative names; -safe 0 is what allows anything but a bare basename.
248
+ "-safe",
249
+ "0",
250
+ "-i",
251
+ listPath,
252
+ "-c",
253
+ "copy",
254
+ "-movflags",
255
+ "+faststart",
256
+ outPath,
257
+ "-y",
258
+ ];
259
+ }
260
+ /**
261
+ * Sample-exact audio join for the incremental render's concat step.
262
+ *
263
+ * Each per-beat segment is rendered separately and its AAC track ends up a little longer
264
+ * than its video: the encoder pads to a full AAC frame (1024 samples), typically tens of ms
265
+ * per segment. Stream-copying every segment's audio track under the same concat demuxer that
266
+ * joins the video stacks that padding beat over beat, so a 16-beat video can end with its
267
+ * audio visibly behind its video even though every individual segment looks fine in
268
+ * isolation. The fix joins video and audio through two different paths: video stays a
269
+ * gapless stream copy (no per-segment padding on the video side), audio is decoded to raw
270
+ * PCM per segment, trimmed or padded to exactly `duration/fps` seconds, concatenated as raw
271
+ * samples, and encoded to AAC once at the end -- so the only rounding that can happen is
272
+ * inside a single final encode, not once per beat.
273
+ */
274
+ exports.AUDIO_SAMPLE_RATE = 48000;
275
+ exports.AUDIO_CHANNELS = 2;
276
+ const BYTES_PER_SAMPLE = 2; // s16le
277
+ function pcmFileName(beatId) {
278
+ return `${beatId}.pcm`;
279
+ }
280
+ /** ffmpeg args to decode one segment's audio to raw interleaved s16le PCM. */
281
+ function buildExtractPcmArgs(segmentFile, pcmOutPath) {
282
+ return [
283
+ "-nostdin",
284
+ "-i",
285
+ segmentFile,
286
+ "-vn",
287
+ "-ar",
288
+ String(exports.AUDIO_SAMPLE_RATE),
289
+ "-ac",
290
+ String(exports.AUDIO_CHANNELS),
291
+ "-f",
292
+ "s16le",
293
+ "-y",
294
+ pcmOutPath,
295
+ ];
296
+ }
297
+ /** Exact PCM byte length for a beat of `durationFrames` at `fps`, at the canonical rate above. */
298
+ function expectedPcmBytes(durationFrames, fps) {
299
+ const samples = Math.round((durationFrames / fps) * exports.AUDIO_SAMPLE_RATE);
300
+ return samples * exports.AUDIO_CHANNELS * BYTES_PER_SAMPLE;
301
+ }
302
+ /**
303
+ * Trims or zero-pads (silence) a PCM buffer to exactly `expectedBytes`. Pure and
304
+ * frame-count-based, so this is what makes the join sample-exact rather than
305
+ * "close, rounded to whatever the codec happened to produce."
306
+ */
307
+ function fitPcmLength(buf, expectedBytes) {
308
+ if (buf.length === expectedBytes)
309
+ return buf;
310
+ if (buf.length > expectedBytes)
311
+ return buf.subarray(0, expectedBytes);
312
+ const out = Buffer.alloc(expectedBytes);
313
+ buf.copy(out);
314
+ return out;
315
+ }
316
+ /**
317
+ * Strips a segment's audio into its own fresh container.
318
+ *
319
+ * This has to happen before concatenation, not as an `-an` flag on the concat step itself:
320
+ * each beat's segment is muxed with audio deliberately longer than its video (the padding
321
+ * this whole join exists to defeat), so the segment's own container-level duration reflects
322
+ * that longer audio track, not the true video length. The concat demuxer trusts each input's
323
+ * container duration to place the next file's start, so concatenating the original segments
324
+ * with `-an` still leaves a gap at every join equal to that segment's audio overrun -- the
325
+ * video track ends up gapful, just silent instead of desynced. Re-muxing video-only into its
326
+ * own container first drops that stale duration along with the audio, so the isolated file's
327
+ * own duration is the true one and concatenation is actually gapless.
328
+ */
329
+ function buildIsolateVideoArgs(segmentFile, videoOnlyOutPath) {
330
+ return ["-nostdin", "-i", segmentFile, "-an", "-c:v", "copy", "-y", videoOnlyOutPath];
331
+ }
332
+ function videoOnlyFileName(beatId) {
333
+ return `_vo-${beatId}.mp4`;
334
+ }
335
+ /** Video-only stream copy over already-isolated per-segment files: gapless picture track. */
336
+ function buildVideoOnlyConcatArgs(listPath, outPath) {
337
+ return ["-nostdin", "-f", "concat", "-safe", "0", "-i", listPath, "-an", "-c", "copy", "-y", outPath];
338
+ }
339
+ /**
340
+ * Final mux: the gapless video-only file plus one raw-PCM audio input (already the exact
341
+ * concatenation of every beat's trimmed/padded PCM), encoded to AAC exactly once.
342
+ */
343
+ function buildFinalMuxArgs(videoOnlyPath, concatPcmPath, outPath) {
344
+ return [
345
+ "-nostdin",
346
+ "-i",
347
+ videoOnlyPath,
348
+ "-f",
349
+ "s16le",
350
+ "-ar",
351
+ String(exports.AUDIO_SAMPLE_RATE),
352
+ "-ac",
353
+ String(exports.AUDIO_CHANNELS),
354
+ "-i",
355
+ concatPcmPath,
356
+ "-map",
357
+ "0:v:0",
358
+ "-map",
359
+ "1:a:0",
360
+ "-c:v",
361
+ "copy",
362
+ "-c:a",
363
+ "aac",
364
+ "-b:a",
365
+ "192k",
366
+ "-movflags",
367
+ "+faststart",
368
+ "-y",
369
+ outPath,
370
+ ];
371
+ }
@@ -0,0 +1,49 @@
1
+ /**
2
+ * Converts a capture_terminal cast into TerminalReplay's TermStep[].
3
+ *
4
+ * The cast stores what actually happened: every stdout/stderr chunk with the millisecond
5
+ * offset it arrived at. TerminalReplay thinks in frames and in typed commands versus
6
+ * revealed output. This bridges the two, and the thing it must not lose is the real
7
+ * timing: a build that paused four seconds should pause four seconds on screen, because
8
+ * honest waiting is most of what makes a terminal demo convincing.
9
+ */
10
+ export interface TerminalCastLike {
11
+ command?: string;
12
+ cols?: number;
13
+ rows?: number;
14
+ durationMs?: number;
15
+ events?: [number, string, string][];
16
+ }
17
+ export type TermLine = {
18
+ text: string;
19
+ color?: string;
20
+ glow?: boolean;
21
+ bold?: boolean;
22
+ };
23
+ export type TermStep = {
24
+ type: "cmd";
25
+ text: string;
26
+ } | {
27
+ type: "out";
28
+ lines: TermLine[];
29
+ stagger?: number;
30
+ preDelay?: number;
31
+ } | {
32
+ type: "pause";
33
+ frames: number;
34
+ };
35
+ /**
36
+ * Strips ANSI escape sequences. TerminalReplay renders plain text with its own colours,
37
+ * so leaving raw escapes in would print literal garbage like `[0;32m` on screen.
38
+ * Colour intent is preserved coarsely instead, via the stdout/stderr split.
39
+ */
40
+ export declare function stripAnsi(text: string): string;
41
+ export declare function castToSteps(cast: TerminalCastLike, fps?: number): TermStep[];
42
+ /**
43
+ * Serializes steps into the generated scene.
44
+ *
45
+ * `color.textSecondary` has to appear as an identifier in the emitted TSX, not as the
46
+ * string "color.textSecondary", so the scene picks up whatever palette extract_brand
47
+ * resolved. JSON.stringify would quote it, so the quotes are removed afterwards.
48
+ */
49
+ export declare function serializeSteps(steps: TermStep[]): string;
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ /**
3
+ * Converts a capture_terminal cast into TerminalReplay's TermStep[].
4
+ *
5
+ * The cast stores what actually happened: every stdout/stderr chunk with the millisecond
6
+ * offset it arrived at. TerminalReplay thinks in frames and in typed commands versus
7
+ * revealed output. This bridges the two, and the thing it must not lose is the real
8
+ * timing: a build that paused four seconds should pause four seconds on screen, because
9
+ * honest waiting is most of what makes a terminal demo convincing.
10
+ */
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.stripAnsi = stripAnsi;
13
+ exports.castToSteps = castToSteps;
14
+ exports.serializeSteps = serializeSteps;
15
+ /** Gaps shorter than this are just chunk boundaries, not real waiting, so they are not drawn. */
16
+ const MIN_PAUSE_MS = 220;
17
+ /** A very long wait is real but boring; compress it rather than stalling the video on it. */
18
+ const MAX_PAUSE_MS = 2500;
19
+ const COLOR_STDERR = "color.danger";
20
+ const COLOR_STDOUT = "color.textSecondary";
21
+ /**
22
+ * Strips ANSI escape sequences. TerminalReplay renders plain text with its own colours,
23
+ * so leaving raw escapes in would print literal garbage like `[0;32m` on screen.
24
+ * Colour intent is preserved coarsely instead, via the stdout/stderr split.
25
+ */
26
+ function stripAnsi(text) {
27
+ // eslint-disable-next-line no-control-regex
28
+ return text.replace(/\[[0-9;?]*[ -/]*[@-~]/g, "").replace(/\r/g, "");
29
+ }
30
+ function castToSteps(cast, fps = 30) {
31
+ const steps = [];
32
+ const command = (cast.command ?? "").trim();
33
+ if (command.length > 0) {
34
+ steps.push({ type: "cmd", text: command });
35
+ }
36
+ const events = Array.isArray(cast.events) ? cast.events : [];
37
+ let prevMs = 0;
38
+ for (const event of events) {
39
+ if (!Array.isArray(event) || event.length < 3)
40
+ continue;
41
+ const [ms, stream, raw] = event;
42
+ if (typeof ms !== "number" || typeof raw !== "string")
43
+ continue;
44
+ const gap = ms - prevMs;
45
+ prevMs = ms;
46
+ if (gap >= MIN_PAUSE_MS) {
47
+ steps.push({ type: "pause", frames: Math.round((Math.min(gap, MAX_PAUSE_MS) / 1000) * fps) });
48
+ }
49
+ const lines = stripAnsi(raw)
50
+ .split("\n")
51
+ .filter((l) => l.trim().length > 0)
52
+ .map((text) => ({ text, color: stream === "e" ? COLOR_STDERR : COLOR_STDOUT }));
53
+ if (lines.length > 0) {
54
+ steps.push({ type: "out", lines });
55
+ }
56
+ }
57
+ return steps;
58
+ }
59
+ /**
60
+ * Serializes steps into the generated scene.
61
+ *
62
+ * `color.textSecondary` has to appear as an identifier in the emitted TSX, not as the
63
+ * string "color.textSecondary", so the scene picks up whatever palette extract_brand
64
+ * resolved. JSON.stringify would quote it, so the quotes are removed afterwards.
65
+ */
66
+ function serializeSteps(steps) {
67
+ const json = JSON.stringify(steps, null, 2);
68
+ return json.replace(/"color":\s*"(color\.[A-Za-z]+)"/g, '"color": $1');
69
+ }