dsh-remotion 0.3.2 → 0.3.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (133) hide show
  1. package/README.en.md +4 -4
  2. package/README.md +4 -4
  3. package/package.json +4 -3
  4. package/scripts/.skill-port-meta.json +50 -0
  5. package/scripts/sync-skills.mjs +65 -0
  6. package/skills/remotion-best-practices/SKILL.md +18 -17
  7. package/skills/remotion-best-practices/agents/openai.yaml +2 -2
  8. package/skills/remotion-best-practices/assets/remotion-icon.svg +4 -0
  9. package/skills/remotion-best-practices/remotion-captions/{SKILL.md → REFERENCE.md} +1 -1
  10. package/skills/remotion-best-practices/remotion-captions/agents/openai.yaml +2 -2
  11. package/skills/remotion-best-practices/remotion-captions/assets/remotion-icon.svg +4 -0
  12. package/skills/remotion-best-practices/remotion-create/{SKILL.md → REFERENCE.md} +26 -9
  13. package/skills/remotion-best-practices/remotion-create/agents/openai.yaml +2 -2
  14. package/skills/remotion-best-practices/remotion-create/assets/remotion-icon.svg +4 -0
  15. package/skills/remotion-best-practices/remotion-docs/{SKILL.md → REFERENCE.md} +2 -2
  16. package/skills/remotion-best-practices/remotion-docs/agents/openai.yaml +2 -2
  17. package/skills/remotion-best-practices/remotion-docs/assets/remotion-icon.svg +4 -0
  18. package/skills/remotion-best-practices/remotion-interactivity/{SKILL.md → REFERENCE.md} +69 -1
  19. package/skills/remotion-best-practices/remotion-interactivity/agents/openai.yaml +2 -2
  20. package/skills/remotion-best-practices/remotion-interactivity/assets/remotion-icon.svg +4 -0
  21. package/skills/{remotion-markup/remotion-maps/SKILL.md → remotion-best-practices/remotion-maps/REFERENCE.md} +1 -1
  22. package/skills/remotion-best-practices/remotion-maps/agents/openai.yaml +2 -2
  23. package/skills/remotion-best-practices/remotion-maps/assets/remotion-icon.svg +4 -0
  24. package/skills/remotion-best-practices/remotion-maps/techniques/maplibre/TECHNIQUE.md +21 -2
  25. package/skills/remotion-best-practices/remotion-maps/techniques/static-map/TECHNIQUE.md +1 -1
  26. package/skills/remotion-best-practices/remotion-markup/{SKILL.md → REFERENCE.md} +19 -26
  27. package/skills/remotion-best-practices/remotion-markup/agents/openai.yaml +2 -2
  28. package/skills/remotion-best-practices/remotion-markup/assets/remotion-icon.svg +4 -0
  29. package/skills/remotion-best-practices/remotion-markup/audio.md +3 -5
  30. package/skills/remotion-best-practices/remotion-markup/compositions.md +11 -5
  31. package/skills/remotion-best-practices/remotion-markup/connected-compositions.md +79 -0
  32. package/skills/remotion-best-practices/remotion-markup/cropping.md +1 -1
  33. package/skills/remotion-best-practices/remotion-markup/embedding-videos.md +3 -5
  34. package/skills/remotion-best-practices/remotion-markup/motion-blur.md +60 -0
  35. package/skills/remotion-best-practices/remotion-markup/multi-scene-video.md +64 -64
  36. package/skills/remotion-best-practices/{remotion-maps/SKILL.md → remotion-markup/remotion-maps/REFERENCE.md} +1 -1
  37. package/skills/remotion-best-practices/remotion-markup/remotion-maps/agents/openai.yaml +2 -2
  38. package/skills/remotion-best-practices/remotion-markup/remotion-maps/assets/remotion-icon.svg +4 -0
  39. package/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/maplibre/TECHNIQUE.md +21 -2
  40. package/skills/remotion-best-practices/remotion-markup/remotion-maps/techniques/static-map/TECHNIQUE.md +1 -1
  41. package/skills/remotion-best-practices/remotion-markup/text-highlights.md +1 -1
  42. package/skills/remotion-best-practices/remotion-multimedia/{SKILL.md → REFERENCE.md} +1 -1
  43. package/skills/remotion-best-practices/remotion-multimedia/agents/openai.yaml +2 -2
  44. package/skills/remotion-best-practices/remotion-multimedia/assets/remotion-icon.svg +4 -0
  45. package/skills/remotion-best-practices/remotion-render/{SKILL.md → REFERENCE.md} +9 -1
  46. package/skills/remotion-best-practices/remotion-render/agents/openai.yaml +2 -2
  47. package/skills/remotion-best-practices/remotion-render/assets/remotion-icon.svg +4 -0
  48. package/skills/remotion-best-practices/remotion-saas/{SKILL.md → REFERENCE.md} +1 -1
  49. package/skills/remotion-best-practices/remotion-saas/agents/openai.yaml +2 -2
  50. package/skills/remotion-best-practices/remotion-saas/assets/remotion-icon.svg +4 -0
  51. package/skills/remotion-best-practices/remotion-saas/framework.md +1 -3
  52. package/skills/remotion-best-practices/remotion-studio/{SKILL.md → REFERENCE.md} +1 -1
  53. package/skills/remotion-best-practices/remotion-studio/agents/openai.yaml +2 -2
  54. package/skills/remotion-best-practices/remotion-studio/assets/remotion-icon.svg +4 -0
  55. package/skills/remotion-best-practices/remotion-upgrade/{SKILL.md → REFERENCE.md} +3 -3
  56. package/skills/remotion-best-practices/remotion-upgrade/agents/openai.yaml +2 -2
  57. package/skills/remotion-best-practices/remotion-upgrade/assets/remotion-icon.svg +4 -0
  58. package/skills/remotion-captions/SKILL.md +6 -5
  59. package/skills/remotion-captions/agents/openai.yaml +2 -2
  60. package/skills/remotion-captions/assets/remotion-icon.svg +4 -0
  61. package/skills/remotion-create/SKILL.md +32 -14
  62. package/skills/remotion-create/agents/openai.yaml +2 -2
  63. package/skills/remotion-create/assets/remotion-icon.svg +4 -0
  64. package/skills/remotion-docs/SKILL.md +7 -6
  65. package/skills/remotion-docs/agents/openai.yaml +2 -2
  66. package/skills/remotion-docs/assets/remotion-icon.svg +4 -0
  67. package/skills/remotion-interactivity/SKILL.md +75 -6
  68. package/skills/remotion-interactivity/agents/openai.yaml +2 -2
  69. package/skills/remotion-interactivity/assets/remotion-icon.svg +4 -0
  70. package/skills/remotion-maps/SKILL.md +6 -5
  71. package/skills/remotion-maps/agents/openai.yaml +2 -2
  72. package/skills/remotion-maps/assets/remotion-icon.svg +4 -0
  73. package/skills/remotion-maps/techniques/maplibre/TECHNIQUE.md +21 -2
  74. package/skills/remotion-maps/techniques/static-map/TECHNIQUE.md +1 -1
  75. package/skills/remotion-markup/SKILL.md +24 -30
  76. package/skills/remotion-markup/agents/openai.yaml +2 -2
  77. package/skills/remotion-markup/assets/remotion-icon.svg +4 -0
  78. package/skills/remotion-markup/audio.md +3 -5
  79. package/skills/remotion-markup/calculate-metadata.md +2 -2
  80. package/skills/remotion-markup/compositions.md +11 -5
  81. package/skills/remotion-markup/connected-compositions.md +79 -0
  82. package/skills/remotion-markup/cropping.md +1 -1
  83. package/skills/remotion-markup/embedding-videos.md +3 -5
  84. package/skills/remotion-markup/motion-blur.md +60 -0
  85. package/skills/remotion-markup/multi-scene-video.md +64 -64
  86. package/skills/{remotion-best-practices/remotion-markup/remotion-maps/SKILL.md → remotion-markup/remotion-maps/REFERENCE.md} +1 -1
  87. package/skills/remotion-markup/remotion-maps/agents/openai.yaml +2 -2
  88. package/skills/remotion-markup/remotion-maps/assets/remotion-icon.svg +4 -0
  89. package/skills/remotion-markup/remotion-maps/techniques/maplibre/TECHNIQUE.md +21 -2
  90. package/skills/remotion-markup/remotion-maps/techniques/static-map/TECHNIQUE.md +1 -1
  91. package/skills/remotion-markup/text-highlights.md +1 -1
  92. package/skills/remotion-markup/voiceover.md +1 -1
  93. package/skills/remotion-multimedia/SKILL.md +6 -5
  94. package/skills/remotion-multimedia/agents/openai.yaml +2 -2
  95. package/skills/remotion-multimedia/assets/remotion-icon.svg +4 -0
  96. package/skills/remotion-render/SKILL.md +14 -5
  97. package/skills/remotion-render/agents/openai.yaml +2 -2
  98. package/skills/remotion-render/assets/remotion-icon.svg +4 -0
  99. package/skills/remotion-saas/SKILL.md +6 -5
  100. package/skills/remotion-saas/agents/openai.yaml +2 -2
  101. package/skills/remotion-saas/assets/remotion-icon.svg +4 -0
  102. package/skills/remotion-saas/framework.md +1 -3
  103. package/skills/remotion-studio/SKILL.md +6 -5
  104. package/skills/remotion-studio/agents/openai.yaml +2 -2
  105. package/skills/remotion-studio/assets/remotion-icon.svg +4 -0
  106. package/skills/remotion-upgrade/SKILL.md +8 -7
  107. package/skills/remotion-upgrade/agents/openai.yaml +2 -2
  108. package/skills/remotion-upgrade/assets/remotion-icon.svg +4 -0
  109. package/skills/remotion-best-practices/assets/remotion-icon.png +0 -0
  110. package/skills/remotion-best-practices/remotion-captions/assets/remotion-icon.png +0 -0
  111. package/skills/remotion-best-practices/remotion-create/assets/remotion-icon.png +0 -0
  112. package/skills/remotion-best-practices/remotion-docs/assets/remotion-icon.png +0 -0
  113. package/skills/remotion-best-practices/remotion-interactivity/assets/remotion-icon.png +0 -0
  114. package/skills/remotion-best-practices/remotion-maps/assets/remotion-icon.png +0 -0
  115. package/skills/remotion-best-practices/remotion-markup/assets/remotion-icon.png +0 -0
  116. package/skills/remotion-best-practices/remotion-markup/remotion-maps/assets/remotion-icon.png +0 -0
  117. package/skills/remotion-best-practices/remotion-multimedia/assets/remotion-icon.png +0 -0
  118. package/skills/remotion-best-practices/remotion-render/assets/remotion-icon.png +0 -0
  119. package/skills/remotion-best-practices/remotion-saas/assets/remotion-icon.png +0 -0
  120. package/skills/remotion-best-practices/remotion-studio/assets/remotion-icon.png +0 -0
  121. package/skills/remotion-best-practices/remotion-upgrade/assets/remotion-icon.png +0 -0
  122. package/skills/remotion-captions/assets/remotion-icon.png +0 -0
  123. package/skills/remotion-create/assets/remotion-icon.png +0 -0
  124. package/skills/remotion-docs/assets/remotion-icon.png +0 -0
  125. package/skills/remotion-interactivity/assets/remotion-icon.png +0 -0
  126. package/skills/remotion-maps/assets/remotion-icon.png +0 -0
  127. package/skills/remotion-markup/assets/remotion-icon.png +0 -0
  128. package/skills/remotion-markup/remotion-maps/assets/remotion-icon.png +0 -0
  129. package/skills/remotion-multimedia/assets/remotion-icon.png +0 -0
  130. package/skills/remotion-render/assets/remotion-icon.png +0 -0
  131. package/skills/remotion-saas/assets/remotion-icon.png +0 -0
  132. package/skills/remotion-studio/assets/remotion-icon.png +0 -0
  133. package/skills/remotion-upgrade/assets/remotion-icon.png +0 -0
