7 Commits

Author SHA1 Message Date
b3334d2a19 Merge version_2 into main
Merge version_2 into main
2026-03-04 08:01:48 +00:00
9d8edbd148 Update src/app/page.tsx 2026-03-04 08:01:44 +00:00
b56106b2e4 Update src/app/layout.tsx 2026-03-04 08:01:43 +00:00
912090f5c4 Merge version_1 into main
Merge version_1 into main
2026-03-04 08:00:36 +00:00
b3a57d552f Merge version_1 into main
Merge version_1 into main
2026-03-04 07:59:20 +00:00
a1a16ff57a Merge version_1 into main
Merge version_1 into main
2026-03-04 07:57:48 +00:00
53709303c5 Merge version_1 into main
Merge version_1 into main
2026-03-04 07:56:32 +00:00
2 changed files with 51 additions and 78 deletions

View File

@@ -1,59 +1,28 @@
import type { Metadata } from "next";
import { Figtree } from "next/font/google";
import { Halant } from "next/font/google";
import { Inter } from "next/font/google";
import { Geist, Geist_Mono } from "next/font/google";
import "./globals.css";
import { ServiceWrapper } from "@/components/ServiceWrapper";
import Tag from "@/tag/Tag";
const figtree = Figtree({
variable: "--font-figtree", subsets: ["latin"],
const geist = Geist({
variable: "--font-geist-sans", subsets: ["latin"],
});
const halant = Halant({
variable: "--font-halant", subsets: ["latin"],
weight: ["300", "400", "500", "600", "700"],
});
const inter = Inter({
variable: "--font-inter", subsets: ["latin"],
const geistMono = Geist_Mono({
variable: "--font-geist-mono", subsets: ["latin"],
});
export const metadata: Metadata = {
title: "Tammin's Lawn & Garden Service - South Wentworthville", description: "Professional lawn mowing, edging, and garden maintenance in South Wentworthville. Affordable, reliable service with 4.8★ rating. Free quotes available.", keywords: "lawn mowing South Wentworthville, lawn care Wentworthville, garden maintenance, affordable lawn service, professional gardener", metadataBase: new URL("https://tammins-lawn-garden.com"),
alternates: {
canonical: "https://tammins-lawn-garden.com"
},
openGraph: {
title: "Tammin's Lawn & Garden Service - South Wentworthville", description: "Professional lawn mowing and garden care. Reliable. Affordable. Detailed work every time.", url: "https://tammins-lawn-garden.com", siteName: "Tammin's Lawn & Garden Service", type: "website", images: [
{
url: "http://img.b2bpic.net/free-photo/unrecognizable-male-gardener-pushing-modern-lawn-mower-while-walking-grass-view-handyman_7502-10570.jpg", alt: "Professional lawn mowing service"
}
]
},
twitter: {
card: "summary_large_image", title: "Tammin's Lawn & Garden Service", description: "Professional lawn care in South Wentworthville", images: ["http://img.b2bpic.net/free-photo/unrecognizable-male-gardener-pushing-modern-lawn-mower-while-walking-grass-view-handyman_7502-10570.jpg"]
},
robots: {
index: true,
follow: true
}
};
title: "Create Next App", description: "Generated by create next app"};
export default function RootLayout({
children,
}: Readonly<{
}: {
children: React.ReactNode;
}>) {
}) {
return (
<html lang="en" suppressHydrationWarning>
<ServiceWrapper>
<body
className={`${figtree.variable} ${halant.variable} ${inter.variable} antialiased`}
>
<Tag />
{children}
<html lang="en">
<body className={`${geist.variable} ${geistMono.variable} antialiased`}>
{children}
<script
dangerouslySetInnerHTML={{
__html: `
@@ -1421,7 +1390,6 @@ export default function RootLayout({
}}
/>
</body>
</ServiceWrapper>
</html>
);
}

View File

@@ -110,40 +110,45 @@ export default function LandingPage() {
</div>
<div id="reviews" data-section="reviews">
<TestimonialCardOne
title="What Our Customers Say"
description="Real reviews from happy customers in South Wentworthville and nearby areas"
testimonials={[
{
id: "1", name: "Michael Johnson", role: "Homeowner", company: "South Wentworthville", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/front-view-cute-girl-looking-away_23-2148436134.jpg", imageAlt: "Michael Johnson"
},
{
id: "2", name: "Sarah Williams", role: "Property Manager", company: "Wentworthville", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/close-up-portrait-young-handsome-successful-man_1163-5475.jpg", imageAlt: "Sarah Williams"
},
{
id: "3", name: "David Chen", role: "Homeowner", company: "Greystanes", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/confident-beautiful-young-businesswoman-looking-camera-head-shot-portrait_1163-4928.jpg", imageAlt: "David Chen"
},
{
id: "4", name: "Emma Robinson", role: "Homeowner", company: "Parramatta", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/happy-businessman-smiling-camera_1163-4660.jpg", imageAlt: "Emma Robinson"
},
{
id: "5", name: "James Taylor", role: "Business Owner", company: "Merrylands", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/young-businesswoman-portrait-office_1262-1506.jpg", imageAlt: "James Taylor"
},
{
id: "6", name: "Lisa Anderson", role: "Homeowner", company: "Toongabbie", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/smiling-man-sitting-cafe-table-gesturing_1262-1141.jpg", imageAlt: "Lisa Anderson"
}
]}
gridVariant="uniform-all-items-equal"
animationType="slide-up"
textboxLayout="default"
useInvertedBackground={false}
/>
<div className="relative">
<div className="py-4 px-6 text-center mb-4">
<p className="text-lg font-semibold text-foreground"> 4.9/5 Stars - 50+ Happy Customers</p>
</div>
<TestimonialCardOne
title="What Our Customers Say"
description="Real reviews from happy customers in South Wentworthville and nearby areas"
testimonials={[
{
id: "1", name: "Michael Johnson", role: "Homeowner", company: "South Wentworthville", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/front-view-cute-girl-looking-away_23-2148436134.jpg", imageAlt: "Michael Johnson"
},
{
id: "2", name: "Sarah Williams", role: "Property Manager", company: "Wentworthville", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/close-up-portrait-young-handsome-successful-man_1163-5475.jpg", imageAlt: "Sarah Williams"
},
{
id: "3", name: "David Chen", role: "Homeowner", company: "Greystanes", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/confident-beautiful-young-businesswoman-looking-camera-head-shot-portrait_1163-4928.jpg", imageAlt: "David Chen"
},
{
id: "4", name: "Emma Robinson", role: "Homeowner", company: "Parramatta", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/happy-businessman-smiling-camera_1163-4660.jpg", imageAlt: "Emma Robinson"
},
{
id: "5", name: "James Taylor", role: "Business Owner", company: "Merrylands", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/young-businesswoman-portrait-office_1262-1506.jpg", imageAlt: "James Taylor"
},
{
id: "6", name: "Lisa Anderson", role: "Homeowner", company: "Toongabbie", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/smiling-man-sitting-cafe-table-gesturing_1262-1141.jpg", imageAlt: "Lisa Anderson"
}
]}
gridVariant="uniform-all-items-equal"
animationType="slide-up"
textboxLayout="default"
useInvertedBackground={false}
/>
</div>
</div>
<div id="service-areas" data-section="service-areas">