'use client' import { Check, Copy } from 'lucide-react' import Link from 'next/link' import { useEffect, useState } from 'react' import { Container } from './Container' import { Button } from './ui/button' import { useTranslations } from 'next-intl' const ProductHunt = () => { return ( ) } export function Hero() { const t = useTranslations('HomePage') const [isCopied, setIsCopied] = useState(false) useEffect(() => { const timer = setTimeout(() => { setIsCopied(false) }, 2000) return () => clearTimeout(timer) }, [isCopied]) return ( {t('hero.deploy')}{' '} {t('hero.anywhere')} {' '} {t('hero.with')} {t('hero.des')} curl -sSL https://dokploy.com/install.sh | sh navigator.clipboard .writeText( 'curl -sSL https://dokploy.com/install.sh | sh', ) .then(() => setIsCopied(true)) .catch(() => setIsCopied(false)) } > {isCopied ? ( ) : ( )} {/* Discord */} {/* @ts-expect-error */} Github {t('hero.featuredIn')} {[ [ { name: 'Product Hunt', logo: }, // { name: "Hacker News", logo: }, ], ].map((group, groupIndex) => ( {group.map((company) => ( {company.logo} ))} ))} ) }
{t('hero.des')}
curl -sSL https://dokploy.com/install.sh | sh navigator.clipboard .writeText( 'curl -sSL https://dokploy.com/install.sh | sh', ) .then(() => setIsCopied(true)) .catch(() => setIsCopied(false)) } > {isCopied ? ( ) : ( )}
{t('hero.featuredIn')}