The library

Curated, not a catalog dump.

Every signature component, built for a real site. Filter, preview live, copy in React or Vue.

Browse the library

Landmark Kits

Depth, not breadth.

A deep, stand-alone collection built around one system. The first Kit is Reveal - preloaders and hero sections, one mixable system, WebGL and GSAP. React, Vue, HTML / CSS / JS. Not for Webflow.

See the Reveal Kit

Concepts, patterns, tools

Learn the vocabulary.

Definitions and examples for the GSAP and animation concepts behind production motion. Free, citable, and cross-linked with the components that use each idea.

Open concepts
GSAP component for Vue

Image Fly-In in Vue.

Imagery continuously flies in from deep inside the page toward the viewer, fading in and out around a central zone that stays clear for your content. The whole field glides softly with your cursor.

Install

Install Image Fly-In in your Vue project

Image Fly-In ships as a copy-paste Vue 3 single-file component. The only dependency is GSAP - Vue's reactivity and lifecycle hooks replace the React useGSAP adapter, so no extra package is needed.

BASH
Integrate

Where it goes in your Vue app

Image Fly-In is a leaf-level interactive component. Drop it into any page, layout, or other component. It works in Vue 3 + Vite, Nuxt 3, and any standalone Vue setup.

In Nuxt, no special handling is needed - the component is client-safe and self-cleaning. If you want to ensure it never runs on the server (rare), wrap your usage in <ClientOnly>.

The component uses the <script setup> composition API and TypeScript-friendly defineProps.

Gotchas

images prop mirrors the vanilla markup

The template renders one card per images[] entry with a size class derived from aspect - matches the vanilla HTML card set 1:1.

Ticker teardown in onBeforeUnmount

gsap.ticker.remove(tick), kill the reveal timeline + ScrollTrigger, revert SplitText, and remove the pointermove/pointerleave listeners.
FAQ

Common questions

Does Image Fly-In work in Nuxt 3?
Yes. Drop it into any page or component. The component is client-safe; Nuxt handles the SSR boundary automatically. If you want explicit client-only rendering, wrap in .
Does Image Fly-In work with Vue 2?
No - the component uses the Vue 3 Composition API and