import { useEffect, useState } from 'react'; import { motion } from 'framer-motion'; import { InteractiveBubbles } from './InteractiveBubbles'; interface Particle { id: number; x: number; y: number; size: number; speed: number; delay: number; } export const AnimatedBackground = () => { const [particles, setParticles] = useState([]); useEffect(() => { const createParticles = () => { const newParticles: Particle[] = []; for (let i = 0; i < 50; i++) { newParticles.push({ id: i, x: Math.random() * window.innerWidth, y: Math.random() * window.innerHeight, size: Math.random() * 4 + 2, speed: Math.random() * 0.5 + 0.1, delay: Math.random() * 5, }); } setParticles(newParticles); }; createParticles(); const handleResize = () => { createParticles(); }; window.addEventListener('resize', handleResize); return () => window.removeEventListener('resize', handleResize); }, []); return (
{/* Large liquid light cylinders from top */}
{/* Fluid wave bubbles */}
{/* Animated particles */} {particles.map((particle) => ( ))} {/* Interactive bubbles */} {/* Floating musical notes */} {/* Subtle grid pattern */}
); };