Skills › Content & Creative › Video & audio
remotion-best-practices
Best practices for Remotion – Video creation in React
The full skill
—
name: remotion-best-practices
description: Best practices for Remotion – Video creation in React
metadata:
tags: remotion, video, react, animation, composition
—
## When to use
Use this skills whenever you are dealing with Remotion code to obtain the domain-specific knowledge.
## New project setup
When in an empty folder or workspace with no existing Remotion project, scaffold one using:
“`bash
npx create-video@latest –yes –blank –no-tailwind my-video
“`
Replace `my-video` with a suitable project name.
## Starting preview
Start the Remotion Studio to preview a video:
“`bash
npx remotion studio
“`
## Optional: one-frame render check
You can render a single frame with the CLI to sanity-check layout, colors, or timing.
Skip it for trivial edits, pure refactors, or when you already have enough confidence from Studio or prior renders.
“`bash
npx remotion still [composition-id] –scale=0.25 –frame=30
“`
At 30 fps, `–frame=30` is the one-second mark (`–frame` is zero-based).
## Captions
When dealing with captions or subtitles, load the [./rules/subtitles.md](./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](./rules/ffmpeg.md) file for more information.
## Silence detection
When needing to detect and trim silent segments from video or audio files, load the [./rules/silence-detection.md](./rules/silence-detection.md) file.
## Audio visualization
When needing to visualize audio (spectrum bars, waveforms, bass-reactive effects), load the [./rules/audio-visualization.md](./rules/audio-visualization.md) file for more information.
## Sound effects
When needing to use sound effects, load the [./rules/sfx.md](./rules/sfx.md) file for more information.
## How to use
Read individual rule files for detailed explanations and code examples:
– [rules/3d.md](rules/3d.md) – 3D content in Remotion using Three.js and React Three Fiber
– [rules/animations.md](rules/animations.md) – Fundamental animation skills for Remotion
– [rules/assets.md](rules/assets.md) – Importing images, videos, audio, and fonts into Remotion
– [rules/audio.md](rules/audio.md) – Using audio and sound in Remotion – importing, trimming, volume, speed, pitch
– [rules/calculate-metadata.md](rules/calculate-metadata.md) – Dynamically set composition duration, dimensions, and props
– [rules/can-decode.md](rules/can-decode.md) – Check if a video can be decoded by the browser using Mediabunny
– [rules/charts.md](rules/charts.md) – Chart and data visualization patterns for Remotion (bar, pie, line, stock charts)
– [rules/compositions.md](rules/compositions.md) – Defining compositions, stills, folders, default props and dynamic metadata
– [rules/extract-frames.md](rules/extract-frames.md) – Extract frames from videos at specific timestamps using Mediabunny
– [rules/fonts.md](rules/fonts.md) – Loading Google Fonts and local fonts in Remotion
– [rules/get-audio-duration.md](rules/get-audio-duration.md) – Getting the duration of an audio file in seconds with Mediabunny
– [rules/get-video-dimensions.md](rules/get-video-dimensions.md) – Getting the width and height of a video file with Mediabunny
– [rules/get-video-duration.md](rules/get-video-duration.md) – Getting the duration of a video file in seconds with Mediabunny
– [rules/gifs.md](rules/gifs.md) – Displaying GIFs synchronized with Remotion's timeline
– [rules/images.md](rules/images.md) – Embedding images in Remotion using the Img component
– [rules/light-leaks.md](rules/light-leaks.md) – Light leak overlay effects using @remotion/light-leaks
– [rules/lottie.md](rules/lottie.md) – Embedding Lottie animations in Remotion
– [rules/measuring-dom-nodes.md](rules/measuring-dom-nodes.md) – Measuring DOM element dimensions in Remotion
– [rules/measuring-text.md](rules/measuring-text.md) – Measuring text dimensions, fitting text to containers, and checking overflow
– [rules/sequencing.md](rules/sequencing.md) – Sequencing patterns for Remotion – delay, trim, limit duration of items
– [rules/tailwind.md](rules/tailwind.md) – Using TailwindCSS in Remotion
– [rules/text-animations.md](rules/text-animations.md) – Typography and text animation patterns for Remotion
– [rules/timing.md](rules/timing.md) – Timing with interpolate and Bézier easing, springs
– [rules/transitions.md](rules/transitions.md) – Scene transition patterns for Remotion
– [rules/transparent-videos.md](rules/transparent-videos.md) – Rendering out a video with transparency
– [rules/trimming.md](rules/trimming.md) – Trimming patterns for Remotion – cut the beginning or end of animations
– [rules/videos.md](rules/videos.md) – Embedding videos in Remotion – trimming, volume, speed, looping, pitch
– [rules/parameters.md](rules/parameters.md) – Make a video parametrizable by adding a Zod schema
– [rules/maps.md](rules/maps.md) – Add a map using Mapbox and animate it
– [rules/silence-detection.md](rules/silence-detection.md) – Adaptive silence detection using FFmpeg loudnorm and silencedetect
– [rules/voiceover.md](rules/voiceover.md) – Adding AI-generated voiceover to Remotion compositions using ElevenLabs TTS