Files
hwilliams-dev-root/app/layout.tsx

42 lines
927 B
TypeScript
Raw Normal View History

2026-03-26 13:32:06 -04:00
import type { Metadata } from "next";
2026-03-26 23:50:36 -04:00
import { JetBrains_Mono, DM_Sans } from "next/font/google";
import { SITE } from "@/data/content";
2026-03-26 13:32:06 -04:00
import "./globals.css";
2026-03-27 13:01:56 -04:00
import { ThemeProvider } from 'next-themes'
import ThemeSwitch from "@/components/ThemeSwitch";
2026-03-26 13:32:06 -04:00
2026-03-26 23:50:36 -04:00
const mono = JetBrains_Mono({
2026-03-26 13:32:06 -04:00
subsets: ["latin"],
2026-03-26 23:50:36 -04:00
variable: "--mono",
display: "swap",
2026-03-26 13:32:06 -04:00
});
2026-03-26 23:50:36 -04:00
const sans = DM_Sans({
2026-03-26 13:32:06 -04:00
subsets: ["latin"],
2026-03-26 23:50:36 -04:00
variable: "--sans",
display: "swap",
2026-03-26 13:32:06 -04:00
});
export const metadata: Metadata = {
2026-03-26 23:50:36 -04:00
title: SITE.title,
description: SITE.description,
2026-03-26 13:32:06 -04:00
};
export default function RootLayout({
children,
2026-03-26 23:50:36 -04:00
}: {
2026-03-26 13:32:06 -04:00
children: React.ReactNode;
2026-03-26 23:50:36 -04:00
}) {
2026-03-26 13:32:06 -04:00
return (
2026-03-27 13:01:56 -04:00
<html lang="en" className={`${mono.variable} ${sans.variable}`} suppressHydrationWarning>
<head />
<body>
<ThemeProvider attribute="data-theme">
<ThemeSwitch/>
{children}
</ThemeProvider>
</body>
2026-03-26 13:32:06 -04:00
</html>
);
}