animation-reverse-engineering

Solid

Reverse-engineer any motion reference (a video from X/Twitter, Dribbble, a screen recording, a GIF) into production animation code through frame-level dissection. Use when the user shares a video/URL and says "implement this animation", "recreate this motion", "port this interaction", "how does this animate", "clone this effect", or wants to study how a reference moves before building it. Covers both timeline choreography (entrances, text sweeps, staggers) and interaction-driven motion (scrubbers, sliders, drag-driven scenes). Also fires when the user asks where to find good animation references or inspiration — it suggests curated sites and X accounts to hunt, then reverse-engineers whatever they bring back. Ports default to React/TypeScript with framer-motion; the analysis phases are framework-agnostic.

Web & Frontend 128 stars 81 forks Updated 1 months ago Apache-2.0

Install

View on GitHub

Quality Score: 84/100

Stars 20%
70
Recency 20%
75
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# Animation Reverse-Engineering → Production Port > Source & upstream: [scriptscrypt/animation-reverse-engineering](https://github.com/scriptscrypt/animation-reverse-engineering) — improvements land there first. Turn a motion reference into faithful production code via a measured, frame-level pipeline instead of eyeballing. **Eyeballing a video at 1× lies about easing, stagger order, overlap, and timing** — always dissect first. ``` acquire → overview → dissect → analyse → (prototype) → port → verify → document ``` ## Phase 0 — Classify the animation Before anything, decide which species you're studying. It changes the analysis checklist and the port architecture: | Species | Driven by | Examples | Port shape | | --- | --- | --- | --- | | **Timeline choreography** | Time (mount, trigger) | Page entrances, text sweeps, staggered lists, modals | Keyframes, springs, delays, `AnimatePresence` | | **Interaction-driven** | User input (drag, scroll, hover) | Scrubbers, sliders, pull-to-refresh, scroll scenes | One progress value → property mappings + derived discrete state | Hybrids exist (an interaction that *triggers* timelines — e.g. release-to-reset rewinds). Classify each layer separately. ## Phase 0.5 — No reference yet? Help the user discover one If the user wants a great animation but has no reference link, don't invent motion from scratch — send them hunting and offer this shortlist (full list, search phrases, and capture tips in `references/discovery.md`): - **[6...

Details

Author
sendaifun
Repository
sendaifun/skills
Created
8 months ago
Last Updated
1 months ago
Language
TypeScript
License
Apache-2.0

Bundled in these plugins

Similar Skills

Semantically similar based on skill content — not just same category

Web & Frontend Listed

animation

Interactive motion brief. Six-section survey (page-load, scroll, text, blocks, micro-interactions, intensity) driven by the user's references from references/animation/ and references/motion/. Outputs brief/animation.md and appends motion tokens to DESIGN-LOCK §5. /build enforces the resulting animations as required elements.

2 Updated 3 weeks ago
dkadts
Web & Frontend Listed

motion-dev-animations

Creates 120fps GPU-accelerated animations with Motion.dev (Framer Motion successor) for React, Next.js, Svelte, and Astro projects. Use when user requests animation, motion, scroll effects, parallax, hero animations, gestures, drag interactions, spring physics, whileHover effects, whileInView animations, animated UI, micro-interactions, page transitions, or layout animations. Generates production TypeScript/JSX code with accessibility (prefers-reduced-motion) and performance validation (≥60fps). Supports entrance animations, gesture interactions (hover/tap/drag), scroll-based reveals, and layout transitions using spring physics and natural timing. Do NOT use for CSS-only transitions (use native CSS), static sites without JavaScript, Vue animations (use motion-v variant instead), or SVG/Canvas complex animations (GSAP better suited).

3 Updated today
whimzyLive
Web & Frontend Listed

roto

Adapt an existing reference video into an editable HyperFrames composition by preserving its original motion. Use when the user supplies a video and wants their own text, brand, or product in it: "recreate this ad with our copy", "swap the text in this animation", "make our version of this motion design", "reproduce this reference frame-accurately", "I have an MP4, put our headlines on it". The reference's real gradients, camera moves, cursor, and UI animation are kept as text-cleared background plates; only the typography is re-authored in JavaScript, so it stays editable and re-renders deterministically. Not for animating from scratch (use /motion-graphics or /general-video), not for captioning untouched footage (/embedded-captions), and not for overlaying graphics on talking-head video (/talking-head-recut).

0 Updated 3 days ago
nkapila6