Spaces:
Sleeping
Sleeping
| import type { Metadata } from "next"; | |
| import { Geist, Geist_Mono } from "next/font/google"; | |
| import "./globals.css"; | |
| import { Toaster } from "@/components/ui/sonner"; | |
| import { ThemeProvider } from "@/components/theme-provider"; | |
| const geistSans = Geist({ | |
| variable: "--font-geist-sans", | |
| subsets: ["latin"], | |
| }); | |
| const geistMono = Geist_Mono({ | |
| variable: "--font-geist-mono", | |
| subsets: ["latin"], | |
| }); | |
| export const metadata: Metadata = { | |
| title: "Seqcolyte Studio", | |
| description: "Protocol-aware sequencing QC — inputs, pipeline, results, and a grounded assistant.", | |
| }; | |
| export default function RootLayout({ | |
| children, | |
| }: Readonly<{ | |
| children: React.ReactNode; | |
| }>) { | |
| return ( | |
| <html | |
| lang="en" | |
| suppressHydrationWarning | |
| className={`${geistSans.variable} ${geistMono.variable} h-full antialiased`} | |
| > | |
| <body className="bg-background text-foreground flex min-h-full flex-col"> | |
| <ThemeProvider | |
| attribute="class" | |
| defaultTheme="system" | |
| enableSystem | |
| disableTransitionOnChange | |
| > | |
| {children} | |
| <Toaster richColors position="top-right" /> | |
| </ThemeProvider> | |
| </body> | |
| </html> | |
| ); | |
| } | |