import type { Metadata, Viewport } from "next"; import { CommandPalette } from "@/components/CommandPalette"; import { TopNav } from "@/components/TopNav"; import { getSessionUser } from "@/lib/auth/session"; import { APP_NAME, APP_TAGLINE, APP_VERSION } from "@/lib/config"; import "./globals.css"; /** * generateMetadata statt eines konstanten metadata-Objekts: nur so wird * APP_NAME zur Laufzeit gelesen. Ein konstanter Export waere beim Build * eingefroren und liesse sich im fertigen Docker-Image nicht mehr aendern. */ export async function generateMetadata(): Promise { return { title: { default: `${APP_NAME} – Vibe Coding Dashboard`, template: `%s · ${APP_NAME}`, }, description: "Uebersicht ueber alle Vibe-Coding Projekte: Status, Notizen und Live-Daten aus GitHub, GitLab und Gitea.", applicationName: APP_NAME, robots: { index: false, follow: false }, }; } export const viewport: Viewport = { themeColor: "#05060f", width: "device-width", initialScale: 1, }; export default async function RootLayout({ children, }: Readonly<{ children: React.ReactNode }>) { const user = await getSessionUser(); return (