svrjs-nextjs-website/app/(root)/layout.tsx

60 lines
2.4 KiB
TypeScript
Raw Normal View History

2024-06-20 15:38:05 +02:00
import Footer from "@/components/shared/Footer";
import Navbar from "@/components/shared/Navbar";
2024-08-30 19:14:32 +02:00
import Banner from "@/components/widgets/Banner";
2024-08-30 19:36:10 +02:00
import { Home } from "lucide-react";
2024-06-22 10:30:51 +02:00
import { Metadata } from "next";
2024-07-28 17:20:53 +02:00
// baseURL [ENV]
2024-06-22 10:30:51 +02:00
export const metadata: Metadata = {
title: "SVRJS - A Web Server running on Node.js",
description:
"Experience unparalleled flexibility with SVR.JS - the ultimate web server for Node.js. Host web pages, run server-side JavaScript, utilize mods for extended functionality, and more. Integrated log viewer and user management tools included. Also supports Bun (experimental).",
openGraph: {
title: "SVRJS - A Web Server running on Node.js",
description:
"Experience unparalleled flexibility with SVR.JS - the ultimate web server for Node.js. Host web pages, run server-side JavaScript, utilize mods for extended functionality, and more. Integrated log viewer and user management tools included. Also supports Bun (experimental).",
url: "https://svrjs.org",
type: "website",
images: [
{
url: "https://svrjs.vercel.app/metadata/svrjs-cover.png",
width: 800,
height: 600,
alt: "SVRJS - A Web Server running on Node.js"
}
]
},
twitter: {
card: "summary_large_image",
site: "@SVR_JS",
title: "SVRJS - A Web Server running on Node.js",
description:
"Experience unparalleled flexibility with SVR.JS - the ultimate web server for Node.js. Host web pages, run server-side JavaScript, utilize mods for extended functionality, and more. Integrated log viewer and user management tools included. Also supports Bun (experimental).",
images: ["https://svrjs.vercel.app/metadata/svrjs-cover.png"],
creator: "@SVR_JS"
}
2024-06-22 10:30:51 +02:00
};
2024-08-01 16:32:57 +02:00
2024-06-20 15:38:05 +02:00
export default function PageLayout({
children
2024-06-20 15:38:05 +02:00
}: {
children: React.ReactNode;
2024-06-20 15:38:05 +02:00
}) {
const iconClassName = "w-4 h-4 flex-center text-zinc-950 -mr-2";
return (
<div className="flex flex-col min-h-screen">
{/* Comment or edit this whenever required */}
<Banner
icon={<Home className={iconClassName} />}
title="SVR.JS 4.0.0 is now on beta!"
announcement="The latest beta version is SVR.JS 4.0.0-beta3."
link="https://blog.svrjs.org/2024/08/30/SVR-JS-4-0-0-beta3-has-been-released/"
buttonText="Read more"
/>
<Navbar />
<div className="flex-grow flex-1 overflow-x-hidden">{children}</div>
<Footer />
</div>
);
2024-06-20 15:38:05 +02:00
}