import type { Metadata } from "next"; import { Inter, JetBrains_Mono } from "next/font/google"; import "./globals.css"; import { Navbar } from "@/components/navbar"; import { Footer } from "@/components/footer"; import { Providers } from "@/components/providers"; const inter = Inter({ subsets: ["latin"], variable: "--font-sans", display: "swap", }); const jetbrainsMono = JetBrains_Mono({ subsets: ["latin"], variable: "--font-mono", display: "swap", }); export const metadata: Metadata = { metadataBase: new URL("https://codeboard.vectry.tech"), title: "CodeBoard — Understand any codebase in 5 minutes", description: "Paste a GitHub URL and get interactive onboarding documentation with architecture diagrams, module breakdowns, and getting started guides. Built by Vectry AI consultancy.", keywords: ["code analysis", "documentation", "github", "codebase", "AI", "developer tools"], authors: [{ name: "Vectry" }], creator: "Vectry", icons: { icon: [ { url: "/favicon.ico", sizes: "any" }, { url: "/favicon-32x32.png", sizes: "32x32", type: "image/png" }, { url: "/favicon-16x16.png", sizes: "16x16", type: "image/png" }, ], apple: [{ url: "/apple-touch-icon.png", sizes: "180x180" }], }, openGraph: { title: "CodeBoard — Understand any codebase in 5 minutes", description: "Paste a GitHub URL and get interactive onboarding documentation with architecture diagrams, module breakdowns, and getting started guides.", type: "website", url: "https://codeboard.vectry.tech", siteName: "CodeBoard", locale: "en_US", images: [ { url: "/og-image.png", width: 1200, height: 630, alt: "CodeBoard — Understand any codebase in 5 minutes", }, ], }, twitter: { card: "summary_large_image", title: "CodeBoard — Understand any codebase in 5 minutes", description: "Paste a GitHub URL and get interactive onboarding documentation with architecture diagrams, module breakdowns, and getting started guides.", images: ["/og-image.png"], }, alternates: { canonical: "https://codeboard.vectry.tech", }, robots: { index: true, follow: true, }, }; export default function RootLayout({ children, }: { children: React.ReactNode; }) { return ( Skip to content