"use client"
import { Button } from "@/components/ui/button"
import { Card } from "@/components/ui/card"
import { Input } from "@/components/ui/input"
import { cn } from "@/lib/utils"
import { motion, useAnimation } from "framer-motion"
import { Circle, Github, Heart, Search, Sparkles } from "lucide-react"
import Link from "next/link"
import { useEffect, useState } from "react"
interface IconCardProps {
name: string
imageUrl: string
}
function IconCard({ name, imageUrl }: IconCardProps) {
return (
{name}
)
}
function ElegantShape({
className,
delay = 0,
width = 400,
height = 100,
rotate = 0,
gradient = "from-rose-500/[0.5]",
mobileWidth,
mobileHeight,
}: {
className?: string
delay?: number
width?: number
height?: number
rotate?: number
gradient?: string
mobileWidth?: number
mobileHeight?: number
}) {
const controls = useAnimation()
const [isMobile, setIsMobile] = useState(false)
useEffect(() => {
const checkMobile = () => {
setIsMobile(window.innerWidth < 768)
}
checkMobile()
window.addEventListener("resize", checkMobile)
return () => window.removeEventListener("resize", checkMobile)
}, [])
return (
)
}
export function HeroSection({ totalIcons }: { totalIcons: number }) {
const [searchQuery, setSearchQuery] = useState("")
const fadeUpVariants = {
hidden: { opacity: 0, y: 30 },
visible: (i: number) => ({
opacity: 1,
y: 0,
transition: {
duration: 1,
delay: 0.5 + i * 0.2,
ease: [0.25, 0.4, 0.25, 1],
},
}),
}
return (
Made with love by Homarr Labs
Your definitive source for
dashboard icons.
A collection of {totalIcons} curated icons for services, applications and
tools, designed specifically for dashboards and app directories.
)
}