PODIE by world of creator
Usage
132 / 1088
A small detail. A different feeling.INTERACTIVE PREVIEW
Carousel/React

Infinite Scroll GSAP Gallery

by Codrops
Installation & details

Infinite Scroll GSAP Gallery by Codrops. An infinite vertical image loop with GSAP motion and image-to-content transitions. Try the live React demo, inspect the original source, and install from PODIE.

React · Tailwind CSS · Author permission · Original GitHub source

Added to PODIE · Catalog updated · Page updated

Installation and usage

The published examples target React 19 and Tailwind CSS 4. See the recorded installation tests and their limits; verify compatibility in your own project.

This original Codrops demo runs inside a self-contained React iframe. The installation includes the original GitHub source and image assets. Set autoplay={false} for manual interaction. Bundled libraries retain their own licenses.

01 — Set up your project

First component? Initialize shadcn once.

pnpm dlx shadcn@latest init

02 — Install the component

pnpm dlx shadcn@latest add https://podie.dev/r/codrops--infinite-scroll-gsap-gallery.json

03 — Add it to your interface

Import the component from the path created by the installer.

'use client';
import EffectInfiniteScrollGsapGallery from '@/components/codrops/infinite-scroll-gsap-gallery';
export default function Demo() {
  return (
    <div
      className="expanded-demo"
      data-demo-id="codrops--infinite-scroll-gsap-gallery"
    >
      <EffectInfiniteScrollGsapGallery className="codrops-preview" />
    </div>
  );
}
Example styling

These styles belong to the demo wrapper. Add them to your stylesheet to reproduce this example.

.expanded-demo { position:relative; display:flex; align-items:center; justify-content:center; width:360px; max-width:100%; min-height:180px; padding:15px; isolation:isolate }
.demo-stack { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:22px }
.demo-action { display:inline-flex; align-items:center; justify-content:center; gap:8px; border:1px solid var(--border, #e5e5e5); border-radius:8px; background:var(--muted, #f5f5f5); color:var(--foreground, #171717); padding:10px 16px; font-size:13px; cursor:pointer }
.demo-action:hover { background:var(--accent, #eee) }
.demo-tile { padding:16px 22px; background:var(--muted, #f5f5f5); border:1px solid var(--border, #e5e5e5); border-radius:12px; color:var(--foreground, #171717); font-size:15px }
.demo-art { display:flex; align-items:center; justify-content:center; min-height:140px; padding:30px; width:280px; max-width:100%; background:var(--muted, #f5f5f5); border:1px solid var(--border, #e5e5e5); border-radius:16px; text-align:center; font-size:25px; letter-spacing:-.7px; color:var(--foreground, #171717) }
.demo-art.h-full { height:100%; min-height:0 }
.demo-gradient { position:relative; background:linear-gradient(145deg,#b6c7d1,#d5bcd6 50%,#e2d5bb); border-radius:16px; padding:20px; color:#222 }
.demo-gradient .demo-tile { background:#ffffff48 }
.demo-scene { position:relative; width:360px; height:260px; max-width:100%; overflow:hidden; border-radius:12px }
.demo-scene-label { position:absolute; left:0; right:0; top:50%; transform:translateY(-50%); text-align:center; font-size:25px; line-height:1.3; font-weight:500; letter-spacing:-.7px; z-index:1; pointer-events:none }
.demo-dot { display:block; width:60px; height:60px; border-radius:50%; background:var(--foreground, #171717) }
.expanded-demo:has(.codrops-preview) { width:100%; max-width:none; height:100%; padding:0 }
.codrops-preview { width:100%; height:100%; border:0; border-radius:inherit }

Dependencies and distribution

No additional npm dependencies are declared. The CLI installs declared dependencies. React is a project prerequisite; scenes may include bundled libraries with their own notices.

By Codrops · Author permission. Original component source and license included.

Choosing and integrating this component

PODIE source review ·

Where it fits

A continuously scrolling image-gallery study. The original gallery runs inside its own document. Infinite scene scrolling is separate from host-page scrolling.

Integration boundary

React wrapper with an isolated iframe scene. Replace the supplied images in the original source and give the iframe a deliberate height.

Checks before shipping

Check touch scroll handoff and keyboard access to any meaningful image links; an animated gallery is not automatically a semantic carousel.

Recorded verification

Included in the October 1, 2026 production sample: npm, pnpm, Yarn and Bun installation, TypeScript checking and a Vite build passed in four separate React 19.2.6 / Tailwind CSS 4.2.1 projects, with all 20 sampled entries installed together. Read the method and limitations.

No component-specific mobile performance or assistive-technology pass is claimed here. Test the final page, including its content, theme and application logic.

Reviewed source identity

Registry SHA-256: f9e71ac17fb4755c8c0ee9e58fd66a99eacbb9fb5d5b085dd71200201e097071

Entry file: components/codrops/infinite-scroll-gsap-gallery/index.tsx. 12 files in the registry payload.

Consider also: Rotating WebGL Gallery.

Skip the blank page.

Sign in free to start with ready-made components.

By continuing, you agree to our Terms and acknowledge our Privacy notice.

PODIE by world of creator

Unwoven Image Gallery
Unwoven Image Gallery
Topo Field
Topo Field
Text Clip Scroll
Text Clip Scroll
Grid Layout Animation
Grid Layout Animation
1,088 components to build on.