Communitygithub.com

davila7/remotion

Bewährte Methoden und umfassender Leitfaden für Remotion – programmatische Videocreation in React mit Animationen, Kompositionen und Medienverwaltung

Was ist remotion?

Die Fertigkeit 'davila7/remotion' bietet einen umfassenden Leitfaden und Best Practices für die Arbeit mit Remotion, einer Bibliothek zur programmatischen Videogenerierung mit React. Sie ist besonders nützlich für Entwickler, die dynamische, datengesteuerte Videos erstellen möchten – zum Beispiel für Marketinginhalte, Datenvisualisierungen oder personalisierte Videogrüße. Die Fertigkeit behandelt zentrale Konzepte wie Kompositionen als Grundstruktur eines Remotion-Projekts, die Verwendung von `<Sequence>` zur Organisation des zeitlichen Ablaufs sowie den Einsatz von `<TransitionSeries>` für fließende Übergänge. Sie unterstützt die Arbeit mit Audio, Video, Bildern, GIFs, SVG und Lottie-Dateien, bietet Techniken zur Performance-Optimierung (z. B. Memoisierung, `useCurrentFrame()`) und erklärt, wie statische Frames, Videos und Audiospuren exportiert werden. Entwickler lernen, mit React-Hooks wie `useVideoConfig()` und `useCurrentFrame()` auf Metadaten zuzugreifen, `registerRoot` zur Registrierung von Kompositionen zu nutzen und die `Player`-Komponente für die Vorschau und Interaktion einzusetzen. Die Fertigkeit basiert auf der offiziellen Remotion-Dokumentation und praktischen Beispielen und ist sowohl für Anfänger als auch für erfahrene Benutzer geeignet, die Remotion in Projekten für Web, soziale Medien oder automatisierte Video-Pipelines einsetzen.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/davila7/claude-code-templates/tree/main/skills/remotion

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Was macht remotion?

Bewährte Methoden und umfassender Leitfaden für Remotion – programmatische Videocreation in React mit Animationen, Kompositionen und Medienverwaltung

Einführung

Remotion ermöglicht es dir, Videos programmatisch mit React zu erstellen. Du kannst React-Komponenten, Hooks und die leistungsstarke Rendering-Engine von Remotion nutzen, um dynamische, datengesteuerte Videos zu generieren.

Kompositionen

Kompositionen sind die Grundbausteine eines Remotion-Projekts. Sie definieren die Metadaten eines Videos wie Auflösung, Bildrate und Dauer.

Definieren einer Komposition

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

export const RemotionRoot = () => {
  return (
    <>
      <Composition
        id="MeinVideo"
        component={MyVideo}
        durationInFrames={120}
        fps={30}
        width={1920}
        height={1080}
      />
    </>
  );
};

Registrieren von Kompositionen

Verwende registerRoot, um die Wurzelkomponente zu registrieren, die alle deine Kompositionen enthält.

import { registerRoot } from 'remotion';
import { RemotionRoot } from './Root';

registerRoot(RemotionRoot);

Sequenzen und Übergänge

<Sequence>

Die <Sequence>-Komponente organisiert den zeitlichen Ablauf deines Videos. Sie ermöglicht es dir, verschiedene Abschnitte unabhängig voneinander zu timen.

import { Sequence } from 'remotion';

export const MyVideo = () => {
  return (
    <>
      <Sequence from={0} durationInFrames={30}>
        <h1>Einführung</h1>
      </Sequence>
      <Sequence from={30} durationInFrames={60}>
        <h1>Hauptteil</h1>
      </Sequence>
    </>
  );
};

<TransitionSeries>

Für fließende Übergänge zwischen Sequenzen verwende <TransitionSeries> mit vordefinierten Übergängen wie slide, fade oder warpIn.

import { TransitionSeries, spring } from '@remotion/transitions';
import { slide } from '@remotion/transitions/slide';

export const MyVideo = () => {
  return (
    <TransitionSeries>
      <TransitionSeries.Sequence durationInFrames={40}>
        <h1>Szene 1</h1>
      </TransitionSeries.Sequence>
      <TransitionSeries.Transition
        presentation={slide()}
        timing={spring({ durationInFrames: 20 })}
      />
      <TransitionSeries.Sequence durationInFrames={60}>
        <h1>Szene 2</h1>
      </TransitionSeries.Sequence>
    </TransitionSeries>
  );
};

Arbeiten mit Medien

Remotion unterstützt verschiedene Medientypen: Audio, Video, Bilder, GIFs (mit @remotion/gif), SVGs und Lottie-Animationen (mit @remotion/lottie).

