subman-nextjs/src/app/layout.tsx

52 lines
1.5 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-14 09:25:18 +00:00
import { Toaster } from "@/components/ui/toaster";
2024-06-12 12:48:37 +00:00
import "./tailwind.css";
2024-06-19 21:21:56 +00:00
import Link from "next/link";
2024-06-20 10:49:24 +00:00
import { ComponentProps } from "react";
2024-06-20 10:54:56 +00:00
import { Send } from "lucide-react";
2024-06-20 18:02:25 +00:00
import Navlinks from "./ui/navLinks";
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
function NavLink(props: ComponentProps<"div"> & { href: string }) {
return (
<Link href={props.href}><h1 className="text-4xl font-black my-2">{props.children}</h1></Link>
)
}
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 21:21:37 +00:00
<div id="layout-container" className="p-4 w-screen mt-6 flex justify-center">
<div className="grid grid-cols-6 w-5/6">
<div id="sidebar" className="col-start-1 col-end-2">
<header className="">
<h1 className="font-black text-4xl antialiased inline">SubMan</h1>
<p className="font-bold text-m antialiased">The self-hosted literary submission tracker.</p>
</header>
<Navlinks />
</div>
<div className="col-start-2 col-span-full">
{children}
</div>
2024-06-19 21:21:56 +00:00
</div>
2024-06-11 13:37:22 +00:00
</div>
2024-06-14 09:25:18 +00:00
<Toaster />
</body>
2024-06-19 21:21:56 +00:00
</html >
2024-06-11 08:16:34 +00:00
);
}