PTENES
TRACK 1

🧠 Fundamentals

How Remotion thinks. Here you’ll learn the 4 pieces that all the 81 templates use under the hood: the frame, interpolate, spring and the scene composition. After that, you can read any template and understand it—instead of copying magic.

3
Modules
18
Topics
~2h
Duration
Basic
Level
frame the time interpolate() spring() values opacity, x, scale… scene composition

Learning path map

Detailed content

1.1~40 min

🕐 The Time Engine

Everything starts here: the current frame. In Remotion, the video is a pure function of the frame number — there is no "play," only "which image to draw at frame N."

What it is:

Hook that returns the number of the current frame being rendered (0, 1, 2, …). It’s the only time input you need.

Why learn:

Every animation in Remotion derives from this number. Without it, nothing moves.

Key concepts:

Frame-reactive · re-renders every frame · the basis for interpolate and spring.

What it is:

fps = frames per second; durationInFrames = video length in frames. 90 frames at 30fps = 3 seconds.

Why learn:

Defines the time window you have to animate and how seconds translate into frames.

Key concepts:

seconds × fps = frames · defined in Composition · constant during rendering.

What it is:

Hook that returns the width, height, fps, and durationInFrames of the current composition.

Why learn:

Makes the component responsive to the video size (16:9, 9:16) without hardcoding.

Key concepts:

center with width/2 · convert seconds with fps · reuse across formats.

What it is:

The image for each frame depends ONLY on the frame number—not on clicks, timers, or accumulated state.

Why learn:

It’s what makes rendering parallelizable and predictable. No setInterval or requestAnimationFrame.

Key concepts:

pure frame→pixels function · no useState for animation · no real-time effects.

What it is:

Rendering frame 42 today or tomorrow produces exactly the same image.

Why learn:

Lets Remotion render frames in parallel on multiple machines without inconsistencies.

Key concepts:

avoid Math.random without a seed · avoid Date.now() · use Remotion’s random().

What it is:

The unit of work is the frame. "Appears in 0.5s" becomes "appears in 15 frames" (at 30fps).

Why learn:

The entire API (interpolate, spring, Sequence) uses frames. Thinking in frames eliminates confusing conversions.

Key concepts:

frame = unit · seconds only at the edge (user input) · fps converts.

View Full
1.2~40 min

📈 interpolate() — frame becomes a value

Remotion's most-used function. It maps the frame (or any number) from an input range to an output range: opacity, position, scale, rotation.

What it is:

interpolate(frame, [in0,in1], [out0,out1], options) — a frame goes in, a value comes out.

Why learn:

It’s the universal tool for linear animation. 90% of templates start with it.

Key concepts:

1st arg = value to map · arrays must be the same size · returns a number.

What it is:

inputRange is the domain (e.g., frames 0→30); outputRange is the codomain (e.g., opacity 0→1).

Why learn:

Controlling these two pairs means controlling when and how much something changes.

Key concepts:

increasing input · output in any order · free units (px, %, deg).

What it is:

extrapolateLeft/Right: 'clamp' keeps the value within bounds; 'extend' lets it go beyond them.

Why learn:

Without clamp, opacity goes above 1 and the element "blows out." It's the most common beginner bug.

Key concepts:

clamp = safe default · extend for continuous motion · identity rarely.

What it is:

Arrays with 3+ points: [0,15,75,90] → [0,1,1,0] fades in, holds, fades out.

Why learn:

A single call describes a complete entrance and exit cycle.

Key concepts:

always increasing input · plateaus = repeated values · saves code.

What it is:

The option easing replace linear interpolation with curves (Easing.out, cubic, bezier).

Why learn:

Linear movement looks robotic. Easing adds naturalness without changing the function.

Key concepts:

ease-out for entrances · ease-in for exits · bezier for fine control.

What it is:

Three recipes: opacity (fade), translateX/Y (slide), and scale (zoom) — all with interpolate.

Why learn:

Together, these three cover most element entrances in video.

Key concepts:

apply to style/transform · combine 2–3 at the same time · foundation of all of T2.

View Full
1.3~40 min

🌊 spring & composition

Physics-based motion (spring) and how to organize multiple scenes in time and space (Sequence, AbsoluteFill, Series). This is what separates “okay animation” from “animation that feels alive.”

What it is:

Function that simulates a spring: goes from 0 to 1 with acceleration and a slight natural overshoot.

Why learn:

Adds that organic "pop" to title and logo entrances that linear interpolate can't achieve.

Key concepts:

receives frame and fps · returns 0→1 · multiply by scale/position.

What it is:

Spring parameters: damping (friction), stiffness (rigidity), mass (weight).

Why learn:

Adjust from “bouncy elastic” to “smooth and firm” without changing the rest of the code.

Key concepts:

high damping = no overshoot · high stiffness = faster · high mass = slower.

What it is:

interpolate = exact control of time/value; spring = automatic physical naturalness.

Why learn:

Choosing the wrong one makes the animation either robotic or unpredictable in duration.

Key concepts:

spring for entrances/pop · interpolate for fades/precise timing · you can combine them.

What it is:

Component that shifts the timing of its children: from delays the start, durationInFrames limits.

Why learn:

Inside a Sequence, the frame “resets” to zero — making independent scenes easier.

Key concepts:

from = offset · local frame · basis for stagger and T3.

What it is:

Div that fills 100% of the composition with position absolute — stacks background, content, and overlay.

Why learn:

It’s how you overlay a title on an animated background without calculating the layout.

Key concepts:

order = layers (z) · center with flex · foundation of every visual composition.

What it is:

Series.Sequence automatically places scenes one after another, without calculating offsets by hand.

Why learn:

Assembles a multi-scene video (intro → content → outro) in a readable way.

Key concepts:

duration per scene · order = time · ideal for Track 4 projects.

View Full
← Course home Next track: Resources →