Video einbinden

import { Video } from 'remotion';
import source from './meinvideo.webm';

export const MyVideo = () => {
  return (
    <Video src={source} />
  );
};

Audio einbinden

import { Audio } from 'remotion';

export const MyVideo = () => {
  return (
    <Audio src="https://beispiel.de/audio.mp3" />
  );
};

Animationen

Mit useCurrentFrame()

Der Hook useCurrentFrame() gibt den aktuellen Frame-Index zurück, basierend darauf kannst du Animationen berechnen.

import { useCurrentFrame } from 'remotion';

export const MyVideo = () => {
  const frame = useCurrentFrame();
  return (
    <div>Frame: {frame}</div>
  );
};

Mit spring()

spring() erzeugt elastische Animationen, ideal für natürliche Bewegungen.

import { useCurrentFrame, spring } from 'remotion';

export const MyVideo = () => {
  const frame = useCurrentFrame();
  const scale = spring({ frame });
  return (
    <div style={{ transform: `scale(${scale})` }}>
      Spring-Animation
    </div>
  );
};

Rendern und Export

Statische Frames exportieren

Exportiere einzelne Frames als Bilder:

npx remotion still src/index.tsx MeinVideo ausgabe/frame.png --frame=10

Video exportieren

Exportiere das gesamte Video:

npx remotion render src/index.tsx MeinVideo ausgabe/video.mp4

Audio exportieren

Exportiere die Audiospur:

npx remotion render src/index.tsx MeinVideo ausgabe/audio.mp3

Performance-Optimierung

  • Verwende Memoisierung (React.memo, useMemo) für schwere Komponenten.
  • Nutze useCurrentFrame() sparsam und nur dort, wo es nötig ist.
  • Ziehe stand-alone Medien (<Img>, <Video>) <OffthreadVideo> vor, um die Frame-Rendering-Performance zu verbessern.
  • Setze useVideoConfig() ein, um auf Konfigurationsdaten zuzugreifen, ohne die Komponente neu zu berechnen.

Player-Komponente

Die <Player>-Komponente erlaubt es, Remotion-Videos interaktiv im Browser abzuspielen, mit Steuerungselementen für Wiedergabe, Pause und Zeitleiste.

import { Player } from '@remotion/player';
import { MyVideo } from './MyVideo';

export const App = () => {
  return (
    <Player
      component={MyVideo}
      durationInFrames={120}
      compositionWidth={1920}
      compositionHeight={1080}
      fps={30}
    />
  );
};

Nützliche Hooks

HookBeschreibung
useVideoConfig()Gibt die Konfiguration der aktuellen Komposition zurück (width, height, fps, durationInFrames)
useCurrentFrame()Gibt den aktuellen Frame-Index (0-basiert) zurück
useTime()Gibt die aktuelle Zeit in Sekunden zurück

Ressourcen

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

davila7/citation-management

Comprehensive citation management for academic research. Search Google Scholar and PubMed for papers, extract accurate metadata, validate citations, and generate properly formatted BibTeX entries. This skill should be used when you need to find papers, verify citation information, convert DOIs to BibTeX, or ensure reference accuracy in scientific writing.

davila7/claude-code-templates

Balance visual design with ATS compatibility for creative roles. Use when the user is in design, art, writing, marketing creative, or any visual/creative field and needs a resume that looks distinctive but still parses.

davila7/claude-code-templates

Optimize resumes for software engineering, product management, and technical roles. Use when the user mentions software engineer, developer, PM, data scientist, ML, DevOps, or other technical role resumes.

davila7/claude-code-templates

Expert in building portfolios that actually land jobs and clients - not just showing work, but creating memorable experiences. Covers developer portfolios, designer portfolios, creative portfolios, and portfolios that convert visitors into opportunities. Use when: portfolio, personal website, showcase work, developer portfolio, designer portfolio.

davila7/claude-code-templates

Create premium, Awwwards-quality website designs as React (.jsx) components that look like they were built by a top-tier agency charging $50k+ per project. Use this skill whenever the user asks for a website, landing page, portfolio, or web component that should look expensive, premium, luxury, editorial, high-end, or agency-quality. Also trigger when the user mentions Awwwards, FWA, award-winning design, or references brands like Apple, Aesop, Bottega Veneta, Stripe, or any luxury/fashion/design-forward brand. Trigger when the user says things like "make it look professional", "make it look expensive", "I want it to look really good", "high quality design", "not generic", or expresses dissatisfaction with typical AI-generated website aesthetics. Do NOT trigger for dashboards, admin panels, internal tools, or functional UI where aesthetics are secondary to utility — the standard frontend-design skill handles those.

