---
name: remotion-composer
description: Compose final demo videos using Remotion. Use when combining terminal recordings with animations, adding branded overlays, or rendering multi-format video exports
context: fork
version: 2.0.0
author: OrchestKit
tags: [remotion, video, composition, marketing, demo, animation, data-viz, charts]
user-invocable: false
complexity: medium
---
# Remotion Composer
Production-quality video composition with AnimStats-level animations. Supports data visualization, spring physics, easing presets, and cinematic transitions.
## Quick Start
```bash
# Install enhanced packages
cd orchestkit-demos && npm install
# Add composition for a skill
./scripts/add-composition.sh explore
# Render
npx remotion render ExploreDemo out/ExploreDemo.mp4
```
## Package Library (v2.1)
### Core Animation
```json
{
"@remotion/shapes": "^4.0.0", // Geometric primitives (pie, rect, triangle)
"@remotion/paths": "^4.0.0", // SVG path animations (evolvePath)
"@remotion/noise": "^4.0.0", // Procedural noise (noise2D, noise3D)
"@remotion/transitions": "^4.0.0", // Scene transitions (fade, slide, wipe)
"@remotion/motion-blur": "^4.0.0", // Motion trails and blur
"@remotion/gif": "^4.0.0", // GIF synchronization
"@remotion/animated-emoji": "^4.0.0", // Lottie emojis
"@remotion/layout-utils": "^4.0.0" // Text fitting and layout
}
```
### Advanced Capabilities
```json
{
"@remotion/three": "^4.0.0", // Three.js 3D graphics
"@remotion/lottie": "^4.0.0", // After Effects animations
"@remotion/rive": "^4.0.0", // Rive interactive animations
"@remotion/captions": "^4.0.0", // Subtitles and captions
"@remotion/player": "^4.0.0", // Embeddable player
"@remotion/renderer": "^4.0.0", // Server-side rendering
"@remotion/media-utils": "^4.0.0" // Audio/video metadata
}
```
### 3D & Animation Runtimes
```json
{
"three": "^0.175.0", // Three.js core
"@react-three/fiber": "^9.1.0", // React Three Fiber
"@react-three/drei": "^10.3.0", // Three.js helpers
"@lottiefiles/react-lottie-player": "^3.5.4", // Lottie player
"@rive-app/react-canvas": "^4.21.0" // Rive runtime
}
```
## Animation Presets
### Easing Reference
| Preset | Use Case | Feel |
|--------|----------|------|
| `bounce` | Success celebrations | Playful |
| `elastic` | Attention grab | Energetic |
| `back` | Entry animations | Anticipation |
| `snappy` | Quick UI | Overshoot |
| `spring` | Default | Natural |
### Spring Configs
| Name | damping | stiffness | Use |
|------|---------|-----------|-----|
| Bouncy | 10-12 | 100-120 | Playful enters |
| Snappy | 15-20 | 150-200 | Quick UI |
| Smooth | 80 | 200 | Subtle moves |
| Heavy | 15 | 50 | Large elements |
## Data Visualization Components
### StatCounter (Enhanced)
```tsx
```
### ProgressRing
```tsx
```
### BarChart
```tsx
```
### LineChart
```tsx
```
## Text Animations
### AnimatedText Types
```tsx
// 9 animation types available:
// Scale bounce
// Simple fade
// Directional slide
// Blur reveal (NEW)
// Char-by-char bounce (NEW)
// Gradient sweep (NEW)
// Chars from random (NEW)
// Clip reveal (NEW)
// Typing effect
```
### GradientText
```tsx
```
## Transitions
### SceneTransition Types
```tsx
// 8 transition types:
// Simple opacity
// Horizontal wipe
// Scale in/out
// Directional slide (NEW)
// 3D card flip (NEW)
// Circular reveal (NEW)
// Venetian blinds (NEW)
// Pixelation (NEW)
```
### Content Transitions
```tsx
```
## 3D Components (CSS-based)
### FloatingLogo
```tsx
```
### ParticleSphere
```tsx
```
### WireframeBox
```tsx
```
### OrbitingRings
```tsx
```
## Captions & Subtitles
### TikTokCaption (word bounce)
```tsx
```
### KaraokeCaption (fill reveal)
```tsx
```
### TypingCaption (typewriter)
```tsx
```
### HighlightCaption
```tsx
```
## Background Effects
### ParticleBackground
```tsx
```
### MeshGradient
```tsx
```
### GlowOrbs
```tsx
```
## Layer Stack
```
┌─────────────────────────────────────────┐
│ Layer 6: Vignette + ScanLines │
├─────────────────────────────────────────┤
│ Layer 5: CTA Overlay (bottom) │
├─────────────────────────────────────────┤
│ Layer 4: Watermark (top-right) │
├─────────────────────────────────────────┤
│ Layer 3: Progress Bar (bottom) │
├─────────────────────────────────────────┤
│ Layer 2: Content (Terminal/Manim) │
├─────────────────────────────────────────┤
│ Layer 1: Background Effects │
│ - ParticleBackground │
│ - MeshGradient │
│ - GlowOrbs │
├─────────────────────────────────────────┤
│ Layer 0: Base Color (#0a0a0f) │
└─────────────────────────────────────────┘
```
## Formats
| Format | Resolution | FPS | Use Case |
|--------|------------|-----|----------|
| Horizontal | 1920x1080 | 30 | YouTube, Twitter |
| Vertical | 1080x1920 | 30 | TikTok, Reels, Shorts |
| Square | 1080x1080 | 30 | Instagram, LinkedIn |
| 4K | 3840x2160 | 60 | High-quality exports |
## Color Mapping
Skills have associated colors:
- explore: #8b5cf6 (purple)
- verify: #22c55e (green)
- commit: #06b6d4 (cyan)
- brainstorming: #f59e0b (amber)
- review-pr: #f97316 (orange)
- remember: #ec4899 (pink)
## References
### Core
- `references/audio-layer.md` - Audio setup and volume curves
- `references/composition-patterns.md` - Composition templates
- `references/cinematic-scenes.md` - 6-scene narrative structure
- `references/folder-organization.md` - Root.tsx folder structure and naming conventions
### Animation
- `references/animation-presets.md` - Easing and spring configs
- `references/data-viz-patterns.md` - Chart and counter patterns
- `references/effects-library.md` - Background and transition effects
### Advanced
- `references/3d-graphics.md` - Three.js 3D scenes and camera animations
- `references/lottie-animations.md` - After Effects Lottie integration
- `references/captions-subtitles.md` - Subtitle generation and styling
- `references/showcase-templates.md` - Production patterns from Remotion showcase
## Related Skills
- `terminal-demo-generator`: VHS/asciinema recordings that feed into compositions
- `manim-visualizer`: Animated diagrams as overlay assets
- `demo-producer`: Full pipeline orchestration
- `video-pacing`: Timing and rhythm patterns for compositions
- `music-sfx-selection`: Audio selection for the audio layer