49 lines
1.2 KiB
TypeScript
49 lines
1.2 KiB
TypeScript
import type { Metadata, Viewport } from "next";
|
|
import { Geist } from "next/font/google";
|
|
import { Header } from "@/components/Header";
|
|
import { BottomNav } from "@/components/BottomNav";
|
|
import "./globals.css";
|
|
|
|
const geistSans = Geist({
|
|
variable: "--font-geist-sans",
|
|
subsets: ["latin"],
|
|
});
|
|
|
|
export const metadata: Metadata = {
|
|
title: {
|
|
default: "SunnyMH — Free Manga Reader",
|
|
template: "%s | SunnyMH",
|
|
},
|
|
description:
|
|
"Read free public domain manga online. Beautiful reader optimized for mobile.",
|
|
metadataBase: new URL("https://manga.04080616.xyz"),
|
|
openGraph: {
|
|
type: "website",
|
|
siteName: "SunnyMH",
|
|
},
|
|
};
|
|
|
|
export const viewport: Viewport = {
|
|
width: "device-width",
|
|
initialScale: 1,
|
|
maximumScale: 1,
|
|
viewportFit: "cover",
|
|
themeColor: "#ffffff",
|
|
};
|
|
|
|
export default function RootLayout({
|
|
children,
|
|
}: Readonly<{
|
|
children: React.ReactNode;
|
|
}>) {
|
|
return (
|
|
<html lang="en" className={`${geistSans.variable} h-full antialiased`}>
|
|
<body className="min-h-full flex flex-col bg-background text-foreground">
|
|
<Header />
|
|
<main className="flex-1 pb-20 sm:pb-0">{children}</main>
|
|
<BottomNav />
|
|
</body>
|
|
</html>
|
|
);
|
|
}
|