subman-nextjs/src/app/layout.tsx

53 lines
1.6 KiB
TypeScript
Raw Normal View History

2024-06-11 08:16:34 +00:00
import type { Metadata } from "next";
import { Inter } from "next/font/google";
2024-06-20 18:02:25 +00:00
2024-06-20 22:31:48 +00:00
import { ThemeProvider } from "./ui/theme";
2024-06-14 09:25:18 +00:00
import { Toaster } from "@/components/ui/toaster";
import "./globals.css";
2024-06-20 18:02:25 +00:00
import Navlinks from "./ui/navLinks";
2024-06-24 09:55:19 +00:00
import { ModeToggle } from "./ui/modeToggle";
2024-06-11 08:16:34 +00:00
const inter = Inter({ subsets: ["latin"] });
export const metadata: Metadata = {
2024-06-12 12:59:21 +00:00
title: "Subman",
description: "A self-hosted literary submission tracker."
2024-06-11 08:16:34 +00:00
};
2024-06-20 10:49:24 +00:00
2024-06-11 08:16:34 +00:00
export default function RootLayout({
children,
}: Readonly<{
children: React.ReactNode;
}>) {
return (
<html lang="en">
2024-06-11 13:37:22 +00:00
<body className={inter.className}>
2024-06-20 22:31:48 +00:00
<ThemeProvider
attribute="class"
defaultTheme="system"
enableSystem
disableTransitionOnChange
>
2024-06-24 09:55:19 +00:00
<div id="layout-container" className="p-4 w-screen h-screen mt-6 flex justify-center">
2024-06-22 16:12:55 +00:00
<div className="grid grid-cols-12 w-5/6">
2024-06-24 09:55:19 +00:00
<div id="sidebar" className="col-start-1 col-end-3 h-5/6 flex flex-col"> <header className="">
2024-06-24 16:57:25 +00:00
<h1 className="font-black text-4xl text-primary-foreground bg-primary antialiased w-full p-2 rounded-tl-3xl pl-6">SubMan</h1>
2024-06-24 09:55:19 +00:00
<p className="mt-2 mx-1 text-sm antialiased">The self-hosted literary submission tracker.</p>
</header>
2024-06-22 16:12:55 +00:00
<Navlinks className="mt-6" />
2024-06-24 09:55:19 +00:00
<footer className="mt-auto"><ModeToggle /></footer>
2024-06-20 22:31:48 +00:00
</div>
2024-06-22 16:12:55 +00:00
<div className="col-start-3 col-span-full">
2024-06-20 22:31:48 +00:00
{children}
</div>
2024-06-20 21:21:37 +00:00
</div>
2024-06-19 21:21:56 +00:00
</div>
2024-06-20 22:31:48 +00:00
<Toaster />
</ThemeProvider>
2024-06-14 09:25:18 +00:00
</body>
2024-06-19 21:21:56 +00:00
</html >
2024-06-11 08:16:34 +00:00
);
}