import { Code2, Terminal, Workflow, Layers } from "lucide-react"; import { ToolCard } from "@/components/tool-card"; import { LocaleLink } from "@/components/locale-link"; import { SectionHeader } from "../shared/section"; import { getHomeDataSafe } from "../shared/home-data"; import type { ThemeModule } from "../types"; /** Niche:垂直行业目录(AI for Developers) */ const brand = { name: "DevAI.tools", tagline: "AI tools for developers — curated, tested, ranked by the community.", headline: "AI tools for developers", subheadline: "Code assistants, DevOps automation, testing copilots and everything else you ship with.", }; const navItems = [ { label: "Tools", href: "/tools" }, { label: "Workflows", href: "/best" }, { label: "Use Cases", href: "/ai-tools-for" }, { label: "Rankings", href: "/rankings" }, { label: "Submit", href: "/submit" }, ]; const footerGroups = [ { title: "Directory", links: [ { label: "All Tools", href: "/tools" }, { label: "Rankings", href: "/rankings" }, { label: "Use Cases", href: "/ai-tools-for" }, ], }, { title: "Build", links: [ { label: "Workflows", href: "/best" }, { label: "Submit a Tool", href: "/submit" }, { label: "Blog", href: "/blog" }, ], }, { title: "Legal", links: [ { label: "Terms", href: "/terms" }, { label: "Privacy", href: "/privacy" }, ], }, ]; async function NicheHome({ locale }: { locale: string }) { const data = await getHomeDataSafe(6); return (
{/* Terminal 风格 Hero */}
devai — zsh

${" "} find-ai-tools --for developer

{brand.headline}

{brand.subheadline}

Browse tools

{/* Use Cases as workflows */} {data.useCases.length > 0 && (
{data.useCases.slice(0, 6).map((uc) => (
{uc.toolCount} tools

{locale === "zh" && uc.nameZh ? uc.nameZh : uc.nameEn}

))}
)} {/* Trending tools */} {data.trending.length > 0 && (
{data.trending.slice(0, 6).map((tool, i) => ( ))}
)} {/* Workflows(collections) */} {data.collections.length > 0 && (
{data.collections.slice(0, 3).map((col) => (

{locale === "zh" && col.nameZh ? col.nameZh : col.nameEn}

{locale === "zh" && col.introZh ? col.introZh : col.introEn}

))}
)} {/* Categories */} {data.categories.length > 0 && (
{data.categories.slice(0, 14).map((cat) => ( {locale === "zh" && cat.nameZh ? cat.nameZh : cat.nameEn} {cat.toolCount} ))}
)}
); } export const nicheTheme: ThemeModule = { id: "niche", brand, HomePage: NicheHome, }; export { navItems as nicheNavItems, footerGroups as nicheFooterGroups };