Skip to content
cccskills
FreePublished on GitHub

remotion

Create programmatic videos using React and Remotion. Translate natural language descriptions into working Remotion components for product demos, release announcements, explainer videos, and animated content.

The English summary is being prepared. Showing the original description.

See how to install

Files included (1)

  • SKILL.md3.9 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Remotion

Generate React-based video components using the Remotion framework. Use this skill when a user needs a video, animation, or motion graphic produced programmatically without a separate video editing tool.

What This Skill Covers

  • Product demo videos
  • Release announcement animations
  • Explainer videos with animated text and diagrams
  • Animated README headers / GIFs
  • Data visualisation motion graphics
  • Slide-based presentations rendered to MP4

Prerequisites

# Create a new Remotion project
npm create video@latest

# Or add Remotion to an existing React project
npm install remotion @remotion/player @remotion/cli

Install the agent skill:

npx skills add remotion/agent-skills

Core Concepts

Frame-driven animation

Remotion videos are React components. Animation is just state changing over time via useCurrentFrame().

import { AbsoluteFill, useCurrentFrame, interpolate } from 'remotion';

export const MyScene = () => {
  const frame = useCurrentFrame();
  const opacity = interpolate(frame, [0, 30], [0, 1], {
    extrapolateRight: 'clamp',
  });

  return (
    <AbsoluteFill style={{ backgroundColor: '#0a0a0a', opacity }}>
      <h1 style={{ color: 'white', fontSize: 72 }}>Hello, World</h1>
    </AbsoluteFill>
  );
};

Composition (defines the video)

import { Composition } from 'remotion';
import { MyScene } from './MyScene';

export const RemotionRoot = () => (
  <Composition
    id="MyVideo"
    component={MyScene}
    durationInFrames={150}   // 5 seconds at 30fps
    fps={30}
    width={1920}
    height={1080}
  />
);

Timing helpers

const { fps } = useVideoConfig();
const frame = useCurrentFrame();

// Enter at 1 second, exit at 3 seconds
const opacity = interpolate(
  frame,
  [fps * 1, fps * 1 + 30, fps * 3, fps * 3 + 30],
  [0, 1, 1, 0],
  { extrapolateLeft: 'clamp', extrapolateRight: 'clamp' }
);

Standard Workflow

User: "Create a 30-second product demo video for our API dashboard"

Steps:
1. Confirm video dimensions (default: 1920×1080), fps (default: 30), duration
2. Plan scenes: intro → feature highlight → call to action
3. Generate Remotion composition + scene components
4. Preview: npx remotion studio
5. Render: npx remotion render

Common Patterns

Fade-in text

const frame = useCurrentFrame();
const opacity = interpolate(frame, [0, 20], [0, 1], { extrapolateRight: 'clamp' });
<div style={{ opacity }}>{text}</div>

Slide in from left

const translateX = interpolate(frame, [0, 25], [-200, 0], { extrapolateRight: 'clamp' });
<div style={{ transform: `translateX(${translateX}px)` }}>{content}</div>

Sequence (time-shifted scenes)

import { Sequence } from 'remotion';

<Sequence from={0} durationInFrames={60}>  <IntroScene /> </Sequence>
<Sequence from={60} durationInFrames={90}> <FeatureScene /> </Sequence>
<Sequence from={150} durationInFrames={45}><OutroScene /> </Sequence>

Output Formats

# Preview in browser
npx remotion studio

# Render to MP4
npx remotion render src/index.ts MyVideo out/video.mp4

# Render to GIF
npx remotion render src/index.ts MyVideo out/video.gif --codec=gif

# Render specific frame range
npx remotion render src/index.ts MyVideo out/video.mp4 --frames=0-90

Tips

  • Keep each scene in its own component file for maintainability
  • Use spring() from Remotion for natural-feeling physics-based animations
  • Test frame ranges with --frames flag before full renders
  • Brand colours and fonts belong in a shared theme.ts constants file
  • Add --log=verbose when debugging render failures

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.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.

The English summary is being prepared. Showing the original description.

nvdigitalsolutions/mcp-ai-wpoos7Updated Oct 23, 2026

Applies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel. Use it when brand colors or style guidelines, visual formatting, or company design standards apply.

The English summary is being prepared. Showing the original description.

nvdigitalsolutions/mcp-ai-wpoos7Updated Oct 23, 2026

Control a headless browser to navigate URLs, click elements, fill forms, extract content from JavaScript-rendered pages, take screenshots, and automate end-to-end web workflows.

The English summary is being prepared. Showing the original description.

nvdigitalsolutions/mcp-ai-wpoos7Updated Oct 23, 2026

Create beautiful visual art in .png and .pdf documents using design philosophy. You should use this skill when the user asks to create a poster, piece of art, design, or other static piece. Create original visual designs, never copying existing artists' work to avoid copyright violations.

The English summary is being prepared. Showing the original description.

nvdigitalsolutions/mcp-ai-wpoos7Updated Oct 23, 2026

Review code for quality, simplicity, and maintainability. Identifies unnecessary abstractions, duplicated logic, oversized functions, missing error handling, and naming issues — then fixes them automatically before presenting the result.

The English summary is being prepared. Showing the original description.

nvdigitalsolutions/mcp-ai-wpoos7Updated Oct 23, 2026

WooCommerce store operations through NV oOS Pro — product research, catalog cross-referencing, inventory lookups, and Shopify or Flowhub comparisons where integrations are configured.

The English summary is being prepared. Showing the original description.

nvdigitalsolutions/mcp-ai-wpoos7Updated Oct 23, 2026

See all skills by nvdigitalsolutions

Report a problem with this skill