When to use
Use this skills whenever you are dealing with Remotion code to obtain the domain-specific knowledge.
Captions
When dealing with captions or subtitles, load the ./rules/subtitles.md file for more information.
Using FFmpeg
For some video operations, such as trimming videos or detecting silence, FFmpeg should be used. Load the ./rules/ffmpeg.md file for more information.
Audio visualization
When needing to visualize audio (spectrum bars, waveforms, bass-reactive effects), load the ./rules/audio-visualization.md file for more information.
How to use
When you need to capture a still, render a video segment, or list compositions via the CLI, load the CLI rule. Read individual rule files for detailed explanations and code examples:
- rules/3d.md - 3D content in Remotion using Three.js and React Three Fiber
- rules/animations.md - Fundamental animation skills for Remotion
- rules/assets.md - Importing images, videos, audio, and fonts into Remotion
- rules/audio.md - Using audio and sound in Remotion - importing, trimming, volume, speed, pitch
- rules/calculate-metadata.md - Dynamically set composition duration, dimensions, and props
- rules/can-decode.md - Check if a video can be decoded by the browser using Mediabunny
- rules/charts.md - Chart and data visualization patterns for Remotion (bar, pie, line, stock charts)
- rules/compositions.md - Defining compositions, stills, folders, default props and dynamic metadata
- rules/cli.md - Using npx remotion CLI: still (screenshot at frame), render (video/frame range), compositions (list); output paths
- rules/extract-frames.md - Extract frames from videos at specific timestamps using Mediabunny
- rules/fonts.md - Loading Google Fonts and local fonts in Remotion
- rules/get-audio-duration.md - Getting the duration of an audio file in seconds with Mediabunny
- rules/get-video-dimensions.md - Getting the width and height of a video file with Mediabunny
- rules/get-video-duration.md - Getting the duration of a video file in seconds with Mediabunny
- rules/gifs.md - Displaying GIFs synchronized with Remotion's timeline
- rules/images.md - Embedding images in Remotion using the Img component
- rules/light-leaks.md - Light leak overlay effects using @remotion/light-leaks
- rules/lottie.md - Embedding Lottie animations in Remotion
- rules/measuring-dom-nodes.md - Measuring DOM element dimensions in Remotion
- rules/measuring-text.md - Measuring text dimensions, fitting text to containers, and checking overflow
- rules/sequencing.md - Sequencing patterns for Remotion - delay, trim, limit duration of items
- rules/tailwind.md - Using TailwindCSS in Remotion
- rules/text-animations.md - Typography and text animation patterns for Remotion
- rules/timing.md - Interpolation curves in Remotion - linear, easing, spring animations
- rules/transitions.md - Scene transition patterns for Remotion
- rules/transparent-videos.md - Rendering out a video with transparency
- rules/trimming.md - Trimming patterns for Remotion - cut the beginning or end of animations
- rules/videos.md - Embedding videos in Remotion - trimming, volume, speed, looping, pitch
- rules/parameters.md - Make a video parametrizable by adding a Zod schema
- rules/maps.md - Add a map using Mapbox and animate it
- rules/voiceover.md - Adding AI-generated voiceover to Remotion compositions using ElevenLabs TTS
1---2name: remotion-best-practices3description: Best practices for Remotion - Video creation in React4---56## When to use78Use this skills whenever you are dealing with Remotion code to obtain the domain-specific knowledge.910## Captions1112When dealing with captions or subtitles, load the [./rules/subtitles.md](./rules/subtitles.md) file for more information.1314## Using FFmpeg1516For some video operations, such as trimming videos or detecting silence, FFmpeg should be used. Load the [./rules/ffmpeg.md](./rules/ffmpeg.md) file for more information.1718## Audio visualization1920When needing to visualize audio (spectrum bars, waveforms, bass-reactive effects), load the [./rules/audio-visualization.md](./rules/audio-visualization.md) file for more information.2122## How to use2324When you need to capture a still, render a video segment, or list compositions via the CLI, load the CLI rule. Read individual rule files for detailed explanations and code examples:2526- [rules/3d.md](rules/3d.md) - 3D content in Remotion using Three.js and React Three Fiber27- [rules/animations.md](rules/animations.md) - Fundamental animation skills for Remotion28- [rules/assets.md](rules/assets.md) - Importing images, videos, audio, and fonts into Remotion29- [rules/audio.md](rules/audio.md) - Using audio and sound in Remotion - importing, trimming, volume, speed, pitch30- [rules/calculate-metadata.md](rules/calculate-metadata.md) - Dynamically set composition duration, dimensions, and props31- [rules/can-decode.md](rules/can-decode.md) - Check if a video can be decoded by the browser using Mediabunny32- [rules/charts.md](rules/charts.md) - Chart and data visualization patterns for Remotion (bar, pie, line, stock charts)33- [rules/compositions.md](rules/compositions.md) - Defining compositions, stills, folders, default props and dynamic metadata34- [rules/cli.md](rules/cli.md) - Using npx remotion CLI: still (screenshot at frame), render (video/frame range), compositions (list); output paths35- [rules/extract-frames.md](rules/extract-frames.md) - Extract frames from videos at specific timestamps using Mediabunny36- [rules/fonts.md](rules/fonts.md) - Loading Google Fonts and local fonts in Remotion37- [rules/get-audio-duration.md](rules/get-audio-duration.md) - Getting the duration of an audio file in seconds with Mediabunny38- [rules/get-video-dimensions.md](rules/get-video-dimensions.md) - Getting the width and height of a video file with Mediabunny39- [rules/get-video-duration.md](rules/get-video-duration.md) - Getting the duration of a video file in seconds with Mediabunny40- [rules/gifs.md](rules/gifs.md) - Displaying GIFs synchronized with Remotion's timeline41- [rules/images.md](rules/images.md) - Embedding images in Remotion using the Img component42- [rules/light-leaks.md](rules/light-leaks.md) - Light leak overlay effects using @remotion/light-leaks43- [rules/lottie.md](rules/lottie.md) - Embedding Lottie animations in Remotion44- [rules/measuring-dom-nodes.md](rules/measuring-dom-nodes.md) - Measuring DOM element dimensions in Remotion45- [rules/measuring-text.md](rules/measuring-text.md) - Measuring text dimensions, fitting text to containers, and checking overflow46- [rules/sequencing.md](rules/sequencing.md) - Sequencing patterns for Remotion - delay, trim, limit duration of items47- [rules/tailwind.md](rules/tailwind.md) - Using TailwindCSS in Remotion48- [rules/text-animations.md](rules/text-animations.md) - Typography and text animation patterns for Remotion49- [rules/timing.md](rules/timing.md) - Interpolation curves in Remotion - linear, easing, spring animations50- [rules/transitions.md](rules/transitions.md) - Scene transition patterns for Remotion51- [rules/transparent-videos.md](rules/transparent-videos.md) - Rendering out a video with transparency52- [rules/trimming.md](rules/trimming.md) - Trimming patterns for Remotion - cut the beginning or end of animations53- [rules/videos.md](rules/videos.md) - Embedding videos in Remotion - trimming, volume, speed, looping, pitch54- [rules/parameters.md](rules/parameters.md) - Make a video parametrizable by adding a Zod schema55- [rules/maps.md](rules/maps.md) - Add a map using Mapbox and animate it56- [rules/voiceover.md](rules/voiceover.md) - Adding AI-generated voiceover to Remotion compositions using ElevenLabs TTS