2024-11-05 18:51:13 +01:00
|
|
|
import { Inter } from "next/font/google";
|
2024-11-05 19:15:13 +01:00
|
|
|
import { ThemeProvider } from "next-themes";
|
2024-11-08 14:51:00 +01:00
|
|
|
import Analytics from "@/components/Analytics";
|
2024-11-05 18:06:15 +01:00
|
|
|
import "./globals.css";
|
|
|
|
|
2024-11-05 18:51:13 +01:00
|
|
|
const inter = Inter({
|
|
|
|
weight: ["400", "600", "700", "900"],
|
2024-11-05 21:14:06 +01:00
|
|
|
subsets: ["latin"]
|
2024-11-05 18:06:15 +01:00
|
|
|
});
|
|
|
|
|
|
|
|
export const metadata = {
|
2024-11-05 18:51:13 +01:00
|
|
|
title: "MERNMail - a MERN stack webmail application",
|
|
|
|
description:
|
|
|
|
"MERNMail: Open-source webmail app built with MERN stack. Send, receive, & manage emails easily. Explore and contribute today!",
|
|
|
|
openGraph: {
|
|
|
|
title: "MERNMail - a MERN stack webmail application",
|
|
|
|
description:
|
|
|
|
"MERNMail: Open-source webmail app built with MERN stack. Send, receive, & manage emails easily. Explore and contribute today!",
|
|
|
|
url: `${process.env.NEXT_PUBLIC_WEBSITE_URL}`,
|
|
|
|
type: "website",
|
|
|
|
images: [
|
|
|
|
{
|
|
|
|
url: `${process.env.NEXT_PUBLIC_WEBSITE_URL}/metadata/mernmail-cover.png`,
|
|
|
|
width: 2560,
|
|
|
|
height: 1440,
|
2024-11-05 21:14:06 +01:00
|
|
|
alt: "MERNMail - a MERN stack webmail application"
|
|
|
|
}
|
|
|
|
]
|
2024-11-05 18:51:13 +01:00
|
|
|
},
|
|
|
|
twitter: {
|
|
|
|
card: "summary_large_image",
|
|
|
|
site: "@MERNMail",
|
|
|
|
title: "MERNMail - a MERN stack webmail application",
|
|
|
|
description:
|
|
|
|
"MERNMail: Open-source webmail app built with MERN stack. Send, receive, & manage emails easily. Explore and contribute today!",
|
2024-11-05 19:19:02 +01:00
|
|
|
images: [
|
2024-11-05 21:14:06 +01:00
|
|
|
`${process.env.NEXT_PUBLIC_WEBSITE_URL}/metadata/mernmail-cover.png`
|
2024-11-05 19:19:02 +01:00
|
|
|
],
|
2024-11-05 21:14:06 +01:00
|
|
|
creator: "@MERNMail"
|
|
|
|
}
|
2024-11-05 18:06:15 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
export default function RootLayout({ children }) {
|
|
|
|
return (
|
2024-11-05 19:15:13 +01:00
|
|
|
<html lang="en" suppressHydrationWarning>
|
|
|
|
<body className={`antialiased ${inter.className}`}>
|
2024-11-06 16:42:54 +01:00
|
|
|
<ThemeProvider
|
|
|
|
attribute="class"
|
|
|
|
enableSystem={true}
|
|
|
|
disableTransitionOnChange={true}
|
|
|
|
>
|
2024-11-05 19:15:13 +01:00
|
|
|
{children}
|
2024-11-08 14:51:00 +01:00
|
|
|
<Analytics pagesRouter={false} />
|
2024-11-05 19:15:13 +01:00
|
|
|
</ThemeProvider>
|
|
|
|
</body>
|
2024-11-05 18:06:15 +01:00
|
|
|
</html>
|
|
|
|
);
|
|
|
|
}
|