mirror of
https://github.com/arthur-pbty/binouz.git
synced 2026-06-03 15:07:17 +02:00
b7010a1704
- Implemented AuthButton component for Discord sign-in and sign-out functionality. - Created CopyButton component for copying server IP addresses. - Developed EventCard and GradeCard components for displaying events and grades. - Added Footer and Navbar components for site navigation and information. - Introduced PurchaseButton for handling grade purchases with Stripe integration. - Created SectionHeader component for consistent section titles. - Implemented session management with SessionProvider for NextAuth. - Set up PostgreSQL database with Docker and Prisma for data management. - Added admin guard functionality to restrict access to certain routes. - Configured NextAuth with Discord provider for user authentication. - Defined Prisma schema for user, admin, grade, event, and purchase models. - Seeded database with initial grades and events data. - Added SVG hero image for the landing page. - Extended NextAuth types to include additional user properties.
76 lines
3.1 KiB
TypeScript
76 lines
3.1 KiB
TypeScript
import CopyButton from "@/components/copy-button";
|
|
import { siteConfig } from "@/lib/site";
|
|
|
|
const quickStats = [
|
|
{
|
|
title: "Competitive UHC",
|
|
detail: "UHC 1.8.X, PvP focus",
|
|
},
|
|
{
|
|
title: "Events weekly",
|
|
detail: "Tournaments and rush",
|
|
},
|
|
{
|
|
title: "Premium rewards",
|
|
detail: "Grades, cosmetics, perks",
|
|
},
|
|
];
|
|
|
|
export default function Hero() {
|
|
return (
|
|
<section className="relative overflow-hidden pb-20 pt-16 md:pb-28">
|
|
<div className="absolute inset-0 bg-[url('/hero.svg')] bg-cover bg-center opacity-80" />
|
|
<div className="absolute inset-0 bg-linear-to-b from-slate-950/30 via-slate-950/70 to-slate-950" />
|
|
<div className="absolute left-1/2 top-16 h-64 w-130 -translate-x-1/2 rounded-full bg-violet-600/20 blur-[120px]" />
|
|
<div className="relative mx-auto flex w-full max-w-6xl flex-col gap-10 px-6 md:flex-row md:items-center">
|
|
<div className="max-w-xl space-y-6">
|
|
<div className="inline-flex items-center gap-2 rounded-full border border-white/15 bg-white/5 px-4 py-2 text-[10px] uppercase tracking-[0.4em] text-cyan-200/80">
|
|
BinouzUHC - Minecraft 1.8.X
|
|
</div>
|
|
<h1 className="text-4xl font-semibold text-white md:text-6xl">
|
|
Immerse yourself in elite UHC PvP.
|
|
</h1>
|
|
<p className="text-base text-slate-300">
|
|
{siteConfig.description}
|
|
</p>
|
|
<div className="flex flex-wrap items-center gap-4">
|
|
<CopyButton value={siteConfig.serverAddress} label="Copy" />
|
|
<a
|
|
href="#grades"
|
|
className="inline-flex items-center justify-center rounded-full border border-white/15 bg-white/10 px-5 py-2 text-xs font-semibold uppercase tracking-[0.3em] text-white transition hover:bg-white/20"
|
|
>
|
|
Voir les grades
|
|
</a>
|
|
</div>
|
|
<div className="flex flex-wrap gap-6 text-xs uppercase tracking-[0.3em] text-slate-400">
|
|
<span>{siteConfig.serverAddress}</span>
|
|
<span>1.8.X</span>
|
|
<span>Discord ready</span>
|
|
</div>
|
|
</div>
|
|
<div className="grid w-full gap-4 md:max-w-md">
|
|
{quickStats.map((item) => (
|
|
<div
|
|
key={item.title}
|
|
className="rounded-2xl border border-white/10 bg-white/5 p-6 text-sm text-slate-200 backdrop-blur"
|
|
>
|
|
<p className="text-xs uppercase tracking-[0.3em] text-cyan-200/80">
|
|
{item.title}
|
|
</p>
|
|
<p className="mt-3 text-base text-white">{item.detail}</p>
|
|
</div>
|
|
))}
|
|
<div className="rounded-2xl border border-white/10 bg-linear-to-br from-violet-600/30 via-indigo-500/20 to-cyan-400/20 p-6 text-sm text-slate-200 backdrop-blur">
|
|
<p className="text-xs uppercase tracking-[0.3em] text-cyan-200/80">
|
|
Drop in
|
|
</p>
|
|
<p className="mt-3 text-base text-white">
|
|
Ranked, balanced, and tuned for competitive squads.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
);
|
|
}
|