import Link from "next/link"; import { Metadata } from "next"; import { source } from "@/lib/source"; export const metadata: Metadata = { title: "OmniRoute Documentation", description: "Everything you need to route, compress, and scale your AI — setup guides, API reference, compression, deployment, and more.", openGraph: { title: "OmniRoute Documentation", description: "Comprehensive docs for OmniRoute AI gateway — setup, API, compression, deployment, and more.", type: "website", url: "https://omniroute.online/docs", }, twitter: { card: "summary_large_image", title: "OmniRoute Documentation", description: "Comprehensive docs for OmniRoute AI gateway", }, }; const featuredLinks = [ { href: "/docs/getting-started/quick-start", title: "Quick Start", icon: "rocket_launch", desc: "Get OmniRoute running in 3 minutes", }, { href: "/docs/getting-started/auto-combo-guide", title: "Auto-Combo Guide", icon: "auto_awesome", desc: "Let OmniRoute pick the best AI for you", }, { href: "/docs/getting-started/providers-guide", title: "Providers Guide", icon: "link", desc: "Connect AI providers in minutes", }, ]; const sections = [ { title: "For Non-Tech Users", subtitle: "Get started quickly — no technical background needed", icon: "rocket_launch", color: "green", folders: ["getting-started", "guides"], }, { title: "For Tech Users", subtitle: "Deep dive into architecture, APIs, and internals", icon: "code", color: "blue", folders: ["architecture", "reference", "frameworks", "routing", "security", "compression", "ops"], }, ]; export default function DocsHomePage() { const pages = source.getPages(); return (

OmniRoute Documentation

Everything you need to route, compress, and scale your AI

Press{" "} Ctrl K {" "} to search the docs

{featuredLinks.map((link) => ( {link.icon} {link.title} {link.desc} ))}
{sections.map((section) => { const sectionPages = pages.filter((p) => section.folders.some((folder) => p.url.startsWith(`/docs/${folder}/`)) ); return (
{section.icon}

{section.title}

{section.subtitle}

    {sectionPages.map((page) => (
  • {page.data.title}
  • ))}
); })}
); }