import type { Metadata } from "next";
import { ThemeProvider } from "next-themes";
import "./globals.css";
import { ConvexAuthNextjsServerProvider } from "@convex-dev/auth/nextjs/server";
import ConvexClientProvider from "@/components/ConvexClientProvider";
import { NavigationWrapper } from "@/components/NavigationWrapper";
import { Toaster } from "@/components/ui/toaster";
import { SearchProvider } from "@/components/search/SearchProvider";
export const metadata: Metadata = {
title: "Pathways - Learning Path Builder",
description:
"Create and share curated learning pathways with organized resources",
icons: {
icon: "/convex.svg",
},
};
export default function RootLayout({
children,
}: Readonly<{
children: React.ReactNode;
}>) {
return (
<ConvexAuthNextjsServerProvider>
<html lang="en" suppressHydrationWarning>
<body className="antialiased">
<ThemeProvider
attribute="class"
defaultTheme="light"
enableSystem={false}
disableTransitionOnChange
forcedTheme="light"
>
<ConvexClientProvider>
<SearchProvider>
<NavigationWrapper />
<main className="min-h-[calc(100vh-3.5rem)]">{children}</main>
<Toaster />
</SearchProvider>
</ConvexClientProvider>
</ThemeProvider>
</body>
</html>
</ConvexAuthNextjsServerProvider>
);
}
import type { Metadata } from "next";
import { ThemeProvider } from "next-themes";
import "./globals.css";
import { ConvexAuthNextjsServerProvider } from "@convex-dev/auth/nextjs/server";
import ConvexClientProvider from "@/components/ConvexClientProvider";
import { NavigationWrapper } from "@/components/NavigationWrapper";
import { Toaster } from "@/components/ui/toaster";
import { SearchProvider } from "@/components/search/SearchProvider";
export const metadata: Metadata = {
title: "Pathways - Learning Path Builder",
description:
"Create and share curated learning pathways with organized resources",
icons: {
icon: "/convex.svg",
},
};
export default function RootLayout({
children,
}: Readonly<{
children: React.ReactNode;
}>) {
return (
<ConvexAuthNextjsServerProvider>
<html lang="en" suppressHydrationWarning>
<body className="antialiased">
<ThemeProvider
attribute="class"
defaultTheme="light"
enableSystem={false}
disableTransitionOnChange
forcedTheme="light"
>
<ConvexClientProvider>
<SearchProvider>
<NavigationWrapper />
<main className="min-h-[calc(100vh-3.5rem)]">{children}</main>
<Toaster />
</SearchProvider>
</ConvexClientProvider>
</ThemeProvider>
</body>
</html>
</ConvexAuthNextjsServerProvider>
);
}