remotion-render

Rendre des vidéos à partir de code de composants React/Remotion via inference.sh. Envoyez du code TSX, obtenez du MP4. Prend en charge toutes les API Remotion : useCurrentFrame, useVideoConfig, spring, interpolate, AbsoluteFill, Sequence. Résolution, FPS, durée, codec configurables. Utilisation pour : génération programmatique de vidéos, graphiques animés, motion design, vidéos basées sur des données, animations React en vidéo. Déclencheurs : remotion, render video from code, tsx to video, react video, programmatic video, remotion render, code to video, animated...

npx skills add https://github.com/101-skills/skills --skill remotion-render

Install the belt CLI skill: npx skills add belt-sh/cli

Remotion Render

Render videos from React/Remotion component code via inference.sh CLI.

Remotion Render

Quick Start

Requires inference.sh CLI (belt). Install instructions

belt login

# Render a simple animation
belt app run infsh/remotion-render --input '{
  "code": "import { useCurrentFrame, AbsoluteFill } from \"remotion\"; export default function Main() { const frame = useCurrentFrame(); return <AbsoluteFill style={{backgroundColor: \"#000\", display: \"flex\", justifyContent: \"center\", alignItems: \"center\"}}><h1 style={{color: \"white\", fontSize: 100, opacity: frame / 30}}>Hello World</h1></AbsoluteFill>; }",
  "duration_seconds": 3,
  "fps": 30,
  "width": 1920,
  "height": 1080
}'

Input Schema

ParameterTypeRequiredDescription
codestringYesReact component TSX code. Must export default a component.
composition_idstringNoComposition ID to render
propsobjectNoProps passed to the component
widthnumberNoVideo width in pixels
heightnumberNoVideo height in pixels
fpsnumberNoFrames per second
duration_secondsnumberNoVideo duration in seconds
codecstringNoOutput codec

Available Imports

Your TSX code can import from remotion and react:

// Remotion APIs
import {
  useCurrentFrame,
  useVideoConfig,
  spring,
  interpolate,
  AbsoluteFill,
  Sequence,
  Audio,
  Video,
  Img
} from "remotion";

// React
import React, { useState, useEffect } from "react";

Examples

Fade-In Text

belt app run infsh/remotion-render --input '{
  "code": "import { useCurrentFrame, AbsoluteFill, interpolate } from \"remotion\"; export default function Main() { const frame = useCurrentFrame(); const opacity = interpolate(frame, [0, 30], [0, 1]); return <AbsoluteFill style={{backgroundColor: \"#1a1a2e\", display: \"flex\", justifyContent: \"center\", alignItems: \"center\"}}><h1 style={{color: \"#eee\", fontSize: 80, opacity}}>Welcome</h1></AbsoluteFill>; }",
  "duration_seconds": 2,
  "fps": 30,
  "width": 1920,
  "height": 1080
}'

Animated Counter

belt app run infsh/remotion-render --input '{
  "code": "import { useCurrentFrame, useVideoConfig, AbsoluteFill } from \"remotion\"; export default function Main() { const frame = useCurrentFrame(); const { fps, durationInFrames } = useVideoConfig(); const progress = Math.floor((frame / durationInFrames) * 100); return <AbsoluteFill style={{backgroundColor: \"#000\", display: \"flex\", justifyContent: \"center\", alignItems: \"center\", flexDirection: \"column\"}}><h1 style={{color: \"#fff\", fontSize: 200}}>{progress}%</h1><p style={{color: \"#666\", fontSize: 30}}>Loading...</p></AbsoluteFill>; }",
  "duration_seconds": 5,
  "fps": 60,
  "width": 1080,
  "height": 1080
}'

Spring Animation

belt app run infsh/remotion-render --input '{
  "code": "import { useCurrentFrame, useVideoConfig, spring, AbsoluteFill } from \"remotion\"; export default function Main() { const frame = useCurrentFrame(); const { fps } = useVideoConfig(); const scale = spring({ frame, fps, config: { damping: 10, stiffness: 100 } }); return <AbsoluteFill style={{backgroundColor: \"#6366f1\", display: \"flex\", justifyContent: \"center\", alignItems: \"center\"}}><div style={{width: 200, height: 200, backgroundColor: \"white\", borderRadius: 20, transform: `scale(${scale})`}} /></AbsoluteFill>; }",
  "duration_seconds": 2,
  "fps": 60,
  "width": 1080,
  "height": 1080
}'

With Props

