remotion-transitions
This skill should be used when the user asks to create custom Remotion transitions, asks about "cool transitions", "cinematic transitions", "striped transitions", "glitch transitions", "custom TransitionPresentation", or wants to build scene-to-scene transitions in Remotion beyond the built-in library. Also triggers for "how to make transitions in Remotion", "custom transition", "high-energy transitions", "energy transitions", "branded transitions".
The English summary is being prepared. Showing the original description.
See how to installFiles included (9)
- SKILL.md2.6 KB
- .claude-plugin/plugin.json726 B
- CHANGELOG.md676 B
- LICENSE1.0 KB
- README.md2.5 KB
- references/animation-math.md5.1 KB
- references/custom-transition-pattern.md4.3 KB
- references/transition-catalog.md14.0 KB
- skills-lock.json242 B
SKILL.md (original)
Review the instructions the agent will receive before you install.
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
TransitionPresentationAPI, 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
clampextrapolation pattern used throughout
Core Concept
Remotion's @remotion/transitions package exposes a TransitionPresentation type. You implement a component that receives:
presentationProgress—0at transition start →1at transition endpresentationDirection—"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
- Never use CSS transitions/animations — all motion via
interpolate()/spring()driven bypresentationProgress - Never use
useCurrentFrame()inside a transition component — usepresentationProgressonly - Always return
{ component, props: {} }— thepropsobject must exist even if empty - Create instances outside components at module level to keep them stable across re-renders
- Pair with
linearTiming(for dramatic frame-perfect transitions) orspringTiming(for springy physics)
When to Load References
- Building a new custom transition → load custom-transition-pattern.md first
- Copying/adapting an existing effect → load transition-catalog.md
- Debugging timing or easing math → load animation-math.md
Reviews
No reviews yet. Tell others what you thought.
Comments
No login needed. Share how it worked for you, ask a question, or note where it did not run.
No comments yet. Be the first to write one.