Communitygithub.com

ytrofr/claude-remotion-editor

Complete reference for all video production methods available in this project. Covers 6 workflows: phone mockup demos, motion graphics, narrated explainers, reference-based recreation, batch/parametric video, and the self-learning feedback loop. Use when planning any new video or choosing a production approach.

O que é claude-remotion-editor?

claude-remotion-editor is a Claude Code agent skill that complete reference for all video production methods available in this project. Covers 6 workflows: phone mockup demos, motion graphics, narrated explainers, reference-based recreation, batch/parametric video, and the self-learning feedback loop. Use when planning any new video or choosing a production approach.

Funciona com✓Claude Code~Codex CLI✓Cursor✓Gemini CLI
npx skills add https://github.com/ytrofr/claude-remotion-editor/tree/HEAD/.claude/skills/video-production-methods

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Video Production Methods — Complete Reference

Available Methods

#MethodBest ForSkills Used
1Phone Mockup DemoApp showcases, feature walkthroughsSceneDirector, FloatingHand, DorianPhone
2Motion GraphicsMarketing, social media, promosnoise, shapes, light-leaks, animated-emoji
3Narrated ExplainerProduct tours, tutorials, onboardingvoiceover-pipeline, captions
4Reference RecreationReplicating professional video stylesvideo-storyboard, AI analysis
5Batch/ParametricMultiple variations from one templateZod schemas, calculateMetadata
6Self-Learning LoopImproving quality across rendersvideo-feedback-loop

Method 1: Phone Mockup Demo

Our primary method. Interactive phone with cursor/hand animations.

Workflow

  1. Capture app screenshots → public/dorian/ or public/mobile/
  2. Plan scenes in SceneDirector (select composition, draw paths)
  3. Build scenes using DorianPhoneMockup + shared DorianPhone components
  4. Add hand gestures via SceneDirector (click, scroll, drag, swipe)
  5. Add SFX (mouse-click, whoosh) via audio layers
  6. Preview in Remotion Studio, iterate
  7. Render with npm run render:dorian

Key Components

  • DorianPhoneMockup.tsx — phone frame with scrollable content
  • FloatingHand/ — animated cursor system (Lottie-based)
  • SceneDirector/ — visual hand-path editor
  • DorianPhone/ — shared UI (StatusBar, NavHeader, AIBubble)

Example Scene Structure

<TransitionSeries>
  <TransitionSeries.Sequence durationInFrames={90}>
    <IntroScene />
  </TransitionSeries.Sequence>
  <TransitionSeries.Transition timing={springTiming({ config: SPRING_CONFIG.snappy })}>
    <fade() />
  </TransitionSeries.Transition>
  <TransitionSeries.Sequence durationInFrames={120}>
    <BrowseScene />
  </TransitionSeries.Sequence>
</TransitionSeries>

Method 2: Motion Graphics

Full-screen animated compositions for marketing/social content.

Workflow

  1. Define art direction (colors, typography, mood) in storyboard doc
  2. Create scene components with animated text, shapes, backgrounds
  3. Use @remotion/noise for animated gradient backgrounds
  4. Use @remotion/shapes for decorative SVG elements
  5. Use @remotion/light-leaks for transitions
  6. Add @remotion/animated-emoji for reaction overlays
  7. Apply @remotion/motion-blur Trail for dramatic movement

Available Building Blocks

PackageComponentEffect
@remotion/noisenoise2D/3D('seed', x, y)Animated gradient backgrounds
@remotion/shapes<Star>, <Heart>, <Circle>Decorative SVG animations
@remotion/light-leaks<LightLeak seed={n} hueShift={deg}>Cinematic transition overlays
@remotion/animated-emoji<AnimatedEmoji emoji="fire">411 animated emoji overlays
@remotion/motion-blur<Trail layers={6}>Afterimage on moving elements

Method 3: Narrated Explainer

Voice-over driven videos with captions. See voiceover-pipeline skill for full details.

Workflow

  1. Write script per scene
  2. Generate TTS: ElevenLabs API → public/voiceover/{scene}.mp3
  3. (Optional) Transcribe → SRT → TikTok-style captions
  4. Use calculateMetadata to size composition to audio duration
  5. Layer: visual content + <Audio> + <CaptionOverlay>
  6. Add light leak transitions between narrated scenes
  7. Render final video

