import { useEffect, useState } from "react"; import cn from "../utils/classnames.ts"; import { ExternalLink } from "lucide-react"; const ALL_TITLES = [ "Why TranslateGemma?", "为什么选择 TranslateGemma?", "Pourquoi TranslateGemma ?", "Warum TranslateGemma?", "¿Por qué TranslateGemma?", "TranslateGemma はなぜ?", "왜 TranslateGemma인가요?", "لماذا TranslateGemma؟", "Почему TranslateGemma?", "TranslateGemma কেন?", ]; function shuffle(arr: T[]): T[] { const a = [...arr]; for (let i = a.length - 1; i > 0; i--) { const j = Math.floor(Math.random() * (i + 1)); [a[i], a[j]] = [a[j], a[i]]; } return a; } export default function Waiting({ className = "" }: { className?: string }) { const [titles, setTitles] = useState(ALL_TITLES); const [titleIndex, setTitleIndex] = useState(0); const [visible, setVisible] = useState(true); useEffect(() => { const [first, ...rest] = ALL_TITLES; setTitles([first, ...shuffle(rest)]); }, []); useEffect(() => { const interval = setInterval(() => { setVisible(false); setTimeout(() => { setTitleIndex((i) => (i + 1) % titles.length); setVisible(true); }, 400); }, 1700); return () => clearInterval(interval); }, [titles]); return (

{titles[titleIndex]}

TranslateGemma is built on Gemma 3 from Google, and outperforms classic translation models thanks to its strong understanding of language semantics and context, not just statistical mappings between word pairs. This improves quality on nuanced and low-resource translation without needing massive amounts of parallel training data for every language pair.

While you're waiting,{" "} learn more about TranslateGemma .

); }