| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- import type { Metadata } from 'next';
- import localFont from 'next/font/local';
- import { GeistSans } from 'geist/font/sans';
- import { GeistMono } from 'geist/font/mono';
- import './globals.css';
- import 'animate.css';
- import 'katex/dist/katex.min.css';
- import { ThemeProvider } from '@/lib/hooks/use-theme';
- import { I18nProvider } from '@/lib/hooks/use-i18n';
- import { Toaster } from '@/components/ui/sonner';
- import { ServerProvidersInit } from '@/components/server-providers-init';
- const inter = localFont({
- src: '../node_modules/@fontsource-variable/inter/files/inter-latin-wght-normal.woff2',
- variable: '--font-sans',
- weight: '100 900',
- });
- export const metadata: Metadata = {
- title: 'OpenMAIC',
- description:
- 'The open-source AI interactive classroom. Upload a PDF to instantly generate an immersive, multi-agent learning experience.',
- };
- export default function RootLayout({
- children,
- }: Readonly<{
- children: React.ReactNode;
- }>) {
- return (
- <html lang="en" className={inter.variable} suppressHydrationWarning>
- <body
- className={`${GeistSans.variable} ${GeistMono.variable} antialiased`}
- suppressHydrationWarning
- >
- <ThemeProvider>
- <I18nProvider>
- <ServerProvidersInit />
- {children}
- <Toaster position="top-center" />
- </I18nProvider>
- </ThemeProvider>
- </body>
- </html>
- );
- }
|