belt app run infsh/remotion-render --input '{
  "code": "import { AbsoluteFill } from \"remotion\"; export default function Main({ title, subtitle }) { return <AbsoluteFill style={{backgroundColor: \"#000\", display: \"flex\", justifyContent: \"center\", alignItems: \"center\", flexDirection: \"column\"}}><h1 style={{color: \"#fff\", fontSize: 80}}>{title}</h1><p style={{color: \"#888\", fontSize: 40}}>{subtitle}</p></AbsoluteFill>; }",
  "props": {"title": "My Video", "subtitle": "Created with Remotion"},
  "duration_seconds": 3,
  "fps": 30,
  "width": 1920,
  "height": 1080
}'

Sequence Animation

belt app run infsh/remotion-render --input '{
  "code": "import { useCurrentFrame, AbsoluteFill, Sequence, interpolate } from \"remotion\"; function FadeIn({ children }) { const frame = useCurrentFrame(); const opacity = interpolate(frame, [0, 20], [0, 1]); return <div style={{ opacity }}>{children}</div>; } export default function Main() { return <AbsoluteFill style={{backgroundColor: \"#000\", display: \"flex\", justifyContent: \"center\", alignItems: \"center\", flexDirection: \"column\", gap: 20}}><Sequence from={0}><FadeIn><h1 style={{color: \"#fff\", fontSize: 60}}>First</h1></FadeIn></Sequence><Sequence from={30}><FadeIn><h1 style={{color: \"#fff\", fontSize: 60}}>Second</h1></FadeIn></Sequence><Sequence from={60}><FadeIn><h1 style={{color: \"#fff\", fontSize: 60}}>Third</h1></FadeIn></Sequence></AbsoluteFill>; }",
  "duration_seconds": 4,
  "fps": 30,
  "width": 1920,
  "height": 1080
}'

Python SDK

from inferencesh import inference

client = inference()

result = client.run({
    "app": "infsh/remotion-render",
    "input": {
        "code": """
import { useCurrentFrame, AbsoluteFill, interpolate } from "remotion";

export default function Main() {
  const frame = useCurrentFrame();
  const opacity = interpolate(frame, [0, 30], [0, 1]);

  return (
    <AbsoluteFill style={{
      backgroundColor: "#1a1a2e",
      display: "flex",
      justifyContent: "center",
      alignItems: "center"
    }}>
      <h1 style={{ color: "#eee", fontSize: 80, opacity }}>
        Hello from Python
      </h1>
    </AbsoluteFill>
  );
}
""",
        "duration_seconds": 3,
        "fps": 30,
        "width": 1920,
        "height": 1080
    }
})

print(result["output"]["video"])

Streaming Progress

for update in client.run({
    "app": "infsh/remotion-render",
    "input": {
        "code": "...",
        "duration_seconds": 10
    }
}, stream=True):
    if update.get("progress"):
        print(f"Rendering: {update['progress']}%")
    if update.get("output"):
        print(f"Video: {update['output']['video']}")

Related Skills

# Remotion best practices (component patterns)
npx skills add remotion-dev/skills@remotion-best-practices

# AI video generation (for AI-generated clips)
npx skills add inference-sh/skills@ai-video-generation

# Image generation (for video assets)
npx skills add inference-sh/skills@ai-image-generation

# Python SDK reference
npx skills add inference-sh/skills@python-sdk

# Full platform skill
npx skills add inference-sh/skills@infsh-cli

Documentation

Plus de skills de 101-skills

