Back to Skills

remotion-to-hyperframes

Translate an existing Remotion (React-based) video composition into a HyperFrames HTML composition. Use ONLY when the user explicitly asks to port, convert, migrate, translate, or rewrite a Remotion composition as HyperFrames — for example "port my Remotion project to HyperFrames", "convert this Remotion code to HyperFrames", "migrate from Remotion", "translate this Remotion comp", or "rewrite this as HyperFrames HTML". Do NOT use when (a) the user is authoring a NEW HyperFrames composition, eve

13,811stars1,247forksUpdated 5/2/2026

Security Assessment

Safe(100/100)
Security Score100/100

About remotion-to-hyperframes

The `remotion-to-hyperframes` skill enables the automated translation of existing Remotion (React-based) video compositions into HyperFrames HTML compositions. It is designed to address the challenge of migrating complex video projects from the React-centric Remotion framework to the HTML + GSAP-based HyperFrames system, without manually rewriting code. By detecting and converting most Remotion patterns, this skill minimizes the risk of introducing errors during migration while ensuring that the resulting HyperFrames compositions maintain visual fidelity to the original source. The skill also includes safeguards against unsupported constructs, guiding users to runtime interop solutions when a direct translation is not feasible.

Key features of this skill include a thorough linting process that identifies blocking, warning, and informational patterns in the source code, a structured API mapping between Remotion and HyperFrames, and a tiered test corpus to validate translation quality using SSIM thresholds. It handles common video composition elements such as sequences, loops, absolute fills, and timing functions, while providing detailed notes on dropped or modified constructs. The skill also references comprehensive documentation for parameter mapping, sequencing, and timing, ensuring that translations are accurate and maintainable.

This skill is ideal for developers and technical artists who have existing Remotion projects and want to port them to HyperFrames without starting from scratch. It is particularly useful for teams looking to consolidate their video workflows into HTML-based compositions or integrate HyperFrames into their existing web projects. Target users include front-end engineers, motion graphics developers, and multimedia teams familiar with React who need a reliable, semi-automated migration path from Remotion to HyperFrames.

FAQ

When should I use the remotion-to-hyperframes skill?

You should use this skill only when explicitly migrating, converting, porting, or translating a Remotion composition to HyperFrames. Do not use it for creating new HyperFrames projects or when Remotion code is provided as a reference without a migration request.

What Remotion features are not supported by this translation?

Unsupported patterns include useState, useReducer, useEffect/useLayoutEffect with non-empty dependencies, async calculateMetadata, third-party React UI libraries, and certain @remotion/lambda features. The skill will recommend runtime interop for these constructs instead of attempting a lossy translation.

How does the skill ensure translation quality?

The skill uses a tiered test corpus (T1–T4) and measures translations against SSIM thresholds. Translations that fail to meet the validated baseline are flagged, ensuring visual fidelity and correctness.

Can warnings block the translation process?

No, warnings do not stop translation. The skill may drop the offending construct and note it in TRANSLATION_NOTES.md, allowing most compositions to be translated while highlighting potential gaps.

Who is the target user for this skill?

The skill is intended for developers, technical artists, and multimedia teams familiar with Remotion who need to migrate existing video projects to HyperFrames efficiently while maintaining fidelity and minimizing manual rewriting.

All Files