@@ -1,7 +1,7 @@
1
1
  interface:
2
2
  display_name: '/remotion-multimedia'
3
3
  short_description: 'Inspect browser-based audio and video media'
4
- icon_small: './assets/remotion-icon.png'
5
- icon_large: './assets/remotion-icon.png'
4
+ icon_small: './assets/remotion-icon.svg'
5
+ icon_large: './assets/remotion-icon.svg'
6
6
  brand_color: '#0B84F3'
7
7
  default_prompt: '$remotion-multimedia: Make my video the same duration as the footage'
@@ -0,0 +1,4 @@
1
+ <svg width="100" height="100" viewBox="20 30 363 363" xmlns="http://www.w3.org/2000/svg">
2
+ <title>Remotion</title>
3
+ <path d="M148.332 92.9015C143.307 93.1742 139.259 93.9713 135.179 95.5236C133.144 96.2893 129.809 97.957 127.973 99.1108C120.295 103.925 114.443 111.162 111.391 119.584C110.782 121.252 109.136 126.57 108.076 130.23C101.018 154.7 97.0112 181.456 96.1511 209.776C96.0148 214.286 96.0148 225.026 96.1511 229.463C96.728 248.237 98.5216 265.187 101.773 282.472C103.095 289.468 105.213 298.866 106.44 303.135C108.947 311.809 114.065 319.193 121.344 324.605C126.221 328.234 131.759 330.668 137.895 331.863C140.853 332.44 144.755 332.702 147.629 332.514C151.604 332.251 159.491 331.192 165.9 330.049C194.786 324.899 221.469 315.679 245.666 302.485C260.99 294.125 274.09 285.074 286.729 274.092C299.326 263.163 310.066 251.405 319.516 238.21C321.708 235.158 322.81 233.375 323.911 231.131C326.743 225.341 328.075 219.583 328.064 213.143C328.064 207.143 326.932 201.815 324.488 196.361C323.313 193.728 322.191 191.84 319.674 188.253C310.402 175.048 300.112 163.542 287.568 152.361C268.122 135.034 245.026 120.822 219.235 110.302C213.644 108.026 208.138 106.022 201.509 103.851C187.475 99.2681 170.106 95.2929 155.411 93.3105C153.104 92.9959 149.968 92.8176 148.332 92.9015Z" fill="#0B84F3"/>
4
+ </svg>
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: remotion-render
3
3
  description: Export a Remotion video