ai-avatar-video
101-skills
Créez des vidéos d'avatar IA et de tête parlante via l'interface CLI inference.sh. Recommandé : P-Video-Avatar (le plus rapide, le moins cher, TTS intégré). Également : OmniHuman, Fabric, PixVerse. Audio : Inworld TTS-2 (100+ langues, pilotage émotionnel pour les personnages), ElevenLabs, Kokoro. Capacités : avatars pilotés par audio, texte vers avatar, vidéos synchronisées labiales, génération de tête parlante, présentateurs virtuels, contenu UGC. Utilisation pour : présentateurs IA, vidéos explicatives, influenceurs virtuels, doublage, vidéos marketing, publicités UGC, avatars de jeu,...
creativevideomedia
ai-video-generation
101-skills
Générez des vidéos IA avec Google Veo, Seedance 2.0, HappyHorse, Wan, Grok et plus de 40 modèles via l'interface CLI inference.sh. Modèles : Veo 3.1, Veo 3, Seedance 2.0, HappyHorse 1.0, Wan 2.5, Grok Imagine Video, OmniHuman, Fabric, HunyuanVideo. Capacités : texte-vers-vidéo, image-vers-vidéo, référence-vers-vidéo, montage vidéo, synchronisation labiale, animation d'avatar, upscaling vidéo, son Foley. Utilisation pour : vidéos pour réseaux sociaux, contenu marketing, vidéos explicatives, démos produits, avatars IA. Déclencheurs : génération vidéo, vidéo IA,...
creativevideomedia
ai-image-generation
101-skills
Générez des images IA avec GPT-Image-2, FLUX, Gemini, Grok, Seedream, Reve et plus de 50 modèles via l'interface CLI inference.sh. Modèles : GPT-Image-2, FLUX Dev LoRA, FLUX.2 Klein LoRA, Gemini 3 Pro Image, Grok Imagine, Seedream 4.5, Reve, ImagineArt. Capacités : texte vers image, image vers image, inpainting, LoRA, édition d'image, upscaling, rendu de texte. Utilisation pour : art IA, maquettes de produits, concept art, graphiques pour réseaux sociaux, visuels marketing, illustrations. Déclencheurs : flux, génération d'image, image IA, texte vers...
creativemediaimage
web-search
101-skills
Recherche web et extraction de contenu avec Tavily et Exa via l'interface en ligne de commande inference.sh. Applications : Tavily Search, Tavily Extract, Exa Search, Exa Answer, Exa Extract. Capacités : recherche assistée par IA, extraction de contenu, réponses directes, recherche documentaire. Utilisation pour : recherche, pipelines RAG, vérification des faits, agrégation de contenu, agents. Déclencheurs : recherche web, tavily, exa, api de recherche, extraction de contenu, recherche, recherche internet, recherche IA, assistant de recherche, scraping web, rag, alternative à perplexity
researchweb-scrapingapi
agent-tools
101-skills
Exécutez des applications IA via l'interface CLI inference.sh - génération d'images, création de vidéos, LLM, recherche, 3D, automatisation Twitter. Modèles : FLUX, Veo, Gemini, Grok, Claude, Seedance, OmniHuman, Tavily, Exa, OpenRouter, et bien d'autres. À utiliser lors de l'exécution d'applications IA, de la génération d'images/vidéos, de l'appel aux LLM, de la recherche web ou de l'automatisation Twitter. Déclencheurs : inference.sh, infsh, modèle IA, exécuter ia, ia sans serveur, api ia, flux, veo, api claude, génération d'images, génération de vidéos, openrouter, tavily, recherche exa, api twitter, grok
infsh-cli
101-skills
Exécutez des applications IA via l'interface CLI inference.sh - génération d'images, création de vidéos, LLM, recherche, 3D, automatisation Twitter. Modèles : FLUX, Veo, Gemini, Grok, Claude, Seedance, OmniHuman, Tavily, Exa, OpenRouter, et bien d'autres. À utiliser lors de l'exécution d'applications IA, de la génération d'images/vidéos, de l'appel de LLM, de la recherche web ou de l'automatisation Twitter. Déclencheurs : inference.sh, infsh, modèle IA, exécuter IA, IA serverless, API IA, flux, veo, API Claude, génération d'images, génération de vidéos, openrouter, tavily, recherche Exa, API Twitter, grok
landing-page-design
101-skills
Optimisation de la conversion des pages d’atterrissage avec règles de mise en page, conception de la section héros et psychologie du CTA. Couvre la formule au-dessus de la ligne de flottaison, le placement des preuves sociales, le design mobile et la lecture en F. Utilisation pour : pages d’atterrissage de startup, pages produit, marketing SaaS, optimisation de la conversion. Déclencheurs : page d’atterrissage, section héros, au-dessus de la ligne de flottaison, optimisation de la conversion, conception de page d’atterrissage, bouton CTA, image héros, mise en page de page d’atterrissage, page d’atterrissage SaaS, conception de page produit, taux de conversion, page d’atterrissage...
designmarketingcreative
product-photography
101-skills
Photographie de produits IA avec éclairage studio, prises de vue lifestyle et conventions de packshot. Couvre les angles, arrière-plans, types d'ombres, hero shots et exigences d'images e-commerce. Utilisation pour : photos de produits, images e-commerce, listings Amazon, packshots, photographie lifestyle. Déclencheurs : photographie de produit, photo de produit, packshot, photographie e-commerce, prise de vue produit, image produit, photographie studio, produit lifestyle, photo produit Amazon, image de listing produit, hero shot, maquette produit,...
creativeecommerceimage