footer.tsx 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170
  1. "use client"
  2. import { Button } from "@/components/ui/button"
  3. import { TwitterIcon, GithubIcon, GlobeIcon } from "lucide-react"
  4. import Link from "next/link"
  5. import { useTranslations } from "next-intl"
  6. import Image from "next/image"
  7. interface FooterProps {
  8. locale: string
  9. }
  10. export default function Footer({ locale }: FooterProps) {
  11. const t = useTranslations("footer")
  12. const currentYear = new Date().getFullYear()
  13. return (
  14. <footer className="bg-background border-t">
  15. <div className="container mx-auto px-4 sm:px-6 lg:px-8 py-12">
  16. <div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-8">
  17. {/* Company Info */}
  18. <div className="space-y-4">
  19. <div className="flex items-center space-x-2">
  20. <Image
  21. src="/images/logo.png"
  22. alt="Aiartools Logo"
  23. width={32}
  24. height={32}
  25. className="w-8 h-8"
  26. />
  27. <h3 className="text-2xl font-bold bg-gradient-to-r from-purple-600 to-blue-600 bg-clip-text text-transparent">
  28. Aiartools
  29. </h3>
  30. </div>
  31. <p className="text-muted-foreground">{t("description")}</p>
  32. <div className="flex space-x-4">
  33. <a href="https://x.com/zyailive" target="_blank" rel="noopener noreferrer">
  34. <Button variant="ghost" size="icon">
  35. <TwitterIcon className="w-5 h-5" />
  36. </Button>
  37. </a>
  38. <a href="https://github.com/ItusiAI" target="_blank" rel="noopener noreferrer">
  39. <Button variant="ghost" size="icon">
  40. <GithubIcon className="w-5 h-5" />
  41. </Button>
  42. </a>
  43. <Link href={`/${locale}`}>
  44. <Button variant="ghost" size="icon">
  45. <GlobeIcon className="w-5 h-5" />
  46. </Button>
  47. </Link>
  48. </div>
  49. </div>
  50. {/* Product */}
  51. <div className="space-y-4">
  52. <h4 className="font-semibold">{t("product.title")}</h4>
  53. <ul className="space-y-2 text-muted-foreground">
  54. <li>
  55. <Link href={`/${locale}#features`} className="hover:text-foreground transition-colors">
  56. {t("product.features")}
  57. </Link>
  58. </li>
  59. <li>
  60. <Link href={`/${locale}#demo`} className="hover:text-foreground transition-colors">
  61. Demo
  62. </Link>
  63. </li>
  64. <li>
  65. <Link href={`/${locale}#pricing`} className="hover:text-foreground transition-colors">
  66. {t("product.pricing")}
  67. </Link>
  68. </li>
  69. </ul>
  70. </div>
  71. {/* Support */}
  72. <div className="space-y-4">
  73. <h4 className="font-semibold">{t("support.title")}</h4>
  74. <ul className="space-y-2 text-muted-foreground">
  75. <li>
  76. <Link href={`/${locale}/blog`} className="hover:text-foreground transition-colors">
  77. Blog
  78. </Link>
  79. </li>
  80. <li>
  81. <Link href={`/${locale}/blog/contact-us`} className="hover:text-foreground transition-colors">
  82. {t("support.contact")}
  83. </Link>
  84. </li>
  85. <li>
  86. <Link href={`/${locale}/terms`} className="hover:text-foreground transition-colors">
  87. {t("terms")}
  88. </Link>
  89. </li>
  90. <li>
  91. <Link href={`/${locale}/privacy`} className="hover:text-foreground transition-colors">
  92. {t("privacy")}
  93. </Link>
  94. </li>
  95. </ul>
  96. </div>
  97. {/* Friendly Links */}
  98. <div className="space-y-4">
  99. <h4 className="font-semibold">{t("friendlyLinks.title")}</h4>
  100. <ul className="space-y-2 text-muted-foreground">
  101. <li>
  102. <a
  103. href="https://www.itusi.cn/"
  104. target="_blank"
  105. rel="noopener noreferrer"
  106. className="hover:text-foreground transition-colors"
  107. >
  108. {t("friendlyLinks.itusi")}
  109. </a>
  110. </li>
  111. <li>
  112. <a
  113. href="https://voicecanvas.org/"
  114. target="_blank"
  115. rel="noopener noreferrer"
  116. className="hover:text-foreground transition-colors"
  117. >
  118. {t("friendlyLinks.voiceCanvas")}
  119. </a>
  120. </li>
  121. <li>
  122. <a
  123. href="https://pdf2md.site/"
  124. target="_blank"
  125. rel="noopener noreferrer"
  126. className="hover:text-foreground transition-colors"
  127. >
  128. {t("friendlyLinks.pdf2md")}
  129. </a>
  130. </li>
  131. </ul>
  132. </div>
  133. </div>
  134. <div className="border-t mt-12 pt-8 flex flex-col md:flex-row justify-between items-center">
  135. <p className="text-muted-foreground text-sm">
  136. © {currentYear} Aiartools. {t("copyright")}
  137. </p>
  138. <div className="flex space-x-6 mt-4 md:mt-0">
  139. <Link
  140. href={`/${locale}/privacy`}
  141. className="text-muted-foreground hover:text-foreground text-sm transition-colors"
  142. >
  143. {t("privacy")}
  144. </Link>
  145. <Link
  146. href={`/${locale}/terms`}
  147. className="text-muted-foreground hover:text-foreground text-sm transition-colors"
  148. >
  149. {t("terms")}
  150. </Link>
  151. <Link
  152. href={`/${locale}/cookies`}
  153. className="text-muted-foreground hover:text-foreground text-sm transition-colors"
  154. >
  155. {t("cookies")}
  156. </Link>
  157. </div>
  158. </div>
  159. </div>
  160. </footer>
  161. )
  162. }