4
- version: 4.0.519
4
+ version: 4.0.529
5
5
  ---
6
6
 
7
7
  ## General rendering strategy
@@ -22,6 +22,14 @@ npx remotion still
22
22
 
23
23
  Full list of options: https://www.remotion.dev/docs/cli/still.md
24
24
 
25
+ To render several frames as images in one call, use `render --frames`:
26
+
27
+ ```
28
+ npx remotion render [composition-id] out/frames --frames=0,30,90 --image-format=png
29
+ ```
30
+
31
+ See https://www.remotion.dev/docs/cli/render.md#--frames for more options.
32
+
25
33
  ## Transparent videos
26
34
 
27
35
  See [Transparent videos](./transparent-videos.md) for rendering out a video with transparency.
@@ -1,7 +1,7 @@
1
1
  interface:
2
2
  display_name: '/remotion-render'
3
3
  short_description: 'Export Remotion videos and stills'
4
- icon_small: './assets/remotion-icon.png'
5
- icon_large: './assets/remotion-icon.png'
4
+ icon_small: './assets/remotion-icon.svg'
5
+ icon_large: './assets/remotion-icon.svg'
6
6
  brand_color: '#0B84F3'
7
7
  default_prompt: '$remotion-render: Render this as transparent ProRes'
@@ -0,0 +1,4 @@
1
+ <svg width="100" height="100" viewBox="20 30 363 363" xmlns="http://www.w3.org/2000/svg">
2
+ <title>Remotion</title>
3
+ <path d="M148.332 92.9015C143.307 93.1742 139.259 93.9713 135.179 95.5236C133.144 96.2893 129.809 97.957 127.973 99.1108C120.295 103.925 114.443 111.162 111.391 119.584C110.782 121.252 109.136 126.57 108.076 130.23C101.018 154.7 97.0112 181.456 96.1511 209.776C96.0148 214.286 96.0148 225.026 96.1511 229.463C96.728 248.237 98.5216 265.187 101.773 282.472C103.095 289.468 105.213 298.866 106.44 303.135C108.947 311.809 114.065 319.193 121.344 324.605C126.221 328.234 131.759 330.668 137.895 331.863C140.853 332.44 144.755 332.702 147.629 332.514C151.604 332.251 159.491 331.192 165.9 330.049C194.786 324.899 221.469 315.679 245.666 302.485C260.99 294.125 274.09 285.074 286.729 274.092C299.326 263.163 310.066 251.405 319.516 238.21C321.708 235.158 322.81 233.375 323.911 231.131C326.743 225.341 328.075 219.583 328.064 213.143C328.064 207.143 326.932 201.815 324.488 196.361C323.313 193.728 322.191 191.84 319.674 188.253C310.402 175.048 300.112 163.542 287.568 152.361C268.122 135.034 245.026 120.822 219.235 110.302C213.644 108.026 208.138 106.022 201.509 103.851C187.475 99.2681 170.106 95.2929 155.411 93.3105C153.104 92.9959 149.968 92.8176 148.332 92.9015Z" fill="#0B84F3"/>
4
+ </svg>
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: remotion-saas
3
3
  description: Build an app with Remotion
4
- version: 4.0.519
4
+ version: 4.0.529
5
5
  ---
6
6
 
7
7
  One can build apps with Remotion.
@@ -1,7 +1,7 @@
1
1
  interface:
2
2
  display_name: '/remotion-saas'
3
3
  short_description: 'Build apps that preview and render videos'
4
- icon_small: './assets/remotion-icon.png'
5
- icon_large: './assets/remotion-icon.png'
4
+ icon_small: './assets/remotion-icon.svg'
5
+ icon_large: './assets/remotion-icon.svg'
6
6
  brand_color: '#0B84F3'
7
7
  default_prompt: '$remotion-saas: Turn my video into an app.'
@@ -0,0 +1,4 @@
1
+ <svg width="100" height="100" viewBox="20 30 363 363" xmlns="http://www.w3.org/2000/svg">
2
+ <title>Remotion</title>
3
+ <path d="M148.332 92.9015C143.307 93.1742 139.259 93.9713 135.179 95.5236C133.144 96.2893 129.809 97.957 127.973 99.1108C120.295 103.925 114.443 111.162 111.391 119.584C110.782 121.252 109.136 126.57 108.076 130.23C101.018 154.7 97.0112 181.456 96.1511 209.776C96.0148 214.286 96.0148 225.026 96.1511 229.463C96.728 248.237 98.5216 265.187 101.773 282.472C103.095 289.468 105.213 298.866 106.44 303.135C108.947 311.809 114.065 319.193 121.344 324.605C126.221 328.234 131.759 330.668 137.895 331.863C140.853 332.44 144.755 332.702 147.629 332.514C151.604 332.251 159.491 331.192 165.9 330.049C194.786 324.899 221.469 315.679 245.666 302.485C260.99 294.125 274.09 285.074 286.729 274.092C299.326 263.163 310.066 251.405 319.516 238.21C321.708 235.158 322.81 233.375 323.911 231.131C326.743 225.341 328.075 219.583 328.064 213.143C328.064 207.143 326.932 201.815 324.488 196.361C323.313 193.728 322.191 191.84 319.674 188.253C310.402 175.048 300.112 163.542 287.568 152.361C268.122 135.034 245.026 120.822 219.235 110.302C213.644 108.026 208.138 106.022 201.509 103.851C187.475 99.2681 170.106 95.2929 155.411 93.3105C153.104 92.9959 149.968 92.8176 148.332 92.9015Z" fill="#0B84F3"/>
4
+ </svg>
@@ -9,9 +9,7 @@ Remotion can be used with any React framework.
9
9
 
