♻️ refactor: all codebase

Completely refactoring the entire old codebase with a new codebase. This change also altered most of the core UI from the old codebase, replacing it with Shadcn with some customizations.
This commit is contained in:
2026-01-07 08:44:48 +07:00
parent fbcb575a36
commit a82e7a7424
95 changed files with 1143 additions and 3303 deletions

View File

@ -0,0 +1,20 @@
"use client";
import Image from "next/image";
import NavigationLink from "./NavigationLink";
const Navbar = () => {
return (
<div className="absolute z-10 top-0 w-full h-16 flex items-center">
<Image
src="/logo/astofo-long.png"
alt="Astofo Logo"
width={120}
height={0}
draggable={false}
/>
<NavigationLink />
</div>
);
};
export default Navbar;

View File

@ -0,0 +1,97 @@
"use client";
import {
NavigationMenu,
NavigationMenuContent,
NavigationMenuItem,
NavigationMenuLink,
NavigationMenuList,
NavigationMenuTrigger,
} from "@/shared/libs/shadcn/ui/navigation-menu";
import Link from "next/link";
const NavigationLink = () => {
return (
<div className="pl-10">
<NavigationMenu viewport={false}>
<NavigationMenuList className="flex-wrap">
<NavigationMenuItem>
<NavigationMenuLink asChild>
<Link href="/season" className="text-sm">
Season
</Link>
</NavigationMenuLink>
</NavigationMenuItem>
<NavigationMenuItem>
<NavigationMenuLink asChild>
<Link href="/genres" className="text-sm">
Genres
</Link>
</NavigationMenuLink>
</NavigationMenuItem>
<NavigationMenuItem>
<NavigationMenuLink asChild>
<Link href="/trending" className="text-sm">
Trending
</Link>
</NavigationMenuLink>
</NavigationMenuItem>
<NavigationMenuItem>
<NavigationMenuTrigger className="font-normal">
Media
</NavigationMenuTrigger>
<NavigationMenuContent>
<ul className="grid w-50 gap-4">
<li>
<NavigationMenuLink asChild>
<Link href="/release/finished" className="text-sm">
TV
</Link>
</NavigationMenuLink>
<NavigationMenuLink asChild>
<Link href="/release/onair" className="text-sm">
Movie
</Link>
</NavigationMenuLink>
<NavigationMenuLink asChild>
<Link href="/release/upcoming" className="text-sm">
OVA
</Link>
</NavigationMenuLink>
</li>
</ul>
</NavigationMenuContent>
</NavigationMenuItem>
<NavigationMenuItem>
<NavigationMenuTrigger className="font-normal">
Release
</NavigationMenuTrigger>
<NavigationMenuContent>
<ul className="grid w-50 gap-0">
<li>
<NavigationMenuLink asChild>
<Link href="/release/finished" className="text-sm">
Finished
</Link>
</NavigationMenuLink>
<NavigationMenuLink asChild>
<Link href="/release/onair" className="text-sm">
On Air
</Link>
</NavigationMenuLink>
<NavigationMenuLink asChild>
<Link href="/release/upcoming" className="text-sm">
Upcoming
</Link>
</NavigationMenuLink>
</li>
</ul>
</NavigationMenuContent>
</NavigationMenuItem>
</NavigationMenuList>
</NavigationMenu>
</div>
);
};
export default NavigationLink;