Compare commits
25 Commits
version_3_
...
version_11
| Author | SHA1 | Date | |
|---|---|---|---|
| 6e1a334b21 | |||
| 5a2be2dbba | |||
| 9b36ef6064 | |||
| 75d0942083 | |||
| aff8626480 | |||
| 495d674524 | |||
| 8e236621d9 | |||
| f823c0b23b | |||
| c68d7a484f | |||
| e95c2ec2da | |||
| c2848093ea | |||
| 05c44ae578 | |||
|
|
667264bc49 | ||
| ca94769729 | |||
| 22a654fa72 | |||
|
|
dd65ea9a83 | ||
| 86bd6191c4 | |||
| bfe44b43e2 | |||
| 0fc75c055e | |||
| b2eea13c14 | |||
| ce990be3d5 | |||
| d1a1d4d6f5 | |||
|
|
7c7c38832d | ||
| c91348f58b | |||
| f9cad300a3 |
@@ -16,7 +16,8 @@ import ContactSection from './HomePage/sections/Contact';
|
||||
|
||||
|
||||
import MembershipSection from './HomePage/sections/Membership';
|
||||
import BookingsSection from './HomePage/sections/Bookings';export default function HomePage(): React.JSX.Element {
|
||||
import BookingsSection from './HomePage/sections/Bookings';
|
||||
import GallerySection from './HomePage/sections/Gallery';export default function HomePage(): React.JSX.Element {
|
||||
return (
|
||||
<StyleProvider siteBackground="aurora" heroBackground="none" buttonVariant="bounce">
|
||||
<SiteBackgroundSlot />
|
||||
@@ -32,6 +33,7 @@ import BookingsSection from './HomePage/sections/Bookings';export default functi
|
||||
<MenuSection />
|
||||
|
||||
<FeaturesSection />
|
||||
<GallerySection />
|
||||
|
||||
<ContactSection />
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@ export default function AboutSection(): React.JSX.Element {
|
||||
textAnimation="fade-blur"
|
||||
tag="Explore Our Club"
|
||||
title="What are you looking for?"
|
||||
media={[{"imageSrc":"https://images.unsplash.com/photo-1595435934249-5df7ed86e1c0?q=80&w=1000&auto=format&fit=crop"},{"imageSrc":"https://images.unsplash.com/photo-1622279457486-62dcc4a431d6?q=80&w=1000&auto=format&fit=crop"},{"imageSrc":"https://images.unsplash.com/photo-1589806053641-6101469b1110?q=80&w=1000&auto=format&fit=crop"},{"imageSrc":"https://images.unsplash.com/photo-1530915534664-4ac6423816b7?q=80&w=1000&auto=format&fit=crop"},{"imageSrc":"https://images.unsplash.com/photo-1554068865-24cecd4e34b8?q=80&w=1000&auto=format&fit=crop"},{"imageSrc":"https://storage.googleapis.com/webild/users/user_3AniccObAoDJgCkSlT6RJk7a8NL/uploaded-1782951363730-qzocx6gy.webp"},{"imageSrc":"https://images.unsplash.com/photo-1542144582-1ba00456b5e3?q=80&w=1000&auto=format&fit=crop"},{"imageSrc":"https://images.unsplash.com/photo-1560012057-4372e14c5085?q=80&w=1000&auto=format&fit=crop"}]}
|
||||
media={[{"imageSrc":"https://storage.googleapis.com/webild/users/user_3AniccObAoDJgCkSlT6RJk7a8NL/uploaded-1782951920218-dn9n7n03.png"},{"imageSrc":"https://storage.googleapis.com/webild/users/user_3AniccObAoDJgCkSlT6RJk7a8NL/uploaded-1782952546030-f2ubckey.jpg"},{"imageSrc":"https://storage.googleapis.com/webild/users/user_3AniccObAoDJgCkSlT6RJk7a8NL/uploaded-1782951363731-ti1gwsue.jpg"},{"imageSrc":"https://images.unsplash.com/photo-1530915534664-4ac6423816b7?q=80&w=1000&auto=format&fit=crop"},{"imageSrc":"https://images.unsplash.com/photo-1554068865-24cecd4e34b8?q=80&w=1000&auto=format&fit=crop"},{"imageSrc":"https://storage.googleapis.com/webild/users/user_3AniccObAoDJgCkSlT6RJk7a8NL/uploaded-1782951363730-qzocx6gy.webp"},{"imageSrc":"https://images.unsplash.com/photo-1542144582-1ba00456b5e3?q=80&w=1000&auto=format&fit=crop"},{"imageSrc":"https://images.unsplash.com/photo-1560012057-4372e14c5085?q=80&w=1000&auto=format&fit=crop"}]}
|
||||
primaryButton={{"href":"#facilities","text":"View Facilities"}}
|
||||
secondaryButton={{"href":"#contact","text":"Contact Us"}}
|
||||
/>
|
||||
|
||||
@@ -10,21 +10,21 @@ export default function BookingsSection() {
|
||||
title: "Access Your Account",
|
||||
subtitle: "Step 1",
|
||||
description: "Log in to your member portal using your credentials.",
|
||||
imageSrc: "https://images.unsplash.com/photo-1595435934249-5df7ed86e1c0?q=80&w=1000&auto=format&fit=crop",
|
||||
imageSrc: "https://storage.googleapis.com/webild/users/user_3AniccObAoDJgCkSlT6RJk7a8NL/uploaded-1782951920218-dn9n7n03.png",
|
||||
},
|
||||
{
|
||||
tag: "Select",
|
||||
title: "Choose Your Court",
|
||||
subtitle: "Step 2",
|
||||
description: "Browse available courts and times up to 7 days in advance (14 days for Pro members).",
|
||||
imageSrc: "https://images.unsplash.com/photo-1622279457486-62dcc4a431d6?q=80&w=1000&auto=format&fit=crop",
|
||||
imageSrc: "https://storage.googleapis.com/webild/users/user_3AniccObAoDJgCkSlT6RJk7a8NL/uploaded-1782952546030-f2ubckey.jpg",
|
||||
},
|
||||
{
|
||||
tag: "Confirm",
|
||||
title: "Secure Your Time",
|
||||
subtitle: "Step 3",
|
||||
description: "Confirm your booking and receive an email confirmation with your court details.",
|
||||
imageSrc: "https://images.unsplash.com/photo-1589806053641-6101469b1110?q=80&w=1000&auto=format&fit=crop",
|
||||
imageSrc: "https://storage.googleapis.com/webild/users/user_3AniccObAoDJgCkSlT6RJk7a8NL/uploaded-1782951363731-ti1gwsue.jpg",
|
||||
},
|
||||
];
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ export default function FeaturesSection(): React.JSX.Element {
|
||||
title="Get Involved in the Community"
|
||||
description="From casual social mixers to competitive club championships, there's always something happening at the club."
|
||||
topItems={[{"imageSrc":"https://images.unsplash.com/photo-1530915534664-4ac6423816b7?q=80&w=1000&auto=format&fit=crop","description":"Compete in our annual club championships across various age groups and skill levels. A great way to challenge yourself and meet other members.","title":"Annual Championships"},{"imageSrc":"https://images.unsplash.com/photo-1554068865-24cecd4e34b8?q=80&w=1000&auto=format&fit=crop","description":"Join us for our monthly social mixers. Enjoy casual round-robin play followed by drinks and appetizers in the clubhouse.","title":"Social Mixers"}]}
|
||||
bottomItem={{"primaryButton":{"text":"Join a League","href":"#leagues"},"imageSrc":"https://images.unsplash.com/photo-1589806053641-6101469b1110?q=80&w=1000&auto=format&fit=crop","description":"Join our competitive leagues and test your skills against players of similar levels. We offer singles, doubles, and mixed leagues year-round.","title":"Club Leagues"}}
|
||||
bottomItem={{"primaryButton":{"text":"Join a League","href":"#leagues"},"imageSrc":"https://storage.googleapis.com/webild/users/user_3AniccObAoDJgCkSlT6RJk7a8NL/uploaded-1782951363731-ti1gwsue.jpg","description":"Join our competitive leagues and test your skills against players of similar levels. We offer singles, doubles, and mixed leagues year-round.","title":"Club Leagues"}}
|
||||
/>
|
||||
</div>
|
||||
);
|
||||
|
||||
77
src/pages/HomePage/sections/Gallery.tsx
Normal file
77
src/pages/HomePage/sections/Gallery.tsx
Normal file
@@ -0,0 +1,77 @@
|
||||
import { motion } from "motion/react";
|
||||
import TextAnimation from "@/components/ui/TextAnimation";
|
||||
import ScrollReveal from "@/components/ui/ScrollReveal";
|
||||
import ImageOrVideo from "@/components/ui/ImageOrVideo";
|
||||
import Tag from "@/components/ui/Tag";
|
||||
|
||||
export default function GallerySection() {
|
||||
const images = [
|
||||
{
|
||||
src: "https://storage.googleapis.com/webild/users/user_3AniccObAoDJgCkSlT6RJk7a8NL/uploaded-1782951920218-dn9n7n03.png",
|
||||
title: "Indoor Courts",
|
||||
colSpan: "md:col-span-3"
|
||||
},
|
||||
{
|
||||
src: "https://storage.googleapis.com/webild/users/user_3AniccObAoDJgCkSlT6RJk7a8NL/uploaded-1782951920219-3sznj2xy.png",
|
||||
title: "Outdoor Complex",
|
||||
colSpan: "md:col-span-3"
|
||||
},
|
||||
{
|
||||
src: "https://storage.googleapis.com/webild/users/user_3AniccObAoDJgCkSlT6RJk7a8NL/uploaded-1782951920220-nisd5a9c.webp",
|
||||
title: "Championship Stadium",
|
||||
colSpan: "md:col-span-2"
|
||||
},
|
||||
{
|
||||
src: "https://storage.googleapis.com/webild/users/user_3AniccObAoDJgCkSlT6RJk7a8NL/uploaded-1782951920221-rb0wtby4.jpg",
|
||||
title: "Courts",
|
||||
colSpan: "md:col-span-2"
|
||||
},
|
||||
{
|
||||
src: "https://storage.googleapis.com/webild/users/user_3AniccObAoDJgCkSlT6RJk7a8NL/uploaded-1782951920222-umx1babl.jpg",
|
||||
title: "Grass Courts",
|
||||
colSpan: "md:col-span-2"
|
||||
}
|
||||
];
|
||||
|
||||
return (
|
||||
<section data-webild-section="gallery" id="gallery" className="relative w-full py-24 bg-background">
|
||||
<div className="w-content-width mx-auto flex flex-col gap-12">
|
||||
<div className="flex flex-col items-center text-center gap-4">
|
||||
<ScrollReveal variant="fade">
|
||||
<Tag text="Gallery" />
|
||||
</ScrollReveal>
|
||||
<TextAnimation
|
||||
text="Club Facilities"
|
||||
variant="slide-up"
|
||||
tag="h2"
|
||||
className="text-4xl md:text-5xl font-bold text-foreground"
|
||||
gradientText={false}
|
||||
/>
|
||||
<ScrollReveal variant="fade" delay={0.1}>
|
||||
<p className="text-lg text-accent max-w-2xl mx-auto">
|
||||
Explore our world-class tennis courts and amenities designed for players of all levels.
|
||||
</p>
|
||||
</ScrollReveal>
|
||||
</div>
|
||||
|
||||
<div className="grid grid-cols-1 md:grid-cols-6 gap-4">
|
||||
{images.map((img, index) => (
|
||||
<ScrollReveal variant="fade"
|
||||
key={index}
|
||||
delay={0.1 * index}
|
||||
className={`relative group overflow-hidden rounded-lg aspect-video ${img.colSpan}`}
|
||||
>
|
||||
<ImageOrVideo
|
||||
imageSrc={img.src}
|
||||
className="w-full h-full object-cover transition-transform duration-500 group-hover:scale-105"
|
||||
/>
|
||||
<div className="absolute inset-0 bg-black/40 opacity-0 group-hover:opacity-100 transition-opacity duration-300 flex items-end p-6">
|
||||
<h3 className="text-white font-medium text-xl">{img.title}</h3>
|
||||
</div>
|
||||
</ScrollReveal>
|
||||
))}
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
);
|
||||
}
|
||||
@@ -13,8 +13,8 @@ export default function HeroSection(): React.JSX.Element {
|
||||
description="Experience world-class tennis facilities, professional coaching, and a vibrant community. Whether you're a beginner or a seasoned pro, our courts are ready for you."
|
||||
primaryButton={{"href":"#book","text":"Book a Court"}}
|
||||
secondaryButton={{"text":"Join the Club","href":"#membership"}}
|
||||
videoSrc="https://storage.googleapis.com/webild/default/templates/tennis/hero.mp4"
|
||||
floatingCards={[{"name":"Clay Courts","imageSrc":"https://images.unsplash.com/photo-1595435934249-5df7ed86e1c0?q=80&w=1000&auto=format&fit=crop"},{"name":"Grass Courts","imageSrc":"https://images.unsplash.com/photo-1622279457486-62dcc4a431d6?q=80&w=1000&auto=format&fit=crop"}]}
|
||||
imageSrc="https://storage.googleapis.com/webild/users/user_3AniccObAoDJgCkSlT6RJk7a8NL/uploaded-1782951363730-2xq7048r.jpg"
|
||||
floatingCards={[{"name":"Courts","imageSrc":"https://storage.googleapis.com/webild/users/user_3AniccObAoDJgCkSlT6RJk7a8NL/uploaded-1782951920218-dn9n7n03.png"},{"name":"Grass Courts","imageSrc":"https://storage.googleapis.com/webild/users/user_3AniccObAoDJgCkSlT6RJk7a8NL/uploaded-1782952546030-f2ubckey.jpg"}]}
|
||||
/>
|
||||
</div>
|
||||
);
|
||||
|
||||
@@ -13,7 +13,7 @@ export default function MenuSection(): React.JSX.Element {
|
||||
title="Everything You Need to Play Your Best"
|
||||
description="Discover our premium facilities designed for players of all levels."
|
||||
categories={["Courts","Coaching","Amenities"]}
|
||||
items={[{"category":"Courts","name":"Clay Courts","imageSrc":"https://images.unsplash.com/photo-1595435934249-5df7ed86e1c0?q=80&w=1000&auto=format&fit=crop"},{"imageSrc":"https://images.unsplash.com/photo-1622279457486-62dcc4a431d6?q=80&w=1000&auto=format&fit=crop","category":"Courts","name":"Grass Courts"},{"imageSrc":"https://images.unsplash.com/photo-1589806053641-6101469b1110?q=80&w=1000&auto=format&fit=crop","category":"Courts","name":"Hard Courts"},{"category":"Courts","name":"Indoor Courts","imageSrc":"https://images.unsplash.com/photo-1530915534664-4ac6423816b7?q=80&w=1000&auto=format&fit=crop"},{"category":"Coaching","name":"Private Lessons","imageSrc":"https://images.unsplash.com/photo-1554068865-24cecd4e34b8?q=80&w=1000&auto=format&fit=crop"},{"category":"Coaching","name":"Group Clinics","imageSrc":"https://storage.googleapis.com/webild/users/user_3AniccObAoDJgCkSlT6RJk7a8NL/uploaded-1782951363730-qzocx6gy.webp"},{"category":"Coaching","name":"Junior Academy","imageSrc":"https://images.unsplash.com/photo-1542144582-1ba00456b5e3?q=80&w=1000&auto=format&fit=crop"},{"category":"Amenities","name":"Pro Shop","imageSrc":"https://images.unsplash.com/photo-1560012057-4372e14c5085?q=80&w=1000&auto=format&fit=crop"},{"category":"Amenities","name":"Clubhouse","imageSrc":"https://images.unsplash.com/photo-1595435934249-5df7ed86e1c0?q=80&w=1000&auto=format&fit=crop"},{"category":"Amenities","name":"Locker Rooms","imageSrc":"https://images.unsplash.com/photo-1622279457486-62dcc4a431d6?q=80&w=1000&auto=format&fit=crop"}]}
|
||||
items={[{"category":"Courts","name":"Courts","imageSrc":"https://storage.googleapis.com/webild/users/user_3AniccObAoDJgCkSlT6RJk7a8NL/uploaded-1782951920218-dn9n7n03.png"},{"imageSrc":"https://storage.googleapis.com/webild/users/user_3AniccObAoDJgCkSlT6RJk7a8NL/uploaded-1782952546030-f2ubckey.jpg","category":"Courts","name":"Grass Courts"},{"imageSrc":"https://storage.googleapis.com/webild/users/user_3AniccObAoDJgCkSlT6RJk7a8NL/uploaded-1782951363731-ti1gwsue.jpg","category":"Courts","name":"Hard Courts"},{"category":"Courts","name":"Indoor Courts","imageSrc":"https://images.unsplash.com/photo-1530915534664-4ac6423816b7?q=80&w=1000&auto=format&fit=crop"},{"category":"Coaching","name":"Private Lessons","imageSrc":"https://images.unsplash.com/photo-1554068865-24cecd4e34b8?q=80&w=1000&auto=format&fit=crop"},{"category":"Coaching","name":"Group Clinics","imageSrc":"https://storage.googleapis.com/webild/users/user_3AniccObAoDJgCkSlT6RJk7a8NL/uploaded-1782951363730-qzocx6gy.webp"},{"category":"Coaching","name":"Junior Academy","imageSrc":"https://images.unsplash.com/photo-1542144582-1ba00456b5e3?q=80&w=1000&auto=format&fit=crop"},{"category":"Amenities","name":"Pro Shop","imageSrc":"https://images.unsplash.com/photo-1560012057-4372e14c5085?q=80&w=1000&auto=format&fit=crop"},{"category":"Amenities","name":"Clubhouse","imageSrc":"https://storage.googleapis.com/webild/users/user_3AniccObAoDJgCkSlT6RJk7a8NL/uploaded-1782951920218-dn9n7n03.png"},{"category":"Amenities","name":"Locker Rooms","imageSrc":"https://storage.googleapis.com/webild/users/user_3AniccObAoDJgCkSlT6RJk7a8NL/uploaded-1782952546030-f2ubckey.jpg"}]}
|
||||
/>
|
||||
</div>
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user