Compare commits
14 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 0231217c73 | |||
| 34771ec8df | |||
| e33aae3dcf | |||
| 7e4b9e03c0 | |||
| a868e1c813 | |||
| e354e3686b | |||
| 2d3aec15cd | |||
| ba80fb46c2 | |||
| 9e8fddeeb9 | |||
| 7a9811a32a | |||
| 17fd79c534 | |||
| 3c79a49e3f | |||
| 09efa56711 | |||
| 00a5600935 |
173
src/app/page.tsx
173
src/app/page.tsx
@@ -2,16 +2,14 @@
|
|||||||
|
|
||||||
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||||
import ReactLenis from "lenis/react";
|
import ReactLenis from "lenis/react";
|
||||||
import ContactSplit from '@/components/sections/contact/ContactSplit';
|
import FeatureCardSeven from '@/components/sections/feature/FeatureCardSeven';
|
||||||
import FeatureCardOne from '@/components/sections/feature/FeatureCardOne';
|
import FooterBaseReveal from '@/components/sections/footer/FooterBaseReveal';
|
||||||
import FooterMedia from '@/components/sections/footer/FooterMedia';
|
|
||||||
import HeroBillboardScroll from '@/components/sections/hero/HeroBillboardScroll';
|
import HeroBillboardScroll from '@/components/sections/hero/HeroBillboardScroll';
|
||||||
import MetricCardEleven from '@/components/sections/metrics/MetricCardEleven';
|
import AboutMetric from '@/components/sections/about/AboutMetric';
|
||||||
import MetricSplitMediaAbout from '@/components/sections/about/MetricSplitMediaAbout';
|
|
||||||
import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered';
|
import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered';
|
||||||
import ProductCardOne from '@/components/sections/product/ProductCardOne';
|
import TestimonialCardSix from '@/components/sections/testimonial/TestimonialCardSix';
|
||||||
import TestimonialCardTwo from '@/components/sections/testimonial/TestimonialCardTwo';
|
import ContactText from '@/components/sections/contact/ContactText';
|
||||||
import { Star } from "lucide-react";
|
import { Star, MapPin, Phone } from "lucide-react";
|
||||||
|
|
||||||
export default function LandingPage() {
|
export default function LandingPage() {
|
||||||
return (
|
return (
|
||||||
@@ -31,14 +29,10 @@ export default function LandingPage() {
|
|||||||
<div id="nav" data-section="nav">
|
<div id="nav" data-section="nav">
|
||||||
<NavbarStyleCentered
|
<NavbarStyleCentered
|
||||||
navItems={[
|
navItems={[
|
||||||
{
|
{ name: "Home", id: "hero" },
|
||||||
name: "Home", id: "hero"},
|
{ name: "About", id: "experience" },
|
||||||
{
|
{ name: "Services", id: "services" },
|
||||||
name: "Services", id: "services"},
|
{ name: "Contact", id: "contact" },
|
||||||
{
|
|
||||||
name: "Experience", id: "experience"},
|
|
||||||
{
|
|
||||||
name: "Contact", id: "contact"},
|
|
||||||
]}
|
]}
|
||||||
brandName="Jeff & Company"
|
brandName="Jeff & Company"
|
||||||
/>
|
/>
|
||||||
@@ -46,16 +40,13 @@ export default function LandingPage() {
|
|||||||
|
|
||||||
<div id="hero" data-section="hero">
|
<div id="hero" data-section="hero">
|
||||||
<HeroBillboardScroll
|
<HeroBillboardScroll
|
||||||
background={{
|
background={{ variant: "plain" }}
|
||||||
variant: "plain"}}
|
|
||||||
title="Jeff & Company Grooming"
|
title="Jeff & Company Grooming"
|
||||||
description="Calm, Gentle Grooming Your Pet Will Love. A trusted, 5-star grooming experience designed to keep your pet relaxed, comfortable, and looking their best."
|
description="Calm, Gentle Grooming Your Pet Will Love. A trusted, 5-star grooming experience designed to keep your pet relaxed, comfortable, and looking their best."
|
||||||
tag="⭐ 5.0 Rated Grooming Service"
|
tag="⭐ 5.0 Rated Grooming Service"
|
||||||
buttons={[
|
buttons={[
|
||||||
{
|
{ text: "Book Now", href: "/contact" },
|
||||||
text: "Book Now", href: "/contact"},
|
{ text: "Call Now", href: "tel:07598206450" },
|
||||||
{
|
|
||||||
text: "Call Now (07598 206450)", href: "tel:07598206450"},
|
|
||||||
]}
|
]}
|
||||||
imageSrc="http://img.b2bpic.net/free-photo/adorable-pet-enjoying-spa-day-illustration_23-2151841570.jpg"
|
imageSrc="http://img.b2bpic.net/free-photo/adorable-pet-enjoying-spa-day-illustration_23-2151841570.jpg"
|
||||||
imageAlt="Professional pet groomer smiling with a happy groomed dog"
|
imageAlt="Professional pet groomer smiling with a happy groomed dog"
|
||||||
@@ -63,134 +54,64 @@ export default function LandingPage() {
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="trust" data-section="trust">
|
<div id="experience" data-section="experience">
|
||||||
<TestimonialCardTwo
|
<AboutMetric
|
||||||
animationType="slide-up"
|
title="About Our Gentle Approach"
|
||||||
textboxLayout="default"
|
metrics={[
|
||||||
useInvertedBackground={false}
|
{ icon: Star, label: "Rating", value: "5.0 Star" },
|
||||||
testimonials={[
|
{ icon: MapPin, label: "Location", value: "Ruislip" },
|
||||||
{
|
{ icon: Phone, label: "Support", value: "07598 206450" },
|
||||||
id: "1", name: "Sarah J.", role: "Puppy Owner", testimonial: "A paw-fect experience for my puppy’s first groom.", imageSrc: "http://img.b2bpic.net/free-photo/lovely-pet-portrait-isolated_23-2149192309.jpg"},
|
|
||||||
{
|
|
||||||
id: "2", name: "Mark D.", role: "Client", testimonial: "So patient, caring, and professional.", imageSrc: "http://img.b2bpic.net/free-photo/sideways-portrait-chinese-crested-puppy-with-copy-space-background_23-2148326286.jpg"},
|
|
||||||
{
|
|
||||||
id: "3", name: "Emily P.", role: "Pet Owner", testimonial: "Jeff is wonderful with my anxious dog, highly recommend!", imageSrc: "http://img.b2bpic.net/free-photo/close-up-portrait-yorkshire-dog_23-2151779155.jpg"},
|
|
||||||
{
|
|
||||||
id: "4", name: "Laura K.", role: "Regular Client", testimonial: "Excellent service every time, very happy.", imageSrc: "http://img.b2bpic.net/free-photo/lovely-pet-portrait-isolated_23-2149192304.jpg"},
|
|
||||||
{
|
|
||||||
id: "5", name: "David W.", role: "Client", testimonial: "Truly the best local grooming experience.", imageSrc: "http://img.b2bpic.net/free-photo/man-playing-with-his-toy-poodle_23-2147840145.jpg"},
|
|
||||||
]}
|
]}
|
||||||
title="Trusted by Pet Owners"
|
metricsAnimation="slide-up"
|
||||||
description="Trusted by pet owners across Ruislip for safe, stress-free grooming."
|
useInvertedBackground={false}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="services" data-section="services">
|
<div id="services" data-section="services">
|
||||||
<FeatureCardOne
|
<FeatureCardSeven
|
||||||
animationType="slide-up"
|
animationType="slide-up"
|
||||||
textboxLayout="default"
|
textboxLayout="split"
|
||||||
gridVariant="uniform-all-items-equal"
|
|
||||||
useInvertedBackground={false}
|
useInvertedBackground={false}
|
||||||
features={[
|
|
||||||
{
|
|
||||||
title: "Full Groom", description: "A complete service including wash, cut, blow-dry, and styling.", imageSrc: "http://img.b2bpic.net/free-vector/several-flat-pet-store-elements_23-2147569069.jpg", imageAlt: "pet grooming dog clean"},
|
|
||||||
{
|
|
||||||
title: "Puppy Pamper", description: "A gentle introduction to grooming for first-time visits.", imageSrc: "http://img.b2bpic.net/free-photo/woman-holding-cute-dog-close-up_23-2148949388.jpg", imageAlt: "puppy bath time gentle"},
|
|
||||||
{
|
|
||||||
title: "Maintenance Groom", description: "Keep your pet clean and comfortable between full grooms.", imageSrc: "http://img.b2bpic.net/free-photo/yorkshire-terrier-getting-procedure-groomer-salon-young-woman-white-tshirt-combing-little-dog-yorkshire-terrier-puppy-blue-table_1157-51439.jpg", imageAlt: "dog grooming maintenance"},
|
|
||||||
{
|
|
||||||
title: "Bath & Brush", description: "A quick refresh to keep coats clean and healthy.", imageSrc: "http://img.b2bpic.net/free-photo/haircuting-process-small-dog-sits-table-dog-with-professional_1157-48819.jpg", imageAlt: "pet grooming dog clean"},
|
|
||||||
]}
|
|
||||||
title="Our Services"
|
title="Our Services"
|
||||||
description="Comprehensive grooming solutions for every pet's needs."
|
description="Comprehensive, stress-free grooming packages tailored to your pet's temperament."
|
||||||
/>
|
features={[
|
||||||
</div>
|
{ title: "Full Groom", description: "Complete wash, cut, and style.", imageSrc: "http://img.b2bpic.net/free-vector/several-flat-pet-store-elements_23-2147569069.jpg" },
|
||||||
|
{ title: "Puppy Pamper", description: "Gentle introduction for new pets.", imageSrc: "http://img.b2bpic.net/free-photo/woman-holding-cute-dog-close-up_23-2148949388.jpg" },
|
||||||
<div id="experience" data-section="experience">
|
{ title: "Maintenance", description: "Keep them clean between grooms.", imageSrc: "http://img.b2bpic.net/free-photo/yorkshire-terrier-getting-procedure-groomer-salon-young-woman-white-tshirt-combing-little-dog-yorkshire-terrier-puppy-blue-table_1157-51439.jpg" },
|
||||||
<MetricSplitMediaAbout
|
|
||||||
useInvertedBackground={false}
|
|
||||||
title="A Calmer Approach"
|
|
||||||
description="We focus on a calm, patient, one-to-one approach ensuring every pet feels safe and cared for. Our salon provides a quiet environment, ideal for nervous or first-time pets."
|
|
||||||
metrics={[
|
|
||||||
{ value: "1-to-1", title: "Appointments" },
|
|
||||||
{ value: "Calm", title: "Environment" },
|
|
||||||
{ value: "Expert", title: "Personalized" },
|
|
||||||
]}
|
]}
|
||||||
imageSrc="http://img.b2bpic.net/free-photo/empty-wintertime-luxury-ski-resort_482257-102290.jpg"
|
|
||||||
imageAlt="pet groomer calm atmosphere"
|
|
||||||
mediaAnimation="slide-up"
|
|
||||||
metricsAnimation="slide-up"
|
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="gallery" data-section="gallery">
|
<div id="trust" data-section="trust">
|
||||||
<ProductCardOne
|
<TestimonialCardSix
|
||||||
animationType="slide-up"
|
animationType="slide-up"
|
||||||
textboxLayout="default"
|
title="What Pet Owners Say"
|
||||||
gridVariant="one-large-left-three-stacked-right"
|
description="Hear from our happy clients about their experiences."
|
||||||
|
textboxLayout="split"
|
||||||
useInvertedBackground={false}
|
useInvertedBackground={false}
|
||||||
products={[
|
testimonials={[
|
||||||
{
|
{ id: "1", name: "Sarah J.", handle: "@puppyowner", testimonial: "The best grooming experience in Ruislip!" },
|
||||||
id: "1", name: "Before & After", price: "Groomed", imageSrc: "http://img.b2bpic.net/free-photo/young-handsome-bearded-brutal-tattooed-happy-man-holds-pomeranian-spitz-playing-with-lovely-pet_343596-1531.jpg"},
|
{ id: "2", name: "Mark D.", handle: "@client", testimonial: "So patient with my nervous dog." },
|
||||||
{
|
|
||||||
id: "2", name: "Styling", price: "Groomed", imageSrc: "http://img.b2bpic.net/free-photo/close-up-woman-with-cute-dog_23-2148949395.jpg"},
|
|
||||||
{
|
|
||||||
id: "3", name: "Puppy Cut", price: "Groomed", imageSrc: "http://img.b2bpic.net/free-photo/close-up-outdoor-portrait-smiling-girl-with-dark-brown-hair-holding-beagle-dog_197531-4837.jpg"},
|
|
||||||
{
|
|
||||||
id: "4", name: "Coat Trim", price: "Groomed", imageSrc: "http://img.b2bpic.net/free-photo/woman-s-hand-holding-hat-prop-pug-dog-s-head_23-2147841035.jpg"},
|
|
||||||
{
|
|
||||||
id: "5", name: "Full Refresh", price: "Groomed", imageSrc: "http://img.b2bpic.net/free-photo/stylish-pin-up-girl-with-little-dog_1157-18893.jpg"},
|
|
||||||
{
|
|
||||||
id: "6", name: "Healthy Coat", price: "Groomed", imageSrc: "http://img.b2bpic.net/free-photo/vertical-portrait-adorable-mixed-breed-dog-blue-wall_181624-35866.jpg"},
|
|
||||||
]}
|
]}
|
||||||
title="Happy Pets, Beautiful Results"
|
|
||||||
description="Take a look at some of our recent grooms and see the care and attention we provide."
|
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="cta" data-section="cta">
|
<div id="contact" data-section="contact">
|
||||||
<MetricCardEleven
|
<ContactText
|
||||||
animationType="slide-up"
|
text="Ready to pamper your pet? Book your appointment today and see the difference a calm, loving touch makes."
|
||||||
textboxLayout="default"
|
background={{ variant: "plain" }}
|
||||||
|
buttons={[{ text: "Call 07598 206450", href: "tel:07598206450" }]}
|
||||||
useInvertedBackground={false}
|
useInvertedBackground={false}
|
||||||
metrics={[
|
|
||||||
{
|
|
||||||
id: "1", value: "5.0", title: "Rating", description: "Highly Rated", imageSrc: "http://img.b2bpic.net/free-photo/lovely-pet-portrait-isolated_23-2149192305.jpg"},
|
|
||||||
{
|
|
||||||
id: "2", value: "Mon-Fri", title: "Hours", description: "9am-5pm", imageSrc: "http://img.b2bpic.net/free-photo/rough-collie-looking-side_181624-45167.jpg"},
|
|
||||||
{
|
|
||||||
id: "3", value: "Local", title: "Business", description: "Ruislip Based", imageSrc: "http://img.b2bpic.net/free-photo/closeup-shot-cute-shih-tzu-dog-red-background_181624-25315.jpg"},
|
|
||||||
]}
|
|
||||||
title="Give Your Pet the Care They Deserve"
|
|
||||||
description="Book today and experience a professional grooming service trusted by local owners."
|
|
||||||
buttons={[
|
|
||||||
{ text: "Book Now", href: "/contact" }
|
|
||||||
]}
|
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="footer" data-section="footer">
|
<div id="footer" data-section="footer">
|
||||||
<FooterMedia
|
<FooterBaseReveal
|
||||||
imageSrc="http://img.b2bpic.net/free-photo/high-angle-woman-washing-dog_23-2149872954.jpg"
|
logoText="Jeff & Company"
|
||||||
logoText="Jeff & Company Grooming"
|
|
||||||
columns={[
|
columns={[
|
||||||
{
|
{ title: "Location", items: [{ label: "Ruislip, Greater London", href: "#" }] },
|
||||||
title: "Contact", items: [
|
{ title: "Contact", items: [{ label: "07598 206450", href: "tel:07598206450" }] },
|
||||||
{ label: "Greystoke Dr, Ruislip", href: "#" },
|
{ title: "Hours", items: [{ label: "Mon-Fri: 9-5", href: "#" }] },
|
||||||
{ label: "07598 206450", href: "tel:07598206450" },
|
|
||||||
],
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: "Opening Hours", items: [
|
|
||||||
{ label: "Mon-Fri: 9am-5pm", href: "#" },
|
|
||||||
{ label: "Sat: 9am-5pm", href: "#" },
|
|
||||||
],
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: "Follow", items: [
|
|
||||||
{ label: "Instagram", href: "#" },
|
|
||||||
],
|
|
||||||
},
|
|
||||||
]}
|
]}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Reference in New Issue
Block a user