Key Pattern: Dynamic Duration

export const calculateMetadata: CalculateMetadataFunction<Props> = async ({
  props,
}) => {
  const duration = await getAudioDurationInSeconds(
    staticFile(`voiceover/${props.scene}.mp3`),
  );
  return { durationInFrames: Math.ceil(duration * 30) + 30 }; // +1s padding
};

Method 4: Reference Recreation

Analyze a reference video, extract style/timing, recreate in Remotion.

Workflow

  1. Capture reference: Screen record or download target video
  2. Analyze: Use Google AI Studio (Gemini) to analyze frame-by-frame
    • Prompt: "Watch this video and describe every visual element, animation, timing, color, and transition in detail. Output as a scene-by-scene breakdown with frame counts."
  3. Convert to storyboard: Take Gemini's analysis → create art direction + scene breakdown
  4. Implement: Feed storyboard to Claude Code → generate Remotion scenes
  5. Iterate: Preview in Studio, compare with reference, refine

Alternative: Perplexity for Style Research

Use perplexity_ask: "What animation techniques does [brand] use in their product videos?
Describe specific motion patterns, timing, color palettes, and typography choices."

Method 5: Batch/Parametric Video

Generate multiple video variations from one template + dataset.

Workflow

  1. Define composition props as Zod schema
  2. Create template composition that reads props
  3. Use calculateMetadata() for dynamic duration/dimensions
  4. Prepare dataset (JSON, CSV, or API response)
  5. Batch render: npx remotion render --props=data.json

Example: Product Showcase Variants

import { z } from 'zod';

export const ProductVideoSchema = z.object({
  productName: z.string(),
  tagline: z.string(),
  primaryColor: z.string(),
  screenshotPath: z.string(),
  voiceoverPath: z.string().optional(),
});

// In Root.tsx:
<Composition
  id="ProductVideo"
  component={ProductVideo}
  schema={ProductVideoSchema}
  defaultProps={{
    productName: 'Dorian',
    tagline: 'AI-Powered Marketplace',
    primaryColor: '#2DD4BF',
    screenshotPath: 'dorian/home.png',
  }}
  calculateMetadata={calculateMetadata}
/>;

Batch Render

# Render multiple variations
npx remotion render ProductVideo --props='{"productName":"AppA","primaryColor":"#FF6B6B"}'
npx remotion render ProductVideo --props='{"productName":"AppB","primaryColor":"#4ECDC4"}'

Method 6: Self-Learning Feedback Loop

See video-feedback-loop skill for full details.

Summary

Render → Review (checklist) → Capture (docs/video-learnings.md) → Promote (rules/memory) → Feed Forward

Promotion Ladder

  1. Learnings doc — one-time observation, composition-specific
  2. Memory — project preference that persists across sessions
  3. Rule — universal pattern, same mistake happened 2+ times

Key File: docs/video-learnings.md

  • Universal timing/spring/audio/hand patterns
  • Per-composition notes
  • Per-render history with what worked/failed

External Tools Integration

Currently Installed

ToolAccessUse Case
ElevenLabsMCP + Direct APIVoiceover TTS, voice cloning
PerplexityMCPResearch, style analysis, trends
Remotion SFXLocal fileswhoosh, whip, page-turn, click sounds
Remotion Agent SkillsAuto-loaded37 best-practice rules

Available to Add (free tiers)

ToolSetupUse Case
Image Gen (Gemini)MCP server + Google API keyGenerate scene backgrounds, illustrations
Figma MCPMCP server + Figma tokenExtract designs → Remotion components
Suno / Udiomcpmarket skillsBackground music generation
Blender MCPMCP server + Blender3D assets for Three.js scenes

Decision Guide: Which Method to Use?

Is it an app demo with phone UI?
  → YES → Method 1 (Phone Mockup)
  → NO ↓

Does it need voiceover narration?
  → YES → Method 3 (Narrated Explainer)
  → NO ↓

Is it based on a reference video?
  → YES → Method 4 (Reference Recreation)
  → NO ↓

Do you need multiple variations?
  → YES → Method 5 (Batch/Parametric)
  → NO ↓

Is it marketing/social content?
  → YES → Method 2 (Motion Graphics)
  → NO → Combine methods as needed

Always use Method 6 (Feedback Loop) after every render.

Habilidades Relacionadas