Remotion TransitionSeries — effect skill for transitions
For AI agents: find the right skill in one call —
curl -s "https://skills.varg.ai/api/search?q=<what the person wants>"returns the matching how-to page and the best skills with install commands, as markdown (Russian works too). Full index: https://skills.varg.ai/llms.txt. Every page has a markdown twin: add.mdto its path. Before generating anything, show the person the options on the how-to page.
Sequence scenes with <TransitionSeries>; each transition overlaps its neighbours, so the video gets shorter.
- Type: Effect · Transitions
- Slug:
remotion-transitionseries - Status: live
- Publisher: varg (varg, verified)
- License: MIT
- Source: https://github.com/vargHQ/skills/blob/main/varg-video-edit-library/references/transitions.md#remotion-transitionseries
- Works in: Claude Code, Claude.ai, Codex, Cursor, OpenClaw, Gemini CLI, Any MCP client, varg Studio
- Requires: Remotion
- Cost: Free — the take renders locally; generated footage, if any, bills by the model
What it does
Any built-in or custom presentation between React scenes.
When: Remotion projects; data-driven videos where scenes are components.
Watch out: Forgetting that 40 + 60 frames with a 30-frame transition is 70 frames, not 100; and placing two transitions next to each other.
Timing: linearTiming({durationInFrames}) or springTiming({config:{damping:200}}) (~23 frames at 30 fps)
Also called: @remotion/transitions, TransitionSeries, linearTiming, springTiming, presentations
In Remotion
import {TransitionSeries, linearTiming, springTiming} from '@remotion/transitions';
import {fade} from '@remotion/transitions/fade';
import {slide} from '@remotion/transitions/slide';
export const Edit = () => (
<TransitionSeries>
<TransitionSeries.Sequence durationInFrames={40}><A /></TransitionSeries.Sequence>
<TransitionSeries.Transition presentation={fade()} timing={linearTiming({durationInFrames: 30})} />
<TransitionSeries.Sequence durationInFrames={60}><B /></TransitionSeries.Sequence>
<TransitionSeries.Transition presentation={slide({direction: 'from-right'})} timing={springTiming({config: {damping: 200}})} />
<TransitionSeries.Sequence durationInFrames={90}><C /></TransitionSeries.Sequence>
</TransitionSeries>
);
// total = 40 + 60 + 90 - 30 - 23 = 137 frames; compute with timing.getDurationInFrames({fps})
Rules: a transition may not be longer than either neighbour; no two transitions (or overlays) adjacent; a transition can be first/last to animate an entrance/exit; default presentation is slide().
Built-ins in @remotion/transitions 4.0.539: CSS (work everywhere) fade, slide, wipe, flip, clockWipe, iris, none, pushCut; shader/HTML-in-canvas blurSlide, bookFlip, crossZoom, crosswarp, dissolve, dreamyZoom, filmBurn, linearBlur, ripple, swap, zoomBlur, zoomInOut. Each imports from @remotion/transitions/<kebab-name>. Shader presentations are built on Remotion's HTML-in-canvas: renders work out of the box (--gl=angle, or --gl=swangle without a GPU); the Studio preview needs Chrome with chrome://flags/#canvas-draw-element enabled.
There is no cube presentation; use @gl-transitions/remotion.
Where this comes from
- Remotion: <TransitionSeries>
- Remotion: presentations
- Remotion: timings
- Remotion: crossZoom (HTML-in-canvas)
Use when
- Remotion projects; data-driven videos where scenes are components.
Not for
- Forgetting that 40 + 60 frames with a 30-frame transition is 70 frames, not 100; and placing two transitions next to each other.
Install
- Claude Code:
claude plugin marketplace add vargHQ/skills && claude plugin install varg@varg - Codex:
npx skills add vargHQ/skills --skill varg-video-edit-library -a codex -y - Cursor:
npx skills add vargHQ/skills --skill varg-video-edit-library -a cursor -y
Example output
https://s3.varg.ai/how-to/previews/a67890842875/take-remotion-transitionseries.mp4 — slideup between two shots, with the timeline strip of the edit. Footage: Coffee Run (2020), Blender Studio | studio.blender.org, CC BY 4.0; Coffee Run (2020), Blender Studio | studio.blender.org, CC BY 4.0. (credit: Rendered by varg · Coffee Run (2020))
More transitions skills
- editly: Declarative JSON5 video editing CLI/API: clips, titles, transitions, audio mixing, rendered with ffmpeg.
- Mix (Cross Dissolve): The two shots blend through each other. The quietest transition: "time passes" or "this continues".
- Dip to Black: A fades to black, then B fades up. Marks the end of a section or a bigger jump in time.
- White Flash: The frame blows out to white for a moment and opens on the next shot. Energy, memory or a camera snap.
- Pull In (Zoom In): The camera rushes into shot A and lands, still moving forward, in shot B. The signature short-form transition.
- Pull Out (Zoom Out): The camera jerks backwards out of shot A and keeps pulling back as shot B settles in.