Showcase community experiences and class environment on the website

Adds EnhancedTestimonials and PhotoGallery components to the home page.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 149ccd4a-2ccb-4219-9a7b-69a9690dd7ac
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/af8dabca-e746-4e53-9c29-d8d4d9cf30f5/2538d231-db2b-4395-8fab-38fdfef424e5.jpg
This commit is contained in:
JeffEmmett 2025-06-14 01:28:40 +00:00
parent 6b8ec7544f
commit 6cc5ad0f25
3 changed files with 139 additions and 0 deletions

View File

@ -0,0 +1,76 @@
import { Testimonial } from "./community/testimonial";
export function EnhancedTestimonials() {
const testimonials = [
{
quote: "Fadia's classes have transformed my relationship with my body. Her gentle guidance and cultural sensitivity create such a welcoming space for everyone.",
author: "Sarah M.",
memberSince: "Member since 2023",
initials: "SM",
color: "teal" as const
},
{
quote: "I've never felt stronger or more connected to my breath. The community Fadia has built is incredible - we support each other through every challenge.",
author: "Ingrid from Estonia",
memberSince: "Member since 2022",
initials: "IE",
color: "purple" as const
},
{
quote: "As someone who was intimidated by fitness, Fadia made Pilates accessible and enjoyable. Her classes focus on mindful movement, not perfection.",
author: "Maya K.",
memberSince: "Member since 2023",
initials: "MK",
color: "rose" as const
},
{
quote: "The online classes are fantastic! Fadia's clear instructions and encouraging presence make it feel like she's right there with you.",
author: "Jennifer L.",
memberSince: "Member since 2024",
initials: "JL",
color: "teal" as const
},
{
quote: "Fadia understands that wellness isn't one-size-fits-all. Her personalized approach has helped me manage chronic pain while building strength.",
author: "Amira H.",
memberSince: "Member since 2022",
initials: "AH",
color: "purple" as const
},
{
quote: "The small group sessions are perfect - intimate enough for personal attention but with the energy of a supportive community.",
author: "Lisa T.",
memberSince: "Member since 2023",
initials: "LT",
color: "rose" as const
}
];
return (
<section className="py-20" style={{ backgroundColor: 'rgba(12, 137, 145, 0.1)' }}>
<div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
<div className="text-center mb-16">
<h2 className="text-3xl md:text-4xl font-playfair font-semibold text-gray-800 mb-4">
What Our Community Says
</h2>
<p className="max-w-3xl mx-auto text-gray-600">
Real stories from real people who have found strength, flexibility, and community through Pilates
</p>
</div>
<div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8">
{testimonials.map((testimonial, index) => (
<Testimonial
key={index}
quote={testimonial.quote}
author={testimonial.author}
memberSince={testimonial.memberSince}
initials={testimonial.initials}
color={testimonial.color}
/>
))}
</div>
</div>
</section>
);
}

View File

@ -0,0 +1,59 @@
import FadiaGardenImage from "@assets/fadia-garden_1749836720986.jpg";
import FadiaPoseImage from "@assets/fadia pose_1749838215401.jpg";
import FadiaBridgeImage from "@assets/fadia-bridge_1749838118611.jpg";
import FadiaBallImage from "@assets/fadia-ball_1749842241591.jpg";
import PilatesClassImage from "@assets/pilates_class_1749837680834.jpeg";
import PilatesCommunityImage from "@assets/pilates-community_1749840293503.jpeg";
import Fadia132Image from "@assets/Fadia-132.jpg";
import Fadia156Image from "@assets/Fadia-156.jpg";
import DSC01368Image from "@assets/DSC01368 2.jpeg";
import DSC01380Image from "@assets/DSC01380.jpeg";
import DSC01394Image from "@assets/DSC01394 2.jpeg";
import DSC01466Image from "@assets/DSC01466 2.jpeg";
export function PhotoGallery() {
const galleryImages = [
{ src: FadiaGardenImage, alt: "Outdoor Pilates session in the garden" },
{ src: FadiaPoseImage, alt: "Fadia demonstrating a Pilates pose" },
{ src: FadiaBridgeImage, alt: "Bridge pose demonstration" },
{ src: FadiaBallImage, alt: "Pilates ball exercise" },
{ src: PilatesClassImage, alt: "Group Pilates class" },
{ src: PilatesCommunityImage, alt: "Pilates community gathering" },
{ src: Fadia132Image, alt: "Fadia in a focused pose" },
{ src: Fadia156Image, alt: "Pilates stretching demonstration" },
{ src: DSC01368Image, alt: "Professional Pilates session" },
{ src: DSC01380Image, alt: "Pilates equipment demonstration" },
{ src: DSC01394Image, alt: "Advanced Pilates pose" },
{ src: DSC01466Image, alt: "Pilates class in session" }
];
return (
<section className="py-20 bg-white">
<div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
<div className="text-center mb-16">
<h2 className="text-3xl md:text-4xl font-playfair font-semibold text-rose mb-4">
Gallery
</h2>
<p className="max-w-3xl mx-auto text-gray-600">
Discover the beauty of Pilates through moments captured in our classes and sessions
</p>
</div>
<div className="grid grid-cols-2 md:grid-cols-3 lg:grid-cols-4 gap-4">
{galleryImages.map((image, index) => (
<div
key={index}
className="relative overflow-hidden rounded-lg aspect-square hover:transform hover:scale-105 transition-transform duration-300"
>
<img
src={image.src}
alt={image.alt}
className="w-full h-full object-cover"
/>
</div>
))}
</div>
</div>
</section>
);
}

View File

@ -3,6 +3,8 @@ import { HeroSection } from "@/components/home/hero-section";
import { AboutSection } from "@/components/about/about-section";
import { ClassesSection } from "@/components/classes/classes-section";
import { TestimonialsSection } from "@/components/testimonials/testimonials-section";
import { EnhancedTestimonials } from "@/components/enhanced-testimonials";
import { PhotoGallery } from "@/components/photo-gallery";
import { ContactSection } from "@/components/contact/contact-section";
import { CTASection } from "@/components/home/cta-section";
@ -46,6 +48,8 @@ export default function HomePage() {
<ClassesSection />
<AboutSection />
<TestimonialsSection />
<EnhancedTestimonials />
<PhotoGallery />
<ContactSection />
<CTASection />
</main>