Animated Beam Multiple Output
Animated Beam Multiple Output é um componente de efeito para React e Tailwind CSS, da biblioteca UI Layouts, com licença MIT. Copia e cola no teu projeto.
UI Layouts
MIT
effects
O que é
Animated Beam Multiple Output é um componente de efeito para React e Tailwind CSS, da biblioteca UI Layouts, com licença MIT. Copia e cola no teu projeto.
Como usar
Abre o componente no catálogo, carrega em copiar, e cola no teu projeto. O prompt copiado leva o código e as regras para o teu agente o reproduzir sem alterar nada.
Cinco cópias grátis por mês. Sem cartão.
Não precisa de pacotes além do que o projeto já tem
Licença
Este componente vem de UI Layouts e é redistribuído sob a licença MIT, que permite uso comercial. O aviso de copyright viaja com o código.
Animated Beam Multiple Output
'use client';
import { AnimatedBeam, Circle, Icons } from '@/components/ui/animated-beam';
import { cn } from '@/lib/utils';
import React, { forwardRef, useRef } from 'react';
export default function AnimatedBeamMultipleOutput({ className }: { className?: string }) {
const containerRef = useRef<HTMLDivElement>(null);
const div1Ref = useRef<HTMLDivElement>(null);
const div2Ref = useRef<HTMLDivElement>(null);
const div3Ref = useRef<HTMLDivElement>(null);
const div4Ref = useRef<HTMLDivElement>(null);
const div5Ref = useRef<HTMLDivElement>(null);
const div6Ref = useRef<HTMLDivElement>(null);
const div7Ref = useRef<HTMLDivElement>(null);
return (
<div
className={cn(
'relative flex w-full max-w-[500px] mx-auto items-center justify-center overflow-hidden rounded-lg border dark:bg-neutral-800 bg-neutral-50 lg:p-10 sm:p-4 p-2 md:shadow-xl',
className
)}
ref={containerRef}
>
<div className='flex h-full w-full flex-row items-stretch justify-between gap-10'>
<div className='flex flex-col justify-center'>
<Circle ref={div7Ref}>
<Icons.user />
</Circle>
</div>
<div className='flex flex-col justify-center'>
<Circle ref={div6Ref} className='h-16 w-16'>
<Icons.logo />
</Circle>
</div>
<div className='flex flex-col justify-center gap-2'>
<Circle ref={div1Ref}>
<Icons.typescript />
</Circle>
<Circle className='p-2' ref={div2Ref}>
<Icons.tailwindcss />
</Circle>
<Circle className='p-2' ref={div3Ref}>
<Icons.nextjs />
</Circle>
<Circle className='p-2' ref={div4Ref}>
<Icons.reactjs />
</Circle>
<Circle className='p-2' ref={div5Ref}>
<Icons.framer />
</Circle>
</div>
</div>
{/* AnimatedBeams */}
<AnimatedBeam containerRef={containerRef} fromRef={div1Ref} toRef={div6Ref} duration={3} />
<AnimatedBeam containerRef={containerRef} fromRef={div2Ref} toRef={div6Ref} duration={3} />
<AnimatedBeam containerRef={containerRef} fromRef={div3Ref} toRef={div6Ref} duration={3} />
<AnimatedBeam containerRef={containerRef} fromRef={div4Ref} toRef={div6Ref} duration={3} />
<AnimatedBeam containerRef={containerRef} fromRef={div5Ref} toRef={div6Ref} duration={3} />
<AnimatedBeam containerRef={containerRef} fromRef={div6Ref} toRef={div7Ref} duration={3} />
</div>
);
}