mcpField
R
remotion-transitions

remotion-transitions

github.com/ashad001Creative & media70276 installsUpdated 33w ago
Repository

About remotion-transitions

remotion-transitions is a skill for developers building video animations in Remotion. It explains the TransitionPresentation API and provides six transition examples alongside guidance on animation timing.

Key features

  1. 01Explains the TransitionPresentation API
  2. 02Includes six transition examples
  3. 03Covers easing and stagger formulas
  4. 04Describes spring configs and clamping

Use cases

  1. 01Build custom transitions between Remotion scenes
  2. 02Adjust transition timing and easing
  3. 03Adapt an example transition effect

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/ashad001/remotion-transitions --skill remotion-transitions

After installing, type/remotion-transitionsin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

README.md
skills-lock.json
LICENSE
CHANGELOG.md
.claude-plugin/
plugin.json
references/
custom-transition-pattern.md
animation-math.md
transition-catalog.md

Details

From the project README

Remotion Custom Transitions

This skill teaches you how to build production-grade, high-energy custom transitions in Remotion using the TransitionPresentation API — the same pattern used in Fyltr's Instagram Reel campaign.

Quick Reference

  • Custom Transition Pattern — The TransitionPresentation API, the exact component shape, and how timing works
  • Transition Catalog — 6 battle-tested transitions with full source: Striped Slam, Zoom Punch, Diagonal Reveal, Emerald Burst, Vertical Shutter, Glitch Slam
  • Animation Math — Easing functions, stagger formulas, spring configs, and the clamp extrapolation pattern used throughout

Core Concept

Remotion's @remotion/transitions package exposes a TransitionPresentation type. You implement a component that receives:

  • presentationProgress — 0 at transition start → 1 at transition end
  • presentationDirection — "exiting" (old scene) or "entering" (new scene)
  • children — the scene being wrapped

The same component wraps both scenes simultaneously. You animate different things depending on direction.

Golden Rules

  1. Never use CSS transitions/animations — all motion via interpolate() / spring() driven by presentationProgress
  2. Never use useCurrentFrame() inside a transition component — use presentationProgress only
  3. Always return { component, props: {} } — the props object must exist even if empty
  4. Create instances outside components at module level to keep them stable across re-renders
  5. Pair with linearTiming (for dramatic frame-perfect transitions) or springTiming (for springy physics)

When to Load References

Comments

Markdown supported