Files
cronmaster/app/layout.tsx
2025-09-01 15:23:59 +01:00

75 lines
2.0 KiB
TypeScript

import type { Metadata } from "next";
import { JetBrains_Mono, Inter } from "next/font/google";
import "./globals.css";
import { ThemeProvider } from "./_components/ui/ThemeProvider";
import { ServiceWorkerRegister } from "./_components/ui/ServiceWorkerRegister";
const jetbrainsMono = JetBrains_Mono({
subsets: ["latin"],
variable: "--font-mono",
display: "swap",
});
const inter = Inter({
subsets: ["latin"],
variable: "--font-sans",
display: "swap",
});
export const metadata: Metadata = {
title: "Cr*nMaster - Cron Management made easy",
description: "The ultimate cron job management platform with intelligent scheduling, real-time monitoring, and powerful automation tools",
manifest: "/manifest.json",
appleWebApp: {
capable: true,
statusBarStyle: "default",
title: "Cr*nMaster",
},
formatDetection: {
telephone: false,
},
icons: {
icon: "/logo.png",
shortcut: "/logo.png",
apple: "/logo.png",
},
};
export const viewport = {
width: "device-width",
initialScale: 1,
maximumScale: 1,
userScalable: false,
themeColor: "#3b82f6",
};
export default function RootLayout({
children,
}: {
children: React.ReactNode;
}) {
return (
<html lang="en" suppressHydrationWarning>
<head>
<meta name="application-name" content="Cr*nMaster" />
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-status-bar-style" content="default" />
<meta name="apple-mobile-web-app-title" content="Cr*nMaster" />
<meta name="mobile-web-app-capable" content="yes" />
<link rel="apple-touch-icon" href="/logo.png" />
</head>
<body className={`${inter.variable} ${jetbrainsMono.variable} font-sans`}>
<ThemeProvider
attribute="class"
defaultTheme="dark"
enableSystem
disableTransitionOnChange
>
{children}
</ThemeProvider>
<ServiceWorkerRegister />
</body>
</html>
);
}