davila7/claude-code-templates

Generates creative domain name ideas for your project and checks availability across multiple TLDs (.com, .io, .dev, .ai, etc.). Saves hours of brainstorming and manual checking.

davila7/claude-code-templates

When the user wants to optimize, improve, or increase conversions on any marketing page — including homepage, landing pages, pricing pages, feature pages, or blog posts. Also use when the user says "CRO," "conversion rate optimization," "this page isn't converting," "improve conversions," or "why isn't this page working." For signup/registration flows, see signup-flow-cro. For post-signup activation, see onboarding-cro. For forms outside of signup, see form-cro. For popups/modals, see popup-cro.

davila7/excel-analysis

Analyze Excel spreadsheets, create pivot tables, generate charts, and perform data analysis. Use when analyzing Excel files, spreadsheets, tabular data, or .xlsx files.

davila7/exploratory-data-analysis

Perform comprehensive exploratory data analysis on scientific data files across 200+ file formats. This skill should be used when analyzing any scientific data file to understand its structure, content, quality, and characteristics. Automatically detects file type and generates detailed markdown reports with format-specific analysis, quality metrics, and downstream analysis recommendations. Covers chemistry, bioinformatics, microscopy, spectroscopy, proteomics, metabolomics, and general scientific data formats.

davila7/generate-image

Generate or edit images using AI models (FLUX, Gemini). Use for general-purpose image generation including photos, illustrations, artwork, visual assets, concept art, and any image that isn't a technical diagram or schematic. For flowcharts, circuits, pathways, and technical diagrams, use the scientific-schematics skill instead.

davila7/jira

Use when the user mentions Jira issues (e.g., "PROJ-123"), asks about tickets, wants to create/view/update issues, check sprint status, or manage their Jira workflow. Triggers on keywords like "jira", "issue", "ticket", "sprint", "backlog", or issue key patterns.

davila7/literature-review

Conduct comprehensive, systematic literature reviews using multiple academic databases (PubMed, arXiv, bioRxiv, Semantic Scholar, etc.). This skill should be used when conducting systematic literature reviews, meta-analyses, research synthesis, or comprehensive literature searches across biomedical, scientific, and technical domains. Creates professionally formatted markdown documents and PDFs with verified citations in multiple citation styles (APA, Nature, Vancouver, etc.).

davila7/marketing-strategy-pmm

Product marketing, positioning, GTM strategy, and competitive intelligence. Includes ICP definition, April Dunford positioning methodology, launch playbooks, competitive battlecards, and international market entry guides. Use when developing positioning, planning product launches, creating messaging, analyzing competitors, entering new markets, enabling sales, or when user mentions product marketing, positioning, GTM, go-to-market, competitive analysis, market entry, or sales enablement.

davila7/market-research-reports

Generate comprehensive market research reports (50+ pages) in the style of top consulting firms (McKinsey, BCG, Gartner). Features professional LaTeX formatting, extensive visual generation with scientific-schematics and generate-image, deep integration with research-lookup for data gathering, and multi-framework strategic analysis including Porter's Five Forces, PESTLE, SWOT, TAM/SAM/SOM, and BCG Matrix.

davila7/markitdown

Convert files and office documents to Markdown. Supports PDF, DOCX, PPTX, XLSX, images (with OCR), audio (with transcription), HTML, CSV, JSON, XML, ZIP, YouTube URLs, EPubs and more.

davila7/mermaid-diagram-specialist

Mermaid diagram specialist for creating flowcharts, sequence diagrams, ERDs, and architecture visualizations

davila7/mobile-design

Mobile-first design thinking and decision-making for iOS and Android apps. Touch interaction, performance patterns, platform conventions. Teaches principles, not fixed values. Use when building React Native, Flutter, or native mobile apps.

davila7/prompt-engineer

Expert in designing effective prompts for LLM-powered applications. Masters prompt structure, context management, output formatting, and prompt evaluation. Use when: prompt engineering, system prompt, few-shot, chain of thought, prompt design.

davila7/scientific-slides

Build slide decks and presentations for research talks. Use this for making PowerPoint slides, conference presentations, seminar talks, research presentations, thesis defense slides, or any scientific talk. Provides slide structure, design templates, timing guidance, and visual validation. Works with PowerPoint and LaTeX Beamer.

davila7/scientific-visualization

Create publication figures with matplotlib/seaborn/plotly. Multi-panel layouts, error bars, significance markers, colorblind-safe, export PDF/EPS/TIFF, for journal-ready scientific plots.

Verwandte Skills