added custom 404 page
This commit is contained in:
parent
e6e3ff99c1
commit
25cfc0811a
6 changed files with 123 additions and 2 deletions
7
app/(root)/forum/page.tsx
Normal file
7
app/(root)/forum/page.tsx
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
import React from "react";
|
||||||
|
|
||||||
|
const Forum = () => {
|
||||||
|
return <div>Forum</div>;
|
||||||
|
};
|
||||||
|
|
||||||
|
export default Forum;
|
91
app/(root)/mods/page.tsx
Normal file
91
app/(root)/mods/page.tsx
Normal file
|
@ -0,0 +1,91 @@
|
||||||
|
import { Button } from "@/components/ui/button";
|
||||||
|
import {
|
||||||
|
Table,
|
||||||
|
TableBody,
|
||||||
|
TableCaption,
|
||||||
|
TableCell,
|
||||||
|
TableHead,
|
||||||
|
TableHeader,
|
||||||
|
TableRow,
|
||||||
|
} from "@/components/ui/table";
|
||||||
|
import { Download } from "lucide-react";
|
||||||
|
import Link from "next/link";
|
||||||
|
|
||||||
|
const downloads = [
|
||||||
|
{
|
||||||
|
date: "2024-06-01",
|
||||||
|
fileName: "SVRJS_v1.0.0.zip",
|
||||||
|
version: "1.0.0",
|
||||||
|
fileSize: "15MB",
|
||||||
|
downloadLink: "/downloads/SVRJS_v1.0.0.zip",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
date: "2024-06-10",
|
||||||
|
fileName: "SVRJS_v1.1.0.zip",
|
||||||
|
version: "1.1.0",
|
||||||
|
fileSize: "18MB",
|
||||||
|
downloadLink: "/downloads/SVRJS_v1.1.0.zip",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
date: "2024-06-15",
|
||||||
|
fileName: "SVRJS_v1.2.0.zip",
|
||||||
|
version: "1.2.0",
|
||||||
|
fileSize: "20MB",
|
||||||
|
downloadLink: "/downloads/SVRJS_v1.2.0.zip",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
date: "2024-06-20",
|
||||||
|
fileName: "SVRJS_v1.3.0.zip",
|
||||||
|
version: "1.3.0",
|
||||||
|
fileSize: "22MB",
|
||||||
|
downloadLink: "/downloads/SVRJS_v1.3.0.zip",
|
||||||
|
},
|
||||||
|
];
|
||||||
|
|
||||||
|
const Mods = () => {
|
||||||
|
return (
|
||||||
|
<section
|
||||||
|
id="mods"
|
||||||
|
className="wrapper container py-24 md:py-28 gap-4 flex flex-col"
|
||||||
|
>
|
||||||
|
<h1 className="text-3xl md:text-5xl font-bold text-black dark:bg-clip-text dark:text-transparent dark:bg-gradient-to-b dark:from-white dark:to-neutral-400">
|
||||||
|
SvrJS Mods
|
||||||
|
</h1>
|
||||||
|
<p className="text-lg text-muted-foreground text-start mb-4">
|
||||||
|
Get all the latest version of SVRJS Mods and compiled Files here!
|
||||||
|
</p>
|
||||||
|
<Table>
|
||||||
|
<TableCaption>A list of all available downloads.</TableCaption>
|
||||||
|
<TableHeader>
|
||||||
|
<TableRow>
|
||||||
|
<TableHead className="w-[150px]">Date</TableHead>
|
||||||
|
<TableHead>File Name</TableHead>
|
||||||
|
<TableHead>Version</TableHead>
|
||||||
|
<TableHead>Download Link</TableHead>
|
||||||
|
<TableHead className="text-right">File Size</TableHead>
|
||||||
|
</TableRow>
|
||||||
|
</TableHeader>
|
||||||
|
<TableBody>
|
||||||
|
{downloads.map((download) => (
|
||||||
|
<TableRow key={download.fileName}>
|
||||||
|
<TableCell className="font-medium">{download.date}</TableCell>
|
||||||
|
<TableCell>{download.fileName}</TableCell>
|
||||||
|
<TableCell>{download.version}</TableCell>
|
||||||
|
<TableCell className="text-left">{download.fileSize}</TableCell>
|
||||||
|
<TableCell className="flex items-center justify-end">
|
||||||
|
<Link href={download.downloadLink}>
|
||||||
|
<Button variant={"ghost"} className="">
|
||||||
|
<Download className="w-4 h-4 mr-2" />
|
||||||
|
Download
|
||||||
|
</Button>
|
||||||
|
</Link>
|
||||||
|
</TableCell>
|
||||||
|
</TableRow>
|
||||||
|
))}
|
||||||
|
</TableBody>
|
||||||
|
</Table>
|
||||||
|
</section>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
export default Mods;
|
19
app/not-found.tsx
Normal file
19
app/not-found.tsx
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
import Link from "next/link";
|
||||||
|
|
||||||
|
const NotFound = () => {
|
||||||
|
return (
|
||||||
|
<section id="404error" className="flex-center flex-col wrapper container">
|
||||||
|
<h1 className="text-3xl md:text-5xl text-center">
|
||||||
|
<span className="text-red-500">404</span> Page not Found
|
||||||
|
</h1>
|
||||||
|
<p className="text-lg mt-3 text-muted-foreground">
|
||||||
|
Please return back to{" "}
|
||||||
|
<Link href="/" className="underline font-bold">
|
||||||
|
Home
|
||||||
|
</Link>
|
||||||
|
</p>
|
||||||
|
</section>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
export default NotFound;
|
|
@ -85,7 +85,10 @@ const HeroCards = () => {
|
||||||
<Card className="absolute w-[340px] -top-[15px] drop-shadow-xl shadow-black/10 dark:shadow-white/10">
|
<Card className="absolute w-[340px] -top-[15px] drop-shadow-xl shadow-black/10 dark:shadow-white/10">
|
||||||
<CardHeader className="flex flex-row items-center gap-4 pb-2">
|
<CardHeader className="flex flex-row items-center gap-4 pb-2">
|
||||||
<Avatar>
|
<Avatar>
|
||||||
<AvatarImage alt={""} src={"https://github.com/shadcn.png"} />
|
<AvatarImage
|
||||||
|
alt={"twitteravatar"}
|
||||||
|
src={"https://github.com/shadcn.png"}
|
||||||
|
/>
|
||||||
<AvatarFallback>Proxy</AvatarFallback>
|
<AvatarFallback>Proxy</AvatarFallback>
|
||||||
</Avatar>
|
</Avatar>
|
||||||
<div className="flex flex-col">
|
<div className="flex flex-col">
|
||||||
|
|
|
@ -35,6 +35,7 @@ const Newsletter = () => {
|
||||||
</p>
|
</p>
|
||||||
<form
|
<form
|
||||||
className="relative flex flex-col w-full md:flex-row md:w-6/12 lg:w-4/12 mx-auto gap-4 md:gap-2"
|
className="relative flex flex-col w-full md:flex-row md:w-6/12 lg:w-4/12 mx-auto gap-4 md:gap-2"
|
||||||
|
aria-label="Email Information"
|
||||||
onSubmit={handleSubmit}
|
onSubmit={handleSubmit}
|
||||||
>
|
>
|
||||||
<Input placeholder="example@subscribe.com"></Input>
|
<Input placeholder="example@subscribe.com"></Input>
|
||||||
|
|
|
@ -27,7 +27,7 @@ export const NAVBAR = {
|
||||||
{
|
{
|
||||||
label: "Git",
|
label: "Git",
|
||||||
target: "_blank",
|
target: "_blank",
|
||||||
href: "https://github.com/",
|
href: "https://git.svrjs.org/",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in a new issue