36 lines
936 B
TypeScript
36 lines
936 B
TypeScript
import type { Metadata } from "next";
|
||
import localFont from "next/font/local";
|
||
import "./globals.css";
|
||
|
||
const geistSans = localFont({
|
||
src: "./fonts/GeistVF.woff",
|
||
variable: "--font-geist-sans",
|
||
weight: "100 900",
|
||
});
|
||
|
||
const geistMono = localFont({
|
||
src: "./fonts/GeistMonoVF.woff",
|
||
variable: "--font-geist-mono",
|
||
weight: "100 900",
|
||
});
|
||
|
||
export const metadata: Metadata = {
|
||
title: "无人直播系统 · live.local",
|
||
description: "Linux ARM/x86 一键部署的无人直播控制台:YouTube 转播、TikTok HDMI、SRS、Neko 与系统服务",
|
||
};
|
||
|
||
export default function RootLayout({
|
||
children,
|
||
}: Readonly<{
|
||
children: React.ReactNode;
|
||
}>) {
|
||
return (
|
||
<html lang="zh-CN" data-theme="dark" suppressHydrationWarning>
|
||
<body className={`${geistSans.variable} ${geistMono.variable} font-sans antialiased`}>
|
||
<div className="app-bg-layer" aria-hidden />
|
||
{children}
|
||
</body>
|
||
</html>
|
||
);
|
||
}
|