Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add: sponsors section #95

Merged
merged 2 commits into from
Dec 12, 2024
Merged
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
32 changes: 22 additions & 10 deletions package-lock.json

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

4 changes: 2 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@
"class-variance-authority": "^0.7.0",
"clsx": "^2.1.1",
"crypto": "^1.0.1",
"framer-motion": "^11.11.1",
"framer-motion": "^11.13.5",
"gsap": "^3.12.5",
"ioredis": "^5.4.1",
"jest": "^29.7.0",
Expand All @@ -73,7 +73,7 @@
"react-icons": "^5.3.0",
"resend": "^4.0.0",
"sonner": "^1.5.0",
"tailwind-merge": "^2.5.3",
"tailwind-merge": "^2.5.5",
"tailwindcss-animate": "^1.0.7",
"three": "^0.169.0",
"uploadthing": "^7.0.2",
Expand Down
2 changes: 2 additions & 0 deletions src/app/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ import HeroHighlight from "@/components/widget/hero";
import Footer from "@/components/common/contact-page";
import CTA from "@/components/common/cta-section-2";
import Nav from "@/components/widget/header";
import { SponsorSection } from "@/components/common/sponsor-section";
export default function Home() {
// const [loading, setLoading] = useState(true);

Expand Down Expand Up @@ -52,6 +53,7 @@ export default function Home() {
<div className="">
<Team />
</div>
<SponsorSection />
<CTA />
</div>
<div id="contact" className="mt-10">
Expand Down
25 changes: 25 additions & 0 deletions src/components/common/sponsor-card.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
import Image from "next/image";
import { Card } from "@/components/ui/card";

interface SponsorCardProps {
name: string;
logoUrl: string;
}

export function SponsorCard({ name, logoUrl }: SponsorCardProps) {
return (
<Card className="w-full max-w-sm overflow-hidden transition-all hover:scale-105">
<div
className={`aspect-video h-full flex bg-gradient-to-br from-red-500 to-red-900 items-center justify-center m-auto`}
>
<Image
src={logoUrl}
alt={`${name} logo`}
width={200}
height={100}
objectFit="contain"
/>
</div>
</Card>
);
}
51 changes: 51 additions & 0 deletions src/components/common/sponsor-section.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
import { SponsorCard } from "./sponsor-card";
import { tedxsjecAssetsPrefix } from "@/lib/utils";
import { bronzeSponsors, goldSponsors, platinumSponsors } from "@/constants";

export function SponsorSection() {
return (
<section className="py-12">
<div className="container mx-auto px-4">
<h2 className="md:text-8xl text-4xl font-black text-center mb-20 px-10">
Our Sponsors
</h2>
<h2 className="md:text-4xl text-2xl font-bold text-center mb-8 text-slate-300">
Platinum Sponsors
</h2>
<div className="flex flex-wrap gap-6 my-10 justify-center">
{platinumSponsors.map((sponsor) => (
<SponsorCard
key={sponsor.name}
name={sponsor.name}
logoUrl={sponsor.logoUrl}
/>
))}
</div>
<h2 className="md:text-4xl text-2xl font-bold text-center mb-8 text-yellow-400">
Gold Sponsors
</h2>
<div className="flex flex-wrap gap-6 my-10 justify-center">
{goldSponsors.map((sponsor) => (
<SponsorCard
key={sponsor.name}
name={sponsor.name}
logoUrl={sponsor.logoUrl}
/>
))}
</div>
<h2 className="md:text-4xl text-2xl font-bold text-center mb-8 text-yellow-700">
Bronze Sponsors
</h2>
<div className="flex flex-wrap gap-6 my-10 justify-center">
{bronzeSponsors.map((sponsor) => (
<SponsorCard
key={sponsor.name}
name={sponsor.name}
logoUrl={sponsor.logoUrl}
/>
))}
</div>
</div>
</section>
);
}
95 changes: 94 additions & 1 deletion src/constants/index.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { tedxsjecAssetsPrefix } from "@/lib/utils";
import { PerformerSection, PreviousEdition, Speaker } from "@/types";
import { PerformerSection, PreviousEdition, Speaker, Sponsors } from "@/types";

export const basePrice = 980.39;
export const initialdiscount = 0;
Expand Down Expand Up @@ -182,3 +182,96 @@ export const prevEdition20: PreviousEdition[] = [
img: `${tedxsjecAssetsPrefix}/prev/2020/image7.jpg`,
},
];

export const platinumSponsors: Sponsors[] = [
{
name: "Karnataka Bank",
logoUrl: `${tedxsjecAssetsPrefix}/sponsors/KBL-removebg-preview.avif`,
},
{
name: "KarMic Design",
logoUrl: `${tedxsjecAssetsPrefix}/sponsors/KarMic Design.avif`,
},
{
name: "YES Bank",
logoUrl: `${tedxsjecAssetsPrefix}/sponsors/yes_bank.avif`,
},
{
name: "Marian Projects Pvt. Ltd.",
logoUrl: `${tedxsjecAssetsPrefix}/sponsors/Marian.avif`,
},
{
name: "Emdees",
logoUrl: `${tedxsjecAssetsPrefix}/sponsors/Emdees.avif`,
},
];

export const goldSponsors: Sponsors[] = [
{
name: "Impelsys",
logoUrl: `${tedxsjecAssetsPrefix}/sponsors/Impelsys2.avif`,
},
{
name: "Sri Sweets",
logoUrl: `${tedxsjecAssetsPrefix}/sponsors/Sri_Sweets-removebg-preview(1).avif`,
},
{
name: "iSKEW Learning",
logoUrl: `${tedxsjecAssetsPrefix}/sponsors/iSKEW Learning.avif`,
},
];
export const silverSponsors: Sponsors[] = [
{
name: "StraeCon",
logoUrl: `${tedxsjecAssetsPrefix}/sponsors/Straecon.avif`,
},
{
name: "Motilal Oswal",
logoUrl: `${tedxsjecAssetsPrefix}/sponsors/Motilal.avif`,
},

{
name: "S L Shet",
logoUrl: `${tedxsjecAssetsPrefix}/sponsors/S L Shet logo .avif`,
},
{
name: "River Roost Resort",
logoUrl: `${tedxsjecAssetsPrefix}/sponsors/River-Roost-Resort-Logo.avif`,
},
{
name: "JV Global",
logoUrl: `${tedxsjecAssetsPrefix}/sponsors/JV Global.avif`,
},
{
name: "CASHCADE",
logoUrl: `${tedxsjecAssetsPrefix}/sponsors/CASHCADE.avif`,
},
];

export const bronzeSponsors: Sponsors[] = [
{
name: "Priya Agencies",
logoUrl: `${tedxsjecAssetsPrefix}/sponsors/Priya Agencies.avif`,
},

{
name: "Shubha Mangala Oil Mills",
logoUrl: `${tedxsjecAssetsPrefix}/sponsors/Shubha_Mangala_Oil_Mills-removebg-preview.avif`,
},
{
name: "Accolade Tech Solutions",
logoUrl: `${tedxsjecAssetsPrefix}/sponsors/Accolade.avif`,
},
{
name: "St. Francis Xavier Church, Bejai",
logoUrl: `${tedxsjecAssetsPrefix}/sponsors/St. Francis Xavier Church, Bejai.avif`,
},
{
name: "Brevera Technologies",
logoUrl: `${tedxsjecAssetsPrefix}/sponsors/Brevera Technologies.avif`,
},
{
name: "RÊVE Nails and Beauty Lounge",
logoUrl: `${tedxsjecAssetsPrefix}/sponsors/WhatsApp Image 2024-12-11 at 14.51.02.avif`,
},
];
4 changes: 4 additions & 0 deletions src/types/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,10 @@ export interface PreviousEdition {
id: number;
img: string;
}
export interface Sponsors {
name: string;
logoUrl: string;
}

export interface EmailOptions {
from: string;
Expand Down
Loading