70 files
assets/.gitkeep0.0 KB
View
SKILL.md8.2 KB
View
assets/test-corpus/run.sh8.2 KB
View
assets/test-corpus/tier-3-data-driven/remotion-src/src/components/UnderlinedText.tsx1.1 KB
View
assets/test-corpus/tier-4-escape-hatch/validate.sh3.4 KB
View
scripts/tests/fixtures/clean.tsx1.3 KB
View
assets/test-corpus/tier-1-title-card/.gitignore0.1 KB
View
assets/test-corpus/tier-3-data-driven/remotion-src/src/index.ts0.1 KB
View
references/api-map.md12.1 KB
View
scripts/tests/fixtures/blocker.tsx1.8 KB
View
assets/test-corpus/tier-2-multi-scene/remotion-src/package.json0.3 KB
View
assets/test-corpus/tier-4-escape-hatch/README.md2.7 KB
View
references/lottie.md4.1 KB
View
assets/test-corpus/tier-2-multi-scene/hf-src/index.html3.7 KB
View
assets/test-corpus/tier-3-data-driven/README.md4.8 KB
View
assets/test-corpus/tier-3-data-driven/remotion-src/tsconfig.json0.3 KB
View
references/limitations.md4.7 KB
View
assets/test-corpus/tier-1-title-card/remotion-src/src/index.ts0.1 KB
View
assets/test-corpus/tier-2-multi-scene/remotion-src/tsconfig.json0.3 KB
View
assets/test-corpus/tier-3-data-driven/remotion-src/remotion.config.ts0.5 KB
View
assets/test-corpus/tier-4-escape-hatch/cases/05-lambda-config.tsx1.4 KB
View
references/transitions.md4.4 KB
View
assets/test-corpus/tier-2-multi-scene/.gitignore0.2 KB
View
assets/test-corpus/tier-3-data-driven/.gitignore0.1 KB
View
assets/test-corpus/tier-3-data-driven/remotion-src/src/Stargazed.tsx0.9 KB
View
assets/test-corpus/tier-4-escape-hatch/cases/07-custom-hook.tsx1.1 KB
View
scripts/frame_strip.sh3.6 KB
View
assets/test-corpus/.gitignore0.0 KB
View
assets/test-corpus/tier-2-multi-scene/remotion-src/src/MultiScene.tsx2.3 KB
View
assets/test-corpus/tier-3-data-driven/expected.json3.3 KB
View
assets/test-corpus/tier-4-escape-hatch/cases/02-use-effect-deps.tsx0.9 KB
View
references/sequencing.md5.0 KB
View
assets/test-corpus/tier-1-title-card/hf-src/index.html1.8 KB
View
assets/test-corpus/tier-1-title-card/remotion-src/src/TitleCard.tsx0.8 KB
View
assets/test-corpus/tier-1-title-card/remotion-src/tsconfig.json0.3 KB
View
assets/test-corpus/tier-2-multi-scene/remotion-src/src/index.ts0.1 KB
View
assets/test-corpus/tier-2-multi-scene/setup.sh1.2 KB
View
assets/test-corpus/tier-3-data-driven/remotion-src/package.json0.3 KB
View
assets/test-corpus/tier-3-data-driven/remotion-src/src/Root.tsx0.7 KB
View
assets/test-corpus/tier-4-escape-hatch/cases/04-third-party-react.tsx1.2 KB
View
assets/test-corpus/tier-4-escape-hatch/cases/06-warnings-only.tsx1.3 KB
View
references/timing.md6.0 KB
View
scripts/.gitkeep0.0 KB
View
assets/test-corpus/tier-1-title-card/remotion-src/package.json0.3 KB
View
assets/test-corpus/tier-2-multi-scene/expected.json1.9 KB
View
assets/test-corpus/tier-3-data-driven/remotion-src/src/components/StatCard.tsx1.4 KB
View
assets/test-corpus/tier-4-escape-hatch/expected.json2.7 KB
View
scripts/lint_source.py11.8 KB
View
assets/test-corpus/tier-2-multi-scene/remotion-src/src/Root.tsx0.3 KB
View
assets/test-corpus/tier-3-data-driven/hf-src/index.html8.3 KB
View
assets/test-corpus/tier-4-escape-hatch/cases/03-async-metadata.tsx1.1 KB
View
references/parameters.md4.5 KB
View
assets/test-corpus/tier-3-data-driven/remotion-src/src/scenes/OutroScene.tsx0.4 KB
View
references/escape-hatch.md5.3 KB
View
scripts/tests/smoke.sh3.5 KB
View
assets/test-corpus/tier-2-multi-scene/README.md3.1 KB
View
assets/test-corpus/tier-3-data-driven/remotion-src/src/components/AnimatedNumber.tsx0.7 KB
View
assets/test-corpus/tier-4-escape-hatch/cases/08-mixed.tsx1.1 KB
View
scripts/render_diff.sh3.0 KB
View
assets/test-corpus/tier-1-title-card/README.md2.2 KB
View
assets/test-corpus/tier-1-title-card/remotion-src/remotion.config.ts0.5 KB
View
assets/test-corpus/tier-3-data-driven/remotion-src/src/scenes/TitleScene.tsx1.2 KB
View
references/fonts.md3.2 KB
View
assets/test-corpus/tier-1-title-card/expected.json1.7 KB
View
assets/test-corpus/tier-1-title-card/remotion-src/src/Root.tsx0.3 KB
View
assets/test-corpus/tier-2-multi-scene/remotion-src/remotion.config.ts0.5 KB
View
assets/test-corpus/tier-4-escape-hatch/cases/01-use-state.tsx1.0 KB
View
references/media.md3.8 KB
View
assets/test-corpus/tier-3-data-driven/remotion-src/src/scenes/StatsScene.tsx0.7 KB
View
references/eval.md5.4 KB
View

Install remotion-to-hyperframes

Download and extract the skill files to your .claude/skills/ directory.

Quick Setup:

  1. Copy the skill folder to .claude/skills/
  2. Claude will automatically detect and use the skill