Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
66 changes: 5 additions & 61 deletions app/page.tsx
Original file line number Diff line number Diff line change
@@ -1,65 +1,9 @@
import Image from "next/image";
import StatsSection from "@/components/sections/stats-section"

export default function Home() {
return (
<div className="flex min-h-screen items-center justify-center bg-zinc-50 font-sans dark:bg-black">
<main className="flex min-h-screen w-full max-w-3xl flex-col items-center justify-between py-32 px-16 bg-white dark:bg-black sm:items-start">
<Image
className="dark:invert"
src="/next.svg"
alt="Next.js logo"
width={100}
height={20}
priority
/>
<div className="flex flex-col items-center gap-6 text-center sm:items-start sm:text-left">
<h1 className="max-w-xs text-3xl font-semibold leading-10 tracking-tight text-black dark:text-zinc-50">
To get started, edit the page.tsx file.
</h1>
<p className="max-w-md text-lg leading-8 text-zinc-600 dark:text-zinc-400">
Looking for a starting point or more instructions? Head over to{" "}
<a
href="https://vercel.com/templates?framework=next.js&utm_source=create-next-app&utm_medium=appdir-template-tw&utm_campaign=create-next-app"
className="font-medium text-zinc-950 dark:text-zinc-50"
>
Templates
</a>{" "}
or the{" "}
<a
href="https://nextjs.org/learn?utm_source=create-next-app&utm_medium=appdir-template-tw&utm_campaign=create-next-app"
className="font-medium text-zinc-950 dark:text-zinc-50"
>
Learning
</a>{" "}
center.
</p>
</div>
<div className="flex flex-col gap-4 text-base font-medium sm:flex-row">
<a
className="flex h-12 w-full items-center justify-center gap-2 rounded-full bg-foreground px-5 text-background transition-colors hover:bg-[#383838] dark:hover:bg-[#ccc] md:w-[158px]"
href="https://vercel.com/new?utm_source=create-next-app&utm_medium=appdir-template-tw&utm_campaign=create-next-app"
target="_blank"
rel="noopener noreferrer"
>
<Image
className="dark:invert"
src="/vercel.svg"
alt="Vercel logomark"
width={16}
height={16}
/>
Deploy Now
</a>
<a
className="flex h-12 w-full items-center justify-center rounded-full border border-solid border-black/[.08] px-5 transition-colors hover:border-transparent hover:bg-black/[.04] dark:border-white/[.145] dark:hover:bg-[#1a1a1a] md:w-[158px]"
href="https://nextjs.org/docs?utm_source=create-next-app&utm_medium=appdir-template-tw&utm_campaign=create-next-app"
target="_blank"
rel="noopener noreferrer"
>
Documentation
</a>
</div>
</main>
</div>
);
<main className="h-[500vh] pt-[30vh]">
<StatsSection />
</main>
)
}
96 changes: 96 additions & 0 deletions components/sections/stats-section.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
import React from "react"
import Image from "next/image"

async function StatsSection() {
const stats = [
{
number: "2437",
label: "Registrations",
description: "2400+ registrations from across the country.",
},
{
number: "412",
label: "Participants",
description: "400+ participants joined the offline hackathon!",
},
{
number: "100+",
label: "Volunteers",
description: "To help you, get the best out of HackByte.",
},
{
number: "100+",
label: "Projects",
description: "Innovative submissions from various domains.",
},
]

return (
<section className="relative h-[50vh] md:h-[60vh] lg:h-[80vh] max-h-[90vh] w-full overflow-x-visible bg-black">
<div className="w-full h-32 absolute top-0 z-10">
<Image
src={"/stats-upper.svg"}
alt="glass design"
className="w-full -mt-[25%] "
width={100}
height={100}
/>
</div>

<div className="w-full h-full absolute z-0 overflow-hidden">
<Image
src={"/stats-bg.svg"}
alt="glass design"
className="w-full h-full object-cover"
width={100}
height={100}
/>
</div>

<div className="w-full h-32 absolute bottom-0 z-10 -mb-24 md:-mb-16 lg:-mb-6 xl:mb-0">
<Image
src={"/stats-bottom.svg"}
alt="glass design"
className="w-full"
width={100}
height={100}
/>
</div>

<div className="size-full flex justify-center items-center px-4 py-8 md:py-0">
<div className="grid grid-cols-2 md:grid-cols-4 gap-4 md:gap-6 max-w-7xl">
<Image
src={"/stats-registrations.svg"}
alt="glass design"
className="w-full h-auto max-w-[150px] md:max-w-50 xl:max-w-[300px] mx-auto"
width={300}
height={300}
/>
<Image
src={"/stats-participants.svg"}
alt="glass design"
className="w-full h-auto max-w-[150px] md:max-w-50 xl:max-w-[300px] mx-auto"
width={300}
height={300}
/>
<Image
src={"/stats-volunteers.svg"}
alt="glass design"
className="w-full h-auto max-w-[150px] md:max-w-[200px] xl:max-w-[300px] mx-auto"
width={300}
height={300}
/>
<Image
src={"/stats-projects.svg"}
alt="glass design"
className="w-full h-auto max-w-[150px] md:max-w-[200px] xl:max-w-[300px] mx-auto"
width={300}
height={300}
/>
</div>
</div>
</section>
)
}

export default StatsSection
3 changes: 3 additions & 0 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

9 changes: 9 additions & 0 deletions public/stats-bg.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
114 changes: 114 additions & 0 deletions public/stats-bottom.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading