What problem does it solve? GSAP animations in Vue, Nuxt, Svelte, and SvelteKit often break because tweens are created before the DOM exists, selectors leak outside the component, or ScrollTriggers are never killed on unmount, causing memory leaks and stale animations. ## Core Features & Use Cases - Lifecycle-Safe Setup: Creates tweens and ScrollTriggers inside onMounted (Vue) or onMount (Svelte) so the DOM is guaranteed to exist. - Scoped Selectors: Uses gsap.context(callback, scope) with a container ref so selectors like .box only match elements inside the component. - Automatic Cleanup: Calls ctx.revert() in onUnmounted or the onMount return function to kill all animations and ScrollTriggers and revert inline styles. - Use Case: A developer building a Nuxt landing page needs scroll-triggered reveals on multiple card components; this Skill provides the exact pattern to scope, animate, and clean up each instance without leaks. ## Quick Start Ask the AI to add a GSAP scroll-triggered fade-in animation to a Vue 3 component with proper cleanup on unmount.