Hyperiux Vault

Portal Carousel

Galleries 9

About

Fullscreen image carousel with a NEXT preview that rides the cursor. Click and the preview expands from the cursor to fill the screen; rapid clicks stack nested frames. Rolling titles and slide counter, GSAP-driven, keyboard and touch accessible, reduced-motion crossfade.

Built with React and Tailwind. Copy the prompt and paste it into Claude Code, Cursor or Lovable: your agent adds Portal Carousel to your project and fits it to your theme.

Code

How Portal Carousel is used: the demo's code. The component's own source comes with a free account.

Usage.tsx

"use client";

import PortalCarousel, { type PortalCarouselImage } from "@/components/ui/portal-carousel";

const ASSETS = "https://pub-8abee449136941f5b0a1cd2c014534e9.r2.dev/vault-listing-images/assets-images/portal-carousel";

const images: PortalCarouselImage[] = [
  { src: `${ASSETS}/crimson-drift.jpg`, title: "Crimson Drift", alt: "Woman tossing her hair in red and amber light, motion-blurred" },
  { src: `${ASSETS}/night-rider.jpg`, title: "Night Rider", alt: "Cyclist in an orange jacket panning past city lights at night" },
  { src: `${ASSETS}/light-trails.jpg`, title: "Light Trails", alt: "Dark SUV streaking past with headlight trails" },
  { src: `${ASSETS}/ember-motion.jpg`, title: "Ember Motion", alt: "Dancers blurred mid-movement in an orange-lit room" },
  { src: `${ASSETS}/platform-wind.jpg`, title: "Platform Wind", alt: "Woman on a subway platform, hair swept by a passing train" },
];

const settings = {
  label: "Next",
  thumbWidth: 200,
  followSpeed: 0.14,
  duration: 1.2,
};

export default function PortalCarouselDemo(props: Partial<typeof settings>) {
  const s = { ...settings, ...props };

  return (
    <PortalCarousel
      images={images}
      label={s.label}
      thumbWidth={s.thumbWidth}
      followSpeed={s.followSpeed}
      duration={s.duration}
    />
  );
}

Dependencies

More by Hyperiux Vault

View all
  • Product Timeline

    Product Timeline

    2.2K
  • Stack Spread

    Stack Spread

    1.3K
  • Arrow Fill Button

    Arrow Fill Button

    904
  • Interactive List Preview

    Interactive List Preview

    866
  • Shiny Button

    Shiny Button

    728
  • Circular Split Roll

    Circular Split Roll

    628
  • Zoom Slider

    Zoom Slider

    419
  • Stack Loader

    Stack Loader

    370

More in Galleries

View all
  • Thumbnail image viewer

    Thumbnail image viewer

    39
  • Editorial Collage Hero

    Editorial Collage Hero

    421
  • Animated Gallery

    Animated Gallery

    1.4K
  • 3D Carousel

    3D Carousel

    2.5K
  • 3D Parallax Unfurling Gallery

    3D Parallax Unfurling Gallery

    964
  • Gallery Animation

    Gallery Animation

    1K
  • Hero Section 6

    Hero Section 6

    876
  • Layout Grid

    Layout Grid

    819