Remotion

calesthio/OpenMontage/.agents/skills/remotion

by calesthio9327439db69021ab4b0e2776729bf3b58fdb5a87No license65K starsListed Oct 9, 2026Updated Oct 9, 2026Repository updated 5 days ago

Toolkit-specific Remotion patterns — custom transitions, shared components, and project conventions. For core Remotion framework knowledge (hooks, animations, rendering, etc.), see the `remotion-official` skill.

AI-generated overview

Reference for toolkit-specific Remotion video patterns: shared components, custom transitions and project conventions.

What it does
This skill documents toolkit-specific Remotion patterns for building videos, covering reusable components such as AnimatedBackground, SlideTransition and Label, and a custom transitions library including glitch, lightLeak, clockWipe and checkerboard. It lists transition options, duration guidelines, frame-based animation best practices and project timing conventions. It also points to a reference file for detailed API documentation.
When to use it
Use it when authoring or editing Remotion video compositions that rely on this toolkit's shared components or custom scene transitions. It is also useful for checking transition durations, timing conventions and rendering best practices.
Requirements
Requires a Remotion project with the @remotion/transitions package and the toolkit's lib/components and lib/transitions directories. It ships no scripts; it is instructions plus a reference document, and it notes that Remotion may require a commercial license.

Remotion — Toolkit Extensions

Core Remotion knowledge lives in .claude/skills/remotion-official/ (synced from the official remotion-dev/skills repo). This file covers toolkit-specific patterns only.

Shared Components

Reusable video components in lib/components/. Import in templates via:

tsx
import { AnimatedBackground, SlideTransition, Label } from '../../../../lib/components';
ComponentPurpose
AnimatedBackgroundFloating shapes background (variants: subtle, tech, warm, dark)
SlideTransitionScene transitions (fade, zoom, slide-up, blur-fade)
LabelFloating label badge with optional JIRA reference
VignetteCinematic edge darkening overlay
LogoWatermarkCorner logo branding
SplitScreenSide-by-side video comparison
NarratorPiPPicture-in-picture presenter overlay
Envelope3D envelope with opening flap animation
PointingHandAnimated hand emoji with slide-in and pulse
MazeDecorationAnimated isometric grid decoration for corners

Custom Transitions

The toolkit includes a transitions library at lib/transitions/ for scene-to-scene effects beyond the official @remotion/transitions package.

Using TransitionSeries

tsx
import { TransitionSeries, linearTiming } from '@remotion/transitions';// Import custom transitions from lib (adjust path based on your project location)import { glitch, lightLeak, clockWipe, checkerboard } from '../../../../lib/transitions';// Or import from @remotion/transitions for official onesimport { slide, fade } from '@remotion/transitions/slide';
<TransitionSeries>  <TransitionSeries.Sequence durationInFrames={90}>    <TitleSlide />  </TransitionSeries.Sequence>  <TransitionSeries.Transition    presentation={glitch({ intensity: 0.8 })}    timing={linearTiming({ durationInFrames: 30 })}  />  <TransitionSeries.Sequence durationInFrames={120}>    <ContentSlide />  </TransitionSeries.Sequence></TransitionSeries>

Available Custom Transitions

TransitionOptionsBest For
glitch()intensity, slices, rgbShiftTech demos, edgy reveals, cyberpunk
rgbSplit()direction, displacementModern tech, energetic transitions
zoomBlur()direction, blurAmountCTAs, high-energy moments, impact
lightLeak()temperature, directionCelebrations, film aesthetic, warm moments
clockWipe()startAngle, direction, segmentsTime-related content, playful reveals
pixelate()maxBlockSize, gridSize, scanlines, glitchArtifacts, randomnessRetro/gaming, digital transformations
checkerboard()gridSize, pattern, stagger, squareAnimationPlayful reveals, structured transitions

Checkerboard patterns: sequential, random, diagonal, alternating, spiral, rows, columns, center-out, corners-in

Transition Examples

tsx
// Tech/cyberpunk feelglitch({ intensity: 0.8, slices: 8, rgbShift: true })
// Warm celebrationlightLeak({ temperature: 'warm', direction: 'right' })
// High energy zoomzoomBlur({ direction: 'in', blurAmount: 20 })
// Chromatic aberrationrgbSplit({ direction: 'diagonal', displacement: 30 })
// Clock sweep revealclockWipe({ direction: 'clockwise', startAngle: 0 })
// Retro pixelationpixelate({ maxBlockSize: 50, glitchArtifacts: true })
// Checkerboard patternscheckerboard({ pattern: 'diagonal', gridSize: 8 })checkerboard({ pattern: 'spiral', gridSize: 10 })checkerboard({ pattern: 'center-out', squareAnimation: 'scale' })

Transition Duration Guidelines

TypeFramesNotes
Quick cut15-20Fast, punchy
Standard30-45Most common
Dramatic50-60Slow reveals
Glitch effects20-30Should feel sudden
Light leak45-60Needs time to sweep

Preview Transitions

Run the showcase gallery to see all transitions:

bash
cd showcase/transitions && npm run studio

Toolkit Best Practices

  1. Frame-based animations only — Avoid CSS transitions/animations; they cause flickering during render
  2. Use fps from useVideoConfig() — Make animations frame-rate independent
  3. Clamp interpolations — Use extrapolateRight: 'clamp' to prevent runaway values
  4. Use OffthreadVideo — Better performance than <Video> for complex compositions
  5. delayRender for async — Always block rendering until data is ready
  6. staticFile for assets — Reference files from public/ folder correctly
  7. All projects use 30fps — Timing: frames = seconds × 30
  8. playbackRate must be constant — For variable/extreme speeds, pre-process with FFmpeg

Project Timing Conventions

Scene TypeDurationNotes
Title3-5s (90-150f)Logo + headline
Overview10-20s3-5 bullet points
Demo10-30sAdjust playbackRate to fit
Stats8-12s3-4 stat cards
Credits5-10sQuick fade

Pacing: ~150 words/minute for voiceover. Voiceover drives timing.

Advanced API

For detailed API documentation on all hooks, components, renderer, Lambda, and Player APIs, see reference.md [blocked].

License Note

Remotion has a special license. Companies may need to obtain a license for commercial use. Check https://remotion.dev/license


Feedback & Contributions

If this skill is missing information or could be improved:

  • Missing a pattern? Describe what you needed
  • Found an error? Let me know what's wrong
  • Want to contribute? I can help you:
    1. Update this skill with improvements
    2. Create a PR to github.com/digitalsamba/claude-code-video-toolkit

Just say "improve this skill" and I'll guide you through updating .claude/skills/remotion/SKILL.md.

Source and attribution

Source:calesthio/OpenMontagein.agents/skills/remotionat commit9327439

License: No license

Content belongs to its original authors. SourceWeft indexes it from a public repository.

Report or request removal