10
10
  We offer the following templates:
11
11
 
12
- - Next.js App Router with Tailwind: https://github.com/remotion-dev/template-next-app-dir-tailwind. Uses Lambda as default rendering choice.
13
- - Next.js App Router without Tailwind: https://www.remotion.dev/templates/next-no-tailwind. Uses Lambda as default rendering choice.
14
- - Next.js Pages Router: https://github.com/remotion-dev/template-next-pages-dir. Uses Lambda as default rendering choice.
12
+ - Next.js: https://github.com/remotion-dev/template-next-app-dir-tailwind. Uses Lambda as default rendering choice.
15
13
  - Vercel Sandbox rendering: https://github.com/remotion-dev/template-vercel. Uses Vercel as default rendering choice.
16
14
  - React Router 7: https://github.com/remotion-dev/template-react-router. Uses Lambda as default rendering choice.
17
15
  - Express.js render server: `packages/template-render-server`: https://github.com/remotion-dev/template-render-server. Uses Node.js as default rendering choice.
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: remotion-studio
3
3
  description: Preview a Remotion video
4
- version: 4.0.519
4
+ version: 4.0.529
5
5
  ---
6
6
 
7
7
  Execute the following command:
@@ -1,7 +1,7 @@
1
1
  interface:
2
2
  display_name: '/remotion-studio'
3
3
  short_description: 'Preview your video'
4
- icon_small: './assets/remotion-icon.png'
5
- icon_large: './assets/remotion-icon.png'
4
+ icon_small: './assets/remotion-icon.svg'
5
+ icon_large: './assets/remotion-icon.svg'
6
6
  brand_color: '#0B84F3'
7
7
  default_prompt: '$remotion-studio.'
@@ -0,0 +1,4 @@
1
+ <svg width="100" height="100" viewBox="20 30 363 363" xmlns="http://www.w3.org/2000/svg">
2
+ <title>Remotion</title>
3
+ <path d="M148.332 92.9015C143.307 93.1742 139.259 93.9713 135.179 95.5236C133.144 96.2893 129.809 97.957 127.973 99.1108C120.295 103.925 114.443 111.162 111.391 119.584C110.782 121.252 109.136 126.57 108.076 130.23C101.018 154.7 97.0112 181.456 96.1511 209.776C96.0148 214.286 96.0148 225.026 96.1511 229.463C96.728 248.237 98.5216 265.187 101.773 282.472C103.095 289.468 105.213 298.866 106.44 303.135C108.947 311.809 114.065 319.193 121.344 324.605C126.221 328.234 131.759 330.668 137.895 331.863C140.853 332.44 144.755 332.702 147.629 332.514C151.604 332.251 159.491 331.192 165.9 330.049C194.786 324.899 221.469 315.679 245.666 302.485C260.99 294.125 274.09 285.074 286.729 274.092C299.326 263.163 310.066 251.405 319.516 238.21C321.708 235.158 322.81 233.375 323.911 231.131C326.743 225.341 328.075 219.583 328.064 213.143C328.064 207.143 326.932 201.815 324.488 196.361C323.313 193.728 322.191 191.84 319.674 188.253C310.402 175.048 300.112 163.542 287.568 152.361C268.122 135.034 245.026 120.822 219.235 110.302C213.644 108.026 208.138 106.022 201.509 103.851C187.475 99.2681 170.106 95.2929 155.411 93.3105C153.104 92.9959 149.968 92.8176 148.332 92.9015Z" fill="#0B84F3"/>
4
+ </svg>
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: remotion-upgrade
3
3
  description: Upgrade Remotion, and related packages
4
- version: 4.0.519
4
+ version: 4.0.529
5
5
  ---
6
6
 
7
7
  # Upgrade Remotion
@@ -18,7 +18,7 @@ version: 4.0.519
18
18
  3. If `@remotion/cli` is not available, upgrade manually:
19
19
  - Get the latest stable Remotion version with `npm view remotion version`.
20
20
  - Find every installed `remotion` and `@remotion/*` dependency across the project and upgrade them all to that exact version. Preserve their dependency sections and the project's workspace or catalog conventions.
