iamsatish4564

Portfolio and Image Gallery

Galleries 240

About

Here is Portfolio and Image Gallery component

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

Code

How Portfolio and Image Gallery is used: the demo's code. The component's own source comes with a free account.

Usage.tsx

'use client';

import React from 'react';
import { RadialScrollGallery } from '@/components/ui/portfolio-and-image-gallery';
import { Check } from 'lucide-react';

const steps = [
{ step: "01", title: "Discovery", desc: "Requirements" },
{ step: "02", title: "Strategy", desc: "Roadmap" },
{ step: "03", title: "Design", desc: "Interface" },
{ step: "04", title: "Build", desc: "Development" },
{ step: "05", title: "Launch", desc: "Deployment" },
];

export default function DemoRadialScrollGalleryBasic() {
return (
  <div className="relative bg-background font-sans text-foreground overflow-hidden rounded-lg border w-full">
    {/* Header Section */}
    <div className="h-[300px] flex items-center justify-center px-4 pt-10">
      <div className="text-center space-y-3">
        <div className="inline-flex items-center rounded-full border border-border bg-secondary px-2.5 py-0.5 text-xs font-semibold text-secondary-foreground">
           Workflow
        </div>
        <h1 className="text-3xl font-bold tracking-tighter sm:text-4xl">
          The Process
        </h1>
        <p className="text-muted-foreground text-sm max-w-[300px] mx-auto">
          Scroll down to see the steps.
        </p>
      </div>
    </div>

    <RadialScrollGallery
      className="!min-h-[600px]" // Override full screen height for previewer
      baseRadius={350}
      mobileRadius={220}
      scrollDuration={1500}
      visiblePercentage={40}
    >
      {(hoveredIndex) =>
        steps.map((item, index) => {
          const isActive = hoveredIndex === index;
          return (
            <div
              key={index}
              className={`
                w-[160px] h-[240px] sm:w-[200px] sm:h-[280px] 
                rounded-xl border p-5 flex flex-col justify-between items-start 
                transition-all duration-500 shadow-sm
                ${isActive 
                  ? 'bg-primary border-primary text-primary-foreground scale-100 shadow-xl' 
                  : 'bg-card border-border text-card-foreground scale-90 opacity-60'
                }
              `}
            >
              <div className="w-full flex justify-between items-start">
                <span className={`font-mono text-lg ${isActive ? 'text-primary-foreground/60' : 'text-muted-foreground'}`}>
                  {item.step}
                </span>
                {isActive && <Check className="w-5 h-5 text-primary-foreground" />}
              </div>
              
              <div>
                <h3 className="text-xl font-bold mb-1">{item.title}</h3>
                <p className={`text-xs ${isActive ? 'text-primary-foreground/80' : 'text-muted-foreground'}`}>
                  {item.desc}
                </p>
              </div>
            </div>
          );
        })
      }
    </RadialScrollGallery>

    <div className="h-[300px] flex items-center justify-center bg-muted/20 border-t border-border">
      <p className="text-muted-foreground text-sm">End of Workflow</p>
    </div>
  </div>
);
}

Dependencies

More by iamsatish4564

View all
  • Micro Expander

    Micro Expander

    353
  • Animated Profile Card

    Animated Profile Card

    137
  • Morph Button

    Morph Button

    112
  • Curtain Button

    Curtain Button

    76
  • Prime Button

    Prime Button

    63
  • Eclipse Button

    Eclipse Button

    39

More in Galleries

View all
  • Thumbnail image viewer

    Thumbnail image viewer

    61
  • Editorial Collage Hero

    Editorial Collage Hero

    455
  • Animated Gallery

    Animated Gallery

    1.5K
  • Image Gallery

    Image Gallery

    91
  • Pendant Lamp Rail Gallery – Lighting Store Hero Section

    Pendant Lamp Rail Gallery – Lighting Store Hero Section

  • 3D Parallax Unfurling Gallery

    3D Parallax Unfurling Gallery

    1K
  • Elastic Gallery

    Elastic Gallery

    947
  • Hero Section 6

    Hero Section 6

    897