6 Commits

Author SHA1 Message Date
6433d92d4a Merge version_2 into main
Merge version_2 into main
2026-04-26 00:35:36 +00:00
5e08ead01a Remove watermark 2026-04-26 00:35:33 +00:00
909a84f2d3 Merge version_2 into main
Merge version_2 into main
2026-04-26 00:29:47 +00:00
9729d28b7a Update src/app/page.tsx 2026-04-26 00:29:44 +00:00
763c2b1d0b Merge version_2 into main
Merge version_2 into main
2026-04-26 00:29:12 +00:00
e8c06a527d Update src/app/page.tsx 2026-04-26 00:29:08 +00:00
2 changed files with 54 additions and 194 deletions

View File

@@ -4,7 +4,6 @@ import { Inter } from "next/font/google";
import "./globals.css"; import "./globals.css";
import "@/lib/gsap-setup"; import "@/lib/gsap-setup";
import { ServiceWrapper } from "@/components/ServiceWrapper"; import { ServiceWrapper } from "@/components/ServiceWrapper";
import Tag from "@/tag/Tag";
import { getVisualEditScript } from "@/utils/visual-edit-script"; import { getVisualEditScript } from "@/utils/visual-edit-script";
import { Public_Sans } from "next/font/google"; import { Public_Sans } from "next/font/google";
@@ -33,7 +32,7 @@ export default function RootLayout({
<html lang="en" suppressHydrationWarning> <html lang="en" suppressHydrationWarning>
<ServiceWrapper> <ServiceWrapper>
<body className={`${publicSans.variable} ${inter.variable} antialiased`}> <body className={`${publicSans.variable} ${inter.variable} antialiased`}>
<Tag />
{children} {children}
<script <script
dangerouslySetInnerHTML={{ dangerouslySetInnerHTML={{

View File

@@ -32,26 +32,17 @@ export default function LandingPage() {
<NavbarLayoutFloatingInline <NavbarLayoutFloatingInline
navItems={[ navItems={[
{ {
name: "Home", name: "Home", id: "hero"},
id: "hero",
},
{ {
name: "Services", name: "Services", id: "services"},
id: "services",
},
{ {
name: "Gallery", name: "Gallery", id: "gallery"},
id: "gallery",
},
{ {
name: "Contact", name: "Contact", id: "contact"},
id: "contact",
},
]} ]}
brandName="Coopers Home Solutions" brandName="Coopers Home Solutions"
button={{ button={{
text: "Get a Quote", text: "Get a Quote", href: "#quote"
href: "#quote",
}} }}
/> />
</div> </div>
@@ -62,74 +53,40 @@ export default function LandingPage() {
description="Coopers Home Solutions helps homeowners with remodeling, repairs, painting, tile, carpentry, and everyday home improvement projects." description="Coopers Home Solutions helps homeowners with remodeling, repairs, painting, tile, carpentry, and everyday home improvement projects."
testimonials={[ testimonials={[
{ {
name: "Sarah J.", name: "Sarah J.", handle: "@portsmouth-resident", testimonial: "Excellent service and professionalism on my kitchen reno.", rating: 5,
handle: "@portsmouth-resident", imageSrc: "http://img.b2bpic.net/free-photo/full-shot-man-traveling-by-train_23-2150510174.jpg"},
testimonial: "Excellent service and professionalism on my kitchen reno.",
rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/full-shot-man-traveling-by-train_23-2150510174.jpg",
},
{ {
name: "Mike D.", name: "Mike D.", handle: "@hampton-roads-local", testimonial: "Handled my structural repairs perfectly and on time.", rating: 5,
handle: "@hampton-roads-local", imageSrc: "http://img.b2bpic.net/free-photo/cheerful-latin-architect-smiling-while-looking-online-information-laptop-working-construction-plans_662251-552.jpg"},
testimonial: "Handled my structural repairs perfectly and on time.",
rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/cheerful-latin-architect-smiling-while-looking-online-information-laptop-working-construction-plans_662251-552.jpg",
},
{ {
name: "Linda W.", name: "Linda W.", handle: "@happy-client", testimonial: "Very happy with the bathroom tile update, looks amazing.", rating: 5,
handle: "@happy-client", imageSrc: "http://img.b2bpic.net/free-photo/plumbing-professional-doing-his-job_23-2150721520.jpg"},
testimonial: "Very happy with the bathroom tile update, looks amazing.",
rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/plumbing-professional-doing-his-job_23-2150721520.jpg",
},
{ {
name: "Tom B.", name: "Tom B.", handle: "@homeowner", testimonial: "Trustworthy local team, highly recommended for any job.", rating: 5,
handle: "@homeowner", imageSrc: "http://img.b2bpic.net/free-photo/set-designer-work-indoors_23-2149836986.jpg"},
testimonial: "Trustworthy local team, highly recommended for any job.",
rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/set-designer-work-indoors_23-2149836986.jpg",
},
{ {
name: "Amy K.", name: "Amy K.", handle: "@neighbor", testimonial: "Efficient, clean work and very transparent communication.", rating: 5,
handle: "@neighbor", imageSrc: "http://img.b2bpic.net/free-photo/man-standing-talking-colleagues_23-2147668768.jpg"},
testimonial: "Efficient, clean work and very transparent communication.",
rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/man-standing-talking-colleagues_23-2147668768.jpg",
},
]} ]}
buttons={[ buttons={[
{ {
text: "Request a Free Estimate", text: "Request a Free Estimate", href: "#quote"},
href: "#quote",
},
{ {
text: "Call (757) 578-6565", text: "Call (757) 578-6565", href: "tel:7575786565"},
href: "tel:7575786565",
},
]} ]}
imageSrc="http://img.b2bpic.net/free-photo/working-day-two-indian-men-discussing-something-looking-involved_259150-59414.jpg" imageSrc="http://img.b2bpic.net/free-photo/working-day-two-indian-men-discussing-something-looking-involved_259150-59414.jpg"
showBlur={true} showBlur={true}
avatars={[ avatars={[
{ {
src: "http://img.b2bpic.net/free-photo/female-plumber-working-fix-problems-client-s-house_23-2150990733.jpg", src: "http://img.b2bpic.net/free-photo/female-plumber-working-fix-problems-client-s-house_23-2150990733.jpg", alt: "Client 1"},
alt: "Client 1",
},
{ {
src: "http://img.b2bpic.net/free-photo/medium-shot-man-working-as-plumber_23-2150746293.jpg", src: "http://img.b2bpic.net/free-photo/medium-shot-man-working-as-plumber_23-2150746293.jpg", alt: "Client 2"},
alt: "Client 2",
},
{ {
src: "http://img.b2bpic.net/free-photo/social-worker-helping-senior-woman_23-2149031386.jpg", src: "http://img.b2bpic.net/free-photo/social-worker-helping-senior-woman_23-2149031386.jpg", alt: "Client 3"},
alt: "Client 3",
},
{ {
src: "http://img.b2bpic.net/free-photo/medium-shot-man-woman-working_23-2148899726.jpg", src: "http://img.b2bpic.net/free-photo/medium-shot-man-woman-working_23-2148899726.jpg", alt: "Client 4"},
alt: "Client 4",
},
{ {
src: "http://img.b2bpic.net/free-photo/people-renovating-house-concept_53876-20671.jpg", src: "http://img.b2bpic.net/free-photo/people-renovating-house-concept_53876-20671.jpg", alt: "Client 5"},
alt: "Client 5",
},
]} ]}
avatarText="Trusted by 500+ local families" avatarText="Trusted by 500+ local families"
/> />
@@ -155,64 +112,28 @@ export default function LandingPage() {
useInvertedBackground={true} useInvertedBackground={true}
features={[ features={[
{ {
id: "s1", id: "s1", title: "Home Remodeling", author: "Pro Team", description: "Full-service custom remodeling.", imageSrc: "http://img.b2bpic.net/free-photo/man-making-surfboard_107420-94948.jpg", tags: [
title: "Home Remodeling", "Construction"],
author: "Pro Team",
description: "Full-service custom remodeling.",
imageSrc: "http://img.b2bpic.net/free-photo/man-making-surfboard_107420-94948.jpg",
tags: [
"Construction",
],
}, },
{ {
id: "s2", id: "s2", title: "Painting & Drywall", author: "Pro Team", description: "Quality interior finish work.", imageSrc: "http://img.b2bpic.net/free-photo/closeup-shot-female-using-paint-rollers-with-color-blue_181624-1569.jpg", tags: [
title: "Painting & Drywall", "Finish"],
author: "Pro Team",
description: "Quality interior finish work.",
imageSrc: "http://img.b2bpic.net/free-photo/closeup-shot-female-using-paint-rollers-with-color-blue_181624-1569.jpg",
tags: [
"Finish",
],
}, },
{ {
id: "s3", id: "s3", title: "Tile Installation", author: "Pro Team", description: "Precision floor and wall tiling.", imageSrc: "http://img.b2bpic.net/free-photo/black-stone-tile-wall-textures_74190-2412.jpg", tags: [
title: "Tile Installation", "Construction"],
author: "Pro Team",
description: "Precision floor and wall tiling.",
imageSrc: "http://img.b2bpic.net/free-photo/black-stone-tile-wall-textures_74190-2412.jpg",
tags: [
"Construction",
],
}, },
{ {
id: "s4", id: "s4", title: "Carpentry & Repairs", author: "Pro Team", description: "Structural fixes and custom builds.", imageSrc: "http://img.b2bpic.net/free-photo/interior-modern-office_23-2147668767.jpg", tags: [
title: "Carpentry & Repairs", "Construction"],
author: "Pro Team",
description: "Structural fixes and custom builds.",
imageSrc: "http://img.b2bpic.net/free-photo/interior-modern-office_23-2147668767.jpg",
tags: [
"Construction",
],
}, },
{ {
id: "s5", id: "s5", title: "Handyman Projects", author: "Pro Team", description: "Small home fixes and repairs.", imageSrc: "http://img.b2bpic.net/free-photo/woman-holding-paintbrush-front-easel-workshop_23-2147889913.jpg", tags: [
title: "Handyman Projects", "General"],
author: "Pro Team",
description: "Small home fixes and repairs.",
imageSrc: "http://img.b2bpic.net/free-photo/woman-holding-paintbrush-front-easel-workshop_23-2147889913.jpg",
tags: [
"General",
],
}, },
{ {
id: "s6", id: "s6", title: "Maintenance", author: "Pro Team", description: "Gutter & exterior power washing.", imageSrc: "http://img.b2bpic.net/free-photo/installing-ceramic-floor-tiles-construction-site-construction-workers-workers-laying-tiles-floor-with-cement-adhesive-renovating-floor_166373-2132.jpg", tags: [
title: "Maintenance", "Maintenance"],
author: "Pro Team",
description: "Gutter & exterior power washing.",
imageSrc: "http://img.b2bpic.net/free-photo/installing-ceramic-floor-tiles-construction-site-construction-workers-workers-laying-tiles-floor-with-cement-adhesive-renovating-floor_166373-2132.jpg",
tags: [
"Maintenance",
],
}, },
]} ]}
title="Our Services" title="Our Services"
@@ -226,25 +147,13 @@ export default function LandingPage() {
useInvertedBackground={false} useInvertedBackground={false}
faqs={[ faqs={[
{ {
id: "f1", id: "f1", title: "Local Hampton Roads service", content: "We live and work right here in the area."},
title: "Local Hampton Roads service",
content: "We live and work right here in the area.",
},
{ {
id: "f2", id: "f2", title: "Hands-on residential work", content: "You deal directly with us, the owners."},
title: "Hands-on residential work",
content: "You deal directly with us, the owners.",
},
{ {
id: "f3", id: "f3", title: "Flexible home improvement", content: "We handle projects of all sizes."},
title: "Flexible home improvement",
content: "We handle projects of all sizes.",
},
{ {
id: "f4", id: "f4", title: "Simple communication", content: "Clear timelines and updates."},
title: "Simple communication",
content: "Clear timelines and updates.",
},
]} ]}
title="Why Choose Us" title="Why Choose Us"
description="Built around the homeowners needs." description="Built around the homeowners needs."
@@ -260,41 +169,17 @@ export default function LandingPage() {
useInvertedBackground={true} useInvertedBackground={true}
products={[ products={[
{ {
id: "p1", id: "p1", name: "Recent Work", price: "Renovation", imageSrc: "http://img.b2bpic.net/free-photo/smiley-old-man-with-helmet-showing-approval_23-2148269393.jpg"},
name: "Recent Work",
price: "Renovation",
imageSrc: "http://img.b2bpic.net/free-photo/smiley-old-man-with-helmet-showing-approval_23-2148269393.jpg",
},
{ {
id: "p2", id: "p2", name: "Kitchen Update", price: "Completed", imageSrc: "http://img.b2bpic.net/free-photo/male-carpenter-placing-plank-wooden-surface-workshop_23-2147944908.jpg"},
name: "Kitchen Update",
price: "Completed",
imageSrc: "http://img.b2bpic.net/free-photo/male-carpenter-placing-plank-wooden-surface-workshop_23-2147944908.jpg",
},
{ {
id: "p3", id: "p3", name: "Before & After", price: "Painting", imageSrc: "http://img.b2bpic.net/free-photo/tiler-working-renovation-apartment_23-2149278630.jpg"},
name: "Before & After",
price: "Painting",
imageSrc: "http://img.b2bpic.net/free-photo/tiler-working-renovation-apartment_23-2149278630.jpg",
},
{ {
id: "p4", id: "p4", name: "Project Photo", price: "Details", imageSrc: "http://img.b2bpic.net/free-photo/male-coworkers-office-with-lunch_273609-6308.jpg"},
name: "Project Photo",
price: "Details",
imageSrc: "http://img.b2bpic.net/free-photo/male-coworkers-office-with-lunch_273609-6308.jpg",
},
{ {
id: "p5", id: "p5", name: "Quality Finish", price: "Expert", imageSrc: "http://img.b2bpic.net/free-photo/side-view-man-working-project_23-2149721885.jpg"},
name: "Quality Finish",
price: "Expert",
imageSrc: "http://img.b2bpic.net/free-photo/side-view-man-working-project_23-2149721885.jpg",
},
{ {
id: "p6", id: "p6", name: "Recent Project", price: "Completed", imageSrc: "http://img.b2bpic.net/free-photo/man-holding-paint-roll-head_23-2147703596.jpg"},
name: "Recent Project",
price: "Completed",
imageSrc: "http://img.b2bpic.net/free-photo/man-holding-paint-roll-head_23-2147703596.jpg",
},
]} ]}
title="Project Gallery" title="Project Gallery"
description="See some of our recent work." description="See some of our recent work."
@@ -308,26 +193,11 @@ export default function LandingPage() {
useInvertedBackground={true} useInvertedBackground={true}
metrics={[ metrics={[
{ {
id: "m1", id: "m1", value: "(757) 578-6565", title: "Phone", description: "Call us for estimates.", imageSrc: "http://img.b2bpic.net/free-photo/modern-concrete-apartment-building_250224-11.jpg"},
value: "(757) 578-6565",
title: "Phone",
description: "Call us for estimates.",
imageSrc: "http://img.b2bpic.net/free-photo/modern-concrete-apartment-building_250224-11.jpg",
},
{ {
id: "m2", id: "m2", value: "Portsmouth, VA", title: "Service Area", description: "Serving Hampton Roads.", imageSrc: "http://img.b2bpic.net/free-photo/set-designer-work-indoors_23-2149836952.jpg"},
value: "Portsmouth, VA",
title: "Service Area",
description: "Serving Hampton Roads.",
imageSrc: "http://img.b2bpic.net/free-photo/set-designer-work-indoors_23-2149836952.jpg",
},
{ {
id: "m3", id: "m3", value: "Facebook", title: "Online", description: "View recent projects.", imageSrc: "http://img.b2bpic.net/free-photo/man-working-as-truck-driver_23-2151489800.jpg"},
value: "Facebook",
title: "Online",
description: "View recent projects.",
imageSrc: "http://img.b2bpic.net/free-photo/man-working-as-truck-driver_23-2151489800.jpg",
},
]} ]}
title="Contact Information" title="Contact Information"
description="Coopers Home Solutions is ready to serve you." description="Coopers Home Solutions is ready to serve you."
@@ -338,16 +208,13 @@ export default function LandingPage() {
<ContactCTA <ContactCTA
useInvertedBackground={false} useInvertedBackground={false}
background={{ background={{
variant: "plain", variant: "plain"}}
}}
tag="Get Started" tag="Get Started"
title="Request a Free Estimate" title="Request a Free Estimate"
description="Tell us about your project and we'll be in touch." description="Tell us about your project and we'll be in touch."
buttons={[ buttons={[
{ {
text: "Send Quote Request", text: "Send Quote Request", href: "#"},
href: "#",
},
]} ]}
/> />
</div> </div>
@@ -358,25 +225,19 @@ export default function LandingPage() {
{ {
items: [ items: [
{ {
label: "Facebook", label: "Facebook", href: "https://facebook.com/coopershomesolutions"},
href: "https://facebook.com/coopershomesolutions",
},
], ],
}, },
{ {
items: [ items: [
{ {
label: "Call Us", label: "Call Us", href: "tel:7575786565"},
href: "tel:7575786565",
},
], ],
}, },
{ {
items: [ items: [
{ {
label: "Request Quote", label: "Request Quote", href: "#quote"},
href: "#quote",
},
], ],
}, },
]} ]}