21
- - Read the current [Mediabunny compatibility page](https://www.remotion.dev/docs/mediabunny/version) and determine the Mediabunny version compatible with the target Remotion version. Upgrade every installed `mediabunny` and `@mediabunny/*` package to the documented compatible version.
21
+ - Read the `@remotion/studio` dependencies for the target Remotion version using `npm view @remotion/studio@<version> dependencies --json`. Align installed auxiliary packages such as `zod`, `mediabunny`, and `@huggingface/transformers` with the versions listed there. Use the `mediabunny` version for installed `@mediabunny/*` packages.
22
22
  - Run the project's package manager to update its lockfile.
23
23
  4. If `@remotion/cli` is not available, update the installed Remotion skills:
24
24
 
@@ -26,6 +26,6 @@ version: 4.0.519
26
26
  npx skills update remotion-best-practices remotion-captions remotion-create remotion-docs remotion-interactivity remotion-maps remotion-markup remotion-multimedia remotion-render remotion-saas remotion-studio remotion-upgrade --yes
27
27
  ```
28
28
 
29
- 5. Review the manifest and lockfile diff. Ensure all Remotion packages use one version and all installed Mediabunny packages use the compatible version. If the CLI is available, run `npx remotion versions` as an additional check.
29
+ 5. Review the manifest and lockfile diff. Ensure all Remotion packages use one version and installed auxiliary packages use their recommended versions. If the CLI is available, run `npx remotion versions` as an additional check.
30
30
 
31
31
  The [Remotion releases](https://github.com/remotion-dev/remotion/releases) contain the changelog and may be useful for summarizing relevant changes after the upgrade.
@@ -1,7 +1,7 @@
1
1
  interface:
2
2
  display_name: '/remotion-upgrade'
3
3
  short_description: 'Upgrade Remotion and related dependencies'
4
- icon_small: './assets/remotion-icon.png'
5
- icon_large: './assets/remotion-icon.png'
4
+ icon_small: './assets/remotion-icon.svg'
5
+ icon_large: './assets/remotion-icon.svg'
6
6
  brand_color: '#0B84F3'
7
7
  default_prompt: '$remotion-upgrade: Upgrade my project.'
@@ -0,0 +1,4 @@
1
+ <svg width="100" height="100" viewBox="20 30 363 363" xmlns="http://www.w3.org/2000/svg">
2
+ <title>Remotion</title>
3
+ <path d="M148.332 92.9015C143.307 93.1742 139.259 93.9713 135.179 95.5236C133.144 96.2893 129.809 97.957 127.973 99.1108C120.295 103.925 114.443 111.162 111.391 119.584C110.782 121.252 109.136 126.57 108.076 130.23C101.018 154.7 97.0112 181.456 96.1511 209.776C96.0148 214.286 96.0148 225.026 96.1511 229.463C96.728 248.237 98.5216 265.187 101.773 282.472C103.095 289.468 105.213 298.866 106.44 303.135C108.947 311.809 114.065 319.193 121.344 324.605C126.221 328.234 131.759 330.668 137.895 331.863C140.853 332.44 144.755 332.702 147.629 332.514C151.604 332.251 159.491 331.192 165.9 330.049C194.786 324.899 221.469 315.679 245.666 302.485C260.99 294.125 274.09 285.074 286.729 274.092C299.326 263.163 310.066 251.405 319.516 238.21C321.708 235.158 322.81 233.375 323.911 231.131C326.743 225.341 328.075 219.583 328.064 213.143C328.064 207.143 326.932 201.815 324.488 196.361C323.313 193.728 322.191 191.84 319.674 188.253C310.402 175.048 300.112 163.542 287.568 152.361C268.122 135.034 245.026 120.822 219.235 110.302C213.644 108.026 208.138 106.022 201.509 103.851C187.475 99.2681 170.106 95.2929 155.411 93.3105C153.104 92.9959 149.968 92.8176 148.332 92.9015Z" fill="#0B84F3"/>
4
+ </svg>
@@ -1,8 +1,9 @@
1
- ---
2
- name: remotion-captions
3
- description: Transcribing, displaying and animating captions
4
- version: 4.0.519
5
- ---
1
+ ---
2
+ name: remotion-captions
3
+ description: Transcribing, displaying and animating captions
4
+ version: 4.0.529
5
+ ---
6
+
6
7
 
7
8
  All captions must be processed in JSON. The captions must use the [`Caption`](https://www.remotion.dev/docs/captions/caption.md) type which is the following:
8
9
 
@@ -1,7 +1,7 @@
1
1
  interface:
2
2
  display_name: '/remotion-captions'
3
3
  short_description: 'Transcribe, display, and animate captions'
4
- icon_small: './assets/remotion-icon.png'
5
- icon_large: './assets/remotion-icon.png'
4
+ icon_small: './assets/remotion-icon.svg'
5
+ icon_large: './assets/remotion-icon.svg'
6
6
  brand_color: '#0B84F3'
7
7
  default_prompt: '$remotion-captions: Transcribe my video and display captions'
@@ -0,0 +1,4 @@
1
+ <svg width="100" height="100" viewBox="20 30 363 363" xmlns="http://www.w3.org/2000/svg">
2
+ <title>Remotion</title>
3
+ <path d="M148.332 92.9015C143.307 93.1742 139.259 93.9713 135.179 95.5236C133.144 96.2893 129.809 97.957 127.973 99.1108C120.295 103.925 114.443 111.162 111.391 119.584C110.782 121.252 109.136 126.57 108.076 130.23C101.018 154.7 97.0112 181.456 96.1511 209.776C96.0148 214.286 96.0148 225.026 96.1511 229.463C96.728 248.237 98.5216 265.187 101.773 282.472C103.095 289.468 105.213 298.866 106.44 303.135C108.947 311.809 114.065 319.193 121.344 324.605C126.221 328.234 131.759 330.668 137.895 331.863C140.853 332.44 144.755 332.702 147.629 332.514C151.604 332.251 159.491 331.192 165.9 330.049C194.786 324.899 221.469 315.679 245.666 302.485C260.99 294.125 274.09 285.074 286.729 274.092C299.326 263.163 310.066 251.405 319.516 238.21C321.708 235.158 322.81 233.375 323.911 231.131C326.743 225.341 328.075 219.583 328.064 213.143C328.064 207.143 326.932 201.815 324.488 196.361C323.313 193.728 322.191 191.84 319.674 188.253C310.402 175.048 300.112 163.542 287.568 152.361C268.122 135.034 245.026 120.822 219.235 110.302C213.644 108.026 208.138 106.022 201.509 103.851C187.475 99.2681 170.106 95.2929 155.411 93.3105C153.104 92.9959 149.968 92.8176 148.332 92.9015Z" fill="#0B84F3"/>
4
+ </svg>
@@ -1,39 +1,57 @@
1
- ---
2
- name: remotion-create
3
- description: Create a new Remotion video
4
- version: 4.0.519
5
- ---
1
+ ---
2
+ name: remotion-create
3
+ description: Create a new Remotion video
4
+ version: 4.0.529
5
+ ---
6
+
6
7
 
7
8
  These are instructions for making a new Remotion project and composition.
8
- If this is not the next task, see [Remotion Best Practices](../remotion-best-practices/SKILL.md)
9
+ If this is not the next task, see Remotion Best Practices
9
10
 
10
11
  ## Scaffold a project
11
12
 
12
13
  If a project already exists, skip this.
13
14
  Ensure Node.js and Git is installed, and the current folder is appropriate for starting a new project.
14
15
 
15
- Scaffold one using:
16
+ Inspect the current folder, including hidden files, before choosing where to scaffold.
17
+
18
+ ### Empty folder
19
+
20
+ If it is empty, or contains only disposable operating-system metadata such as `.DS_Store`, create the project directly in the current folder.
21
+ Remove only those disposable metadata files first, since `create-video` rejects non-empty folders.
22
+ Do not treat all hidden files as disposable: files such as `.env` and directories such as `.git` are meaningful contents.
23
+
24
+ Scaffold in existing folder:
16
25
 
17
26
  ```bash
18
- npx create-video@latest --yes --blank --no-tailwind my-video
19
- cd my-video
27
+ npx create-video@latest --yes --blank --no-tailwind .
20
28
  npm i
21
29
  ```
22
30
 
31
+ ### Non-empty folder
32
+
33
+ If the current folder contains meaningful contents and no project already exists, scaffold into a new subfolder.
23
34
  Replace `my-video` with a suitable project name.
24
35
 
36
+
37
+ ```bash
38
+ npx create-video@latest --yes --blank --no-tailwind my-video
39
+ cd my-video
40
+ npm i
41
+ ```
42
+
25
43
  ## Designing a video
26
44
 
27
45
  Keep the scaffold and add React Markup.
28
- Follow [Remotion React Markup Best Practices](../remotion-markup/SKILL.md) and [Video Layout Rules](video-layout.md) for video-first layout and text sizing guidance.
46
+ Follow Remotion React Markup Best Practices and [Video Layout Rules](video-layout.md) for video-first layout and text sizing guidance.
29
47
 
30
48
  ## Is this a multi-scene video?
31
49
 
32
- If this is a video with multiple subsequence videos, follow guidance at [Multi-scene videos](../remotion-markup/multi-scene-video.md).
50
+ If this is a video with multiple subsequence videos, follow guidance at Multi-scene videos.
33
51
 
34
52
  ## Interactivity Best Practices
35
53
 
36
- By structuring the React Markup following [Remotion Interactivity Best Practices](../remotion-interactivity/SKILL.md), you allow the user to make edits in the Studio which write back to code.
54
+ By structuring the React Markup following Remotion Interactivity Best Practices, you allow the user to make edits in the Studio which write back to code.
37
55
 
38
56
  ## TailwindCSS
39
57
 
@@ -60,9 +78,9 @@ Only render if the user explicitly asks for it.
60
78
  npx remotion render
61
79
  ```
62
80
 
63
- For more options, see [Rendering](../remotion-render/SKILL.md).
81
+ For more options, see Rendering.
64
82
 
65
83
  ## Follow-up
66
84
 
67
85
  The video creation process has finished.
68
- For follow-up prompts, use [Remotion Best Practices](../remotion-best-practices/SKILL.md)
86
+ For follow-up prompts, use Remotion Best Practices
@@ -1,7 +1,7 @@
1
1
  interface:
2
2
  display_name: '/remotion-create'
3
3
  short_description: 'Create a new Remotion video project'
4
- icon_small: './assets/remotion-icon.png'
5
- icon_large: './assets/remotion-icon.png'
4
+ icon_small: './assets/remotion-icon.svg'
5
+ icon_large: './assets/remotion-icon.svg'
6
6
  brand_color: '#0B84F3'
7
7
  default_prompt: '$remotion-create: Create a Remotion video and make a promo for my product'
@@ -0,0 +1,4 @@
1
+ <svg width="100" height="100" viewBox="20 30 363 363" xmlns="http://www.w3.org/2000/svg">
2
+ <title>Remotion</title>
3
+ <path d="M148.332 92.9015C143.307 93.1742 139.259 93.9713 135.179 95.5236C133.144 96.2893 129.809 97.957 127.973 99.1108C120.295 103.925 114.443 111.162 111.391 119.584C110.782 121.252 109.136 126.57 108.076 130.23C101.018 154.7 97.0112 181.456 96.1511 209.776C96.0148 214.286 96.0148 225.026 96.1511 229.463C96.728 248.237 98.5216 265.187 101.773 282.472C103.095 289.468 105.213 298.866 106.44 303.135C108.947 311.809 114.065 319.193 121.344 324.605C126.221 328.234 131.759 330.668 137.895 331.863C140.853 332.44 144.755 332.702 147.629 332.514C151.604 332.251 159.491 331.192 165.9 330.049C194.786 324.899 221.469 315.679 245.666 302.485C260.99 294.125 274.09 285.074 286.729 274.092C299.326 263.163 310.066 251.405 319.516 238.21C321.708 235.158 322.81 233.375 323.911 231.131C326.743 225.341 328.075 219.583 328.064 213.143C328.064 207.143 326.932 201.815 324.488 196.361C323.313 193.728 322.191 191.84 319.674 188.253C310.402 175.048 300.112 163.542 287.568 152.361C268.122 135.034 245.026 120.822 219.235 110.302C213.644 108.026 208.138 106.022 201.509 103.851C187.475 99.2681 170.106 95.2929 155.411 93.3105C153.104 92.9959 149.968 92.8176 148.332 92.9015Z" fill="#0B84F3"/>
4
+ </svg>
@@ -1,11 +1,12 @@
1
- ---
2
- name: remotion-docs
3
- description: Search Remotion documentation
4
- version: 4.0.519
5
- ---
1
+ ---
2
+ name: remotion-docs
3
+ description: Search Remotion documentation
4
+ version: 4.0.529
5
+ ---
6
+
6
7
 
7
8
  This skill teaches you how to discover and read current Remotion documentation.
8
- If this is not relevant, load [Remotion Best Practices](../remotion-best-practices/SKILL.md) instead.
9
+ If this is not relevant, load Remotion Best Practices instead.
9
10
 
10
11
  ## Searching the docs
11
12
 
@@ -1,7 +1,7 @@
1
1
  interface:
2
2
  display_name: '/remotion-docs'
3
3
  short_description: 'Search current Remotion documentation'
4
- icon_small: './assets/remotion-icon.png'
5
- icon_large: './assets/remotion-icon.png'
4
+ icon_small: './assets/remotion-icon.svg'
5
+ icon_large: './assets/remotion-icon.svg'
6
6
  brand_color: '#0B84F3'
7
7
  default_prompt: '$remotion-docs: What server-side rendering options does Remotion have?'
@@ -0,0 +1,4 @@
1
+ <svg width="100" height="100" viewBox="20 30 363 363" xmlns="http://www.w3.org/2000/svg">
2
+ <title>Remotion</title>
3
+ <path d="M148.332 92.9015C143.307 93.1742 139.259 93.9713 135.179 95.5236C133.144 96.2893 129.809 97.957 127.973 99.1108C120.295 103.925 114.443 111.162 111.391 119.584C110.782 121.252 109.136 126.57 108.076 130.23C101.018 154.7 97.0112 181.456 96.1511 209.776C96.0148 214.286 96.0148 225.026 96.1511 229.463C96.728 248.237 98.5216 265.187 101.773 282.472C103.095 289.468 105.213 298.866 106.44 303.135C108.947 311.809 114.065 319.193 121.344 324.605C126.221 328.234 131.759 330.668 137.895 331.863C140.853 332.44 144.755 332.702 147.629 332.514C151.604 332.251 159.491 331.192 165.9 330.049C194.786 324.899 221.469 315.679 245.666 302.485C260.99 294.125 274.09 285.074 286.729 274.092C299.326 263.163 310.066 251.405 319.516 238.21C321.708 235.158 322.81 233.375 323.911 231.131C326.743 225.341 328.075 219.583 328.064 213.143C328.064 207.143 326.932 201.815 324.488 196.361C323.313 193.728 322.191 191.84 319.674 188.253C310.402 175.048 300.112 163.542 287.568 152.361C268.122 135.034 245.026 120.822 219.235 110.302C213.644 108.026 208.138 106.022 201.509 103.851C187.475 99.2681 170.106 95.2929 155.411 93.3105C153.104 92.9959 149.968 92.8176 148.332 92.9015Z" fill="#0B84F3"/>
4
+ </svg>
@@ -1,8 +1,9 @@
1
- ---
2
- name: remotion-interactivity
3
- description: Structure Remotion markup for interactivity
4
- version: 4.0.519
5
- ---
1
+ ---
2
+ name: remotion-interactivity
3
+ description: Structure Remotion markup for interactivity
4
+ version: 4.0.529
5
+ ---
6
+
6
7
 
7
8
  By writing Remotion markup in a specific way, the Remotion Studio is able to recognize the structure of the code and makes it interactive:
8
9
 
@@ -147,6 +148,72 @@ const translateY = interpolate(frame, [0, 30], [0, 120]); // ❌ Math should be
147
148
  />
148
149
  ```
149
150
 
151
+ ## Keep SVG paths editable with `Interactive.Path`
152
+
153
+ Use `<Interactive.Path>` from `remotion` instead of `<path>` inside an SVG to make the path visually editable.
154
+
155
+ Install `@remotion/paths` for path interpolation and Studio path keyframes:
156
+
157
+ ```sh
158
+ bunx remotion add @remotion/paths
159
+ ```
160
+
161
+ If the geometry is meant to be static, put the path string directly in the `d` prop. Do not extract it into a constant.
162
+
163
+ ```tsx title="Editable static path"
164
+ import {Interactive} from 'remotion';
165
+
166
+ <Interactive.Svg width={300} height={300} viewBox="0 0 300 300">
167
+ <Interactive.Path
168
+ name="Triangle"
169
+ d="M 40 40 L 260 40 L 150 260 Z"
170
+ fill="#0b84f3"
171
+ />
172
+ </Interactive.Svg>
173
+ ```
174
+
175
+ ### Morph paths using inline `interpolatePaths()`
176
+
177
+ Use `interpolatePaths()` from `@remotion/paths` directly in `d`.
178
+ It accepts a frame, an input range, an equally sized array of path strings, and options for easing, extrapolation, and posterization.
179
+ Keep the output paths, ranges, and options inline, following the same input-range rules as `interpolate()` above.
180
+ Do not use `interpolatePath()` API or extract the interpolated result into a variable when the path keyframes should remain editable in Studio.
181
+
182
+ ```tsx title="Editable path keyframes"
183
+ import {interpolatePaths} from '@remotion/paths';
184
+ import {Easing, Interactive, useCurrentFrame} from 'remotion';
185
+
186
+ export const MorphingPath = () => {
187
+ const frame = useCurrentFrame();
188
+
189
+ return (
190
+ <Interactive.Svg width={300} height={300} viewBox="0 0 300 300">
191
+ <Interactive.Path
192
+ name="Morphing triangle"
193
+ d={interpolatePaths(
194
+ frame,
195
+ [0, 30, 60],
196
+ [
197
+ 'M 40 40 L 260 40 L 150 260 Z',
198
+ 'M 40 150 L 150 40 L 260 150 Z',
199
+ 'M 40 260 L 150 40 L 260 260 Z',
200
+ ],
201
+ {
202
+ easing: Easing.bezier(0.42, 0, 0.58, 1),
203
+ extrapolateLeft: 'clamp',
204
+ extrapolateRight: 'clamp',
205
+ },
206
+ )}
207
+ fill="#0b84f3"
208
+ />
209
+ </Interactive.Svg>
210
+ );
211
+ };
212
+ ```
213
+
214
+ Studio can edit the path at the current frame, add or move keyframes, and adjust their easing.
215
+ Use `strokeDasharray` and `strokeDashoffset` to evolve paths.
216
+
150
217
  ## Use `scale`, `translate`, `rotate` CSS properties
151
218
 
152
219
  Avoid the `transform` CSS property.
@@ -239,9 +306,11 @@ Render separate elements if one version should have effects and another should n
239
306
 
240
307
  ## Making your own component interactive
241
308
 
309
+ When using `Interactive.withSchema()`, include `Interactive.baseSchema` in the schema so standard timeline controls such as trimming and visibility remain available.
310
+
242
311
  To make a custom userland component interactive, use:
243
312
  [Make a component interactive](https://www.remotion.dev/docs/studio/make-component-interactive.md)
244
313
 
245
314
  ## Video editing
246
315
 
247
- If a Remotion component mainly consists of video and audio clips, see [Video editing](../remotion-markup/video-editing.md) for best practices on how to structure Remotion markup so the clips are interactively editable in the timeline.
316
+ If a Remotion component mainly consists of video and audio clips, see Video editing for best practices on how to structure Remotion markup so the clips are interactively editable in the timeline.
@@ -1,7 +1,7 @@
1
1
  interface:
2
2
  display_name: '/remotion-interactivity'
3
3
  short_description: 'Make compositions editable in Remotion Studio'
4
- icon_small: './assets/remotion-icon.png'
5
- icon_large: './assets/remotion-icon.png'
4
+ icon_small: './assets/remotion-icon.svg'
5
+ icon_large: './assets/remotion-icon.svg'
6
6
  brand_color: '#0B84F3'
7
7
  default_prompt: '$remotion-interactivity: Make the markup in MyComp.tsx interactive'
@@ -0,0 +1,4 @@
1
+ <svg width="100" height="100" viewBox="20 30 363 363" xmlns="http://www.w3.org/2000/svg">
2
+ <title>Remotion</title>
3
+ <path d="M148.332 92.9015C143.307 93.1742 139.259 93.9713 135.179 95.5236C133.144 96.2893 129.809 97.957 127.973 99.1108C120.295 103.925 114.443 111.162 111.391 119.584C110.782 121.252 109.136 126.57 108.076 130.23C101.018 154.7 97.0112 181.456 96.1511 209.776C96.0148 214.286 96.0148 225.026 96.1511 229.463C96.728 248.237 98.5216 265.187 101.773 282.472C103.095 289.468 105.213 298.866 106.44 303.135C108.947 311.809 114.065 319.193 121.344 324.605C126.221 328.234 131.759 330.668 137.895 331.863C140.853 332.44 144.755 332.702 147.629 332.514C151.604 332.251 159.491 331.192 165.9 330.049C194.786 324.899 221.469 315.679 245.666 302.485C260.99 294.125 274.09 285.074 286.729 274.092C299.326 263.163 310.066 251.405 319.516 238.21C321.708 235.158 322.81 233.375 323.911 231.131C326.743 225.341 328.075 219.583 328.064 213.143C328.064 207.143 326.932 201.815 324.488 196.361C323.313 193.728 322.191 191.84 319.674 188.253C310.402 175.048 300.112 163.542 287.568 152.361C268.122 135.034 245.026 120.822 219.235 110.302C213.644 108.026 208.138 106.022 201.509 103.851C187.475 99.2681 170.106 95.2929 155.411 93.3105C153.104 92.9959 149.968 92.8176 148.332 92.9015Z" fill="#0B84F3"/>
4
+ </svg>
@@ -1,8 +1,9 @@
1
- ---
2
- name: remotion-maps
3
- description: Remotion Map animation knowledge
4
- version: 4.0.519
5
- ---
1
+ ---
2
+ name: remotion-maps
3
+ description: Remotion Map animation knowledge
4
+ version: 4.0.529
5
+ ---
6
+
6
7
 
7
8
  # Remotion Maps
8
9
 
@@ -1,7 +1,7 @@
1
1
  interface:
2
2
  display_name: '/remotion-maps'
3
3
  short_description: 'Create animated maps in Remotion videos'
4
- icon_small: './assets/remotion-icon.png'
5
- icon_large: './assets/remotion-icon.png'
4
+ icon_small: './assets/remotion-icon.svg'
5
+ icon_large: './assets/remotion-icon.svg'
6
6
  brand_color: '#0B84F3'
7
7
  default_prompt: '$remotion-maps: Animate a dot from Zurich to New York.'
@@ -0,0 +1,4 @@
1
+ <svg width="100" height="100" viewBox="20 30 363 363" xmlns="http://www.w3.org/2000/svg">
2
+ <title>Remotion</title>
3
+ <path d="M148.332 92.9015C143.307 93.1742 139.259 93.9713 135.179 95.5236C133.144 96.2893 129.809 97.957 127.973 99.1108C120.295 103.925 114.443 111.162 111.391 119.584C110.782 121.252 109.136 126.57 108.076 130.23C101.018 154.7 97.0112 181.456 96.1511 209.776C96.0148 214.286 96.0148 225.026 96.1511 229.463C96.728 248.237 98.5216 265.187 101.773 282.472C103.095 289.468 105.213 298.866 106.44 303.135C108.947 311.809 114.065 319.193 121.344 324.605C126.221 328.234 131.759 330.668 137.895 331.863C140.853 332.44 144.755 332.702 147.629 332.514C151.604 332.251 159.491 331.192 165.9 330.049C194.786 324.899 221.469 315.679 245.666 302.485C260.99 294.125 274.09 285.074 286.729 274.092C299.326 263.163 310.066 251.405 319.516 238.21C321.708 235.158 322.81 233.375 323.911 231.131C326.743 225.341 328.075 219.583 328.064 213.143C328.064 207.143 326.932 201.815 324.488 196.361C323.313 193.728 322.191 191.84 319.674 188.253C310.402 175.048 300.112 163.542 287.568 152.361C268.122 135.034 245.026 120.822 219.235 110.302C213.644 108.026 208.138 106.022 201.509 103.851C187.475 99.2681 170.106 95.2929 155.411 93.3105C153.104 92.9959 149.968 92.8176 148.332 92.9015Z" fill="#0B84F3"/>
4
+ </svg>
@@ -63,7 +63,7 @@ import 'maplibre-gl/dist/maplibre-gl.css';
63
63
  ```tsx
64
64
  import {useEffect, useRef, useState} from 'react';
65
65
  import {AbsoluteFill, useDelayRender, useVideoConfig} from 'remotion';
66
- import maplibregl from 'maplibre-gl';
66
+ import * as maplibregl from 'maplibre-gl';
67
67
  import 'maplibre-gl/dist/maplibre-gl.css';
68
68
 
69
69
  const zurich: [number, number] = [8.5417, 47.3769];
@@ -79,6 +79,15 @@ export const MyComposition = () => {
79
79
  return;
80
80
  }
81
81
 
82
+ maplibregl.setWorkerUrl(
83
+ URL.createObjectURL(
84
+ new Blob(
85
+ [`import "https://unpkg.com/maplibre-gl@${maplibregl.getVersion()}/dist/maplibre-gl-worker.mjs";`],
86
+ {type: 'text/javascript'},
87
+ ),
88
+ ),
89
+ );
90
+
82
91
  const mapInstance = new maplibregl.Map({
83
92
  container: containerRef.current,
84
93
  style: 'https://demotiles.maplibre.org/style.json',
@@ -131,7 +140,8 @@ import {
131
140
  useDelayRender,
132
141
  useVideoConfig,
133
142
  } from 'remotion';
134
- import maplibregl, {type GeoJSONSource, type Map} from 'maplibre-gl';
143
+ import * as maplibregl from 'maplibre-gl';
144
+ import {type GeoJSONSource, type Map} from 'maplibre-gl';
135
145
  import 'maplibre-gl/dist/maplibre-gl.css';
136
146
 
137
147
  const zurich: [number, number] = [8.5417, 47.3769];
@@ -214,6 +224,15 @@ export const MyComposition = () => {
214
224
  return;
215
225
  }
216
226
 
227
+ maplibregl.setWorkerUrl(
228
+ URL.createObjectURL(
229
+ new Blob(
230
+ [`import "https://unpkg.com/maplibre-gl@${maplibregl.getVersion()}/dist/maplibre-gl-worker.mjs";`],
231
+ {type: 'text/javascript'},
232
+ ),
233
+ ),
234
+ );
235
+
217
236
  const mapInstance = new maplibregl.Map({
218
237
  container: containerRef.current,
219
238
  style: 'https://demotiles.maplibre.org/style.json',
@@ -34,4 +34,4 @@ export const StaticMap: React.FC = () => {
34
34
 
35
35
  ## Overlays and Interactivity
36
36
 
37
- Follow [Remotion Interactivity](../../../remotion-interactivity/SKILL.md) best practices and [Remotion Markup Best practices](../../../remotion-markup/SKILL.md) for elements.
37
+ Follow Remotion Interactivity best practices and Remotion Markup Best practices for elements.