Merge version_3 into main #3

Merged
bender merged 4 commits from version_3 into main 2026-03-06 19:33:30 +00:00
4 changed files with 166 additions and 50 deletions

View File

@@ -1,47 +1,20 @@
import type { Metadata } from "next";
import { Halant } from "next/font/google";
import { Inter } from "next/font/google";
import { Public_Sans } from "next/font/google";
import "./globals.css";
import { ServiceWrapper } from "@/components/ServiceWrapper";
import Tag from "@/tag/Tag";
const halant = Halant({
variable: "--font-halant", subsets: ["latin"],
weight: ["300", "400", "500", "600", "700"],
});
const inter = Inter({
variable: "--font-inter", subsets: ["latin"],
});
const publicSans = Public_Sans({
variable: "--font-public-sans", subsets: ["latin"],
});
import "./styles/variables.css";
import "./styles/base.css";
export const metadata: Metadata = {
title: "Home Renovation & Construction Services in Roodepoort", description: "Professional home renovations, bathroom remodels, kitchen upgrades, and roofing services in Roodepoort. Trusted local contractors with quality craftsmanship and transparent pricing.", keywords: "home renovation Roodepoort, bathroom remodeling, kitchen renovation, roof repair, construction services, local contractor", robots: {
index: true,
follow: true,
},
openGraph: {
title: "BuildRight - Home Renovation Experts in Roodepoort", description: "Transform your home with trusted local construction services", type: "website", siteName: "BuildRight Construction"},
};
title: "BuildRight - Home Renovation & Construction", description: "Expert home renovation and construction services in Roodepoort, Johannesburg. Quality workmanship, transparent pricing, and reliable service."};
export default function RootLayout({
children,
}: Readonly<{
}: {
children: React.ReactNode;
}>) {
}) {
return (
<html lang="en" suppressHydrationWarning>
<ServiceWrapper>
<body
className={`${halant.variable} ${inter.variable} ${publicSans.variable} antialiased`}
>
<Tag />
{children}
<html lang="en">
<body>
{children}
<script
dangerouslySetInnerHTML={{
__html: `
@@ -1409,7 +1382,6 @@ export default function RootLayout({
}}
/>
</body>
</ServiceWrapper>
</html>
);
}

View File

@@ -9,7 +9,7 @@ import ProductCardThree from "@/components/sections/product/ProductCardThree";
import TestimonialCardTwelve from "@/components/sections/testimonial/TestimonialCardTwelve";
import ContactCenter from "@/components/sections/contact/ContactCenter";
import FooterLogoReveal from "@/components/sections/footer/FooterLogoReveal";
import { Hammer, Building, CheckCircle, DollarSign, Clock, MapPin, Wrench, Image, Phone, Star, Hammer as HammerIcon, Droplet, UtensilsCrossed, Drill, Brush, Paintbrush, Waves, DoorOpen, AlertTriangle } from "lucide-react";
import { Hammer, Building, CheckCircle, DollarSign, Clock, MapPin, Wrench, Image, Phone, Star } from "lucide-react";
export default function LandingPage() {
return (
@@ -29,9 +29,10 @@ export default function LandingPage() {
<NavbarStyleFullscreen
brandName="BuildRight"
navItems={[
{ name: "Home", id: "hero" },
{ name: "Home", id: "/" },
{ name: "About", id: "about" },
{ name: "Services", id: "services" },
{ name: "Services", id: "/services" },
{ name: "Reviews", id: "/reviews" },
{ name: "Projects", id: "projects" },
{ name: "Contact", id: "contact" }
]}
@@ -95,61 +96,61 @@ export default function LandingPage() {
id: "full-home", label: "Full Home", title: "Full Home Renovations", items: [
"Complete structural assessment", "Design and planning consultation", "Multi-room coordination", "Project management"
],
buttons: [{ text: "Learn More", href: "contact" }]
buttons: [{ text: "Learn More", href: "/reviews" }]
},
{
id: "bathroom", label: "Bathrooms", title: "Bathroom Renovations", items: [
"Tile work and waterproofing", "Fixture installation", "Custom vanities and storage", "Ventilation systems"
],
buttons: [{ text: "Learn More", href: "contact" }]
buttons: [{ text: "Learn More", href: "/reviews" }]
},
{
id: "kitchen", label: "Kitchens", title: "Kitchen Renovations", items: [
"Cabinet refacing or replacement", "Countertop installation", "Appliance integration", "Lighting and finishes"
],
buttons: [{ text: "Learn More", href: "contact" }]
buttons: [{ text: "Learn More", href: "/reviews" }]
},
{
id: "flooring", label: "Flooring", title: "Flooring Installation", items: [
"Hardwood and laminate installation", "Tile and stone work", "Subfloor preparation", "Finishing and sealing"
],
buttons: [{ text: "Learn More", href: "contact" }]
buttons: [{ text: "Learn More", href: "/reviews" }]
},
{
id: "brickwork", label: "Brickwork", title: "Brickwork & Plastering", items: [
"Brick and mortar work", "Wall repairs and restoration", "Professional plastering", "Surface finishing"
],
buttons: [{ text: "Learn More", href: "contact" }]
buttons: [{ text: "Learn More", href: "/reviews" }]
},
{
id: "roofing", label: "Roofing", title: "Roof Repairs", items: [
"Leak detection and repair", "Roof inspections", "Material replacement", "Weather protection"
],
buttons: [{ text: "Learn More", href: "contact" }]
buttons: [{ text: "Learn More", href: "/reviews" }]
},
{
id: "painting", label: "Painting", title: "Painting & Finishing", items: [
"Interior and exterior painting", "Surface preparation", "Color consultation", "Quality finishes"
],
buttons: [{ text: "Learn More", href: "contact" }]
buttons: [{ text: "Learn More", href: "/reviews" }]
},
{
id: "paving", label: "Paving", title: "Paving & Outdoor Areas", items: [
"Driveway paving", "Patio installation", "Outdoor landscaping", "Drainage solutions"
],
buttons: [{ text: "Learn More", href: "contact" }]
buttons: [{ text: "Learn More", href: "/reviews" }]
},
{
id: "doors-windows", label: "Doors & Windows", title: "Door & Window Installation", items: [
"Door frame installation", "Window replacement", "Weatherproofing", "Hardware installation"
],
buttons: [{ text: "Learn More", href: "contact" }]
buttons: [{ text: "Learn More", href: "/reviews" }]
},
{
id: "structural", label: "Structural", title: "Structural Repairs", items: [
"Foundation assessment", "Load-bearing wall work", "Structural reinforcement", "Safety compliance"
],
buttons: [{ text: "Learn More", href: "contact" }]
buttons: [{ text: "Learn More", href: "/reviews" }]
}
]}
animationType="blur-reveal"

142
src/app/reviews/page.tsx Normal file
View File

@@ -0,0 +1,142 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import NavbarStyleFullscreen from "@/components/navbar/NavbarStyleFullscreen/NavbarStyleFullscreen";
import FeatureCardTwelve from "@/components/sections/feature/FeatureCardTwelve";
import ContactCenter from "@/components/sections/contact/ContactCenter";
import FooterLogoReveal from "@/components/sections/footer/FooterLogoReveal";
import { Home, Droplet, UtensilsCrossed, Flame, Wrench, Paintbrush, PavingBrick, DoorOpen, AlertTriangle, Phone } from "lucide-react";
export default function ReviewsPage() {
return (
<ThemeProvider
defaultButtonVariant="directional-hover"
defaultTextAnimation="reveal-blur"
borderRadius="soft"
contentWidth="compact"
sizing="medium"
background="blurBottom"
cardStyle="gradient-bordered"
primaryButtonStyle="double-inset"
secondaryButtonStyle="glass"
headingFontWeight="bold"
>
<div id="nav" data-section="nav">
<NavbarStyleFullscreen
brandName="BuildRight"
navItems={[
{ name: "Home", id: "/" },
{ name: "About", id: "about" },
{ name: "Services", id: "/services" },
{ name: "Reviews", id: "/reviews" },
{ name: "Projects", id: "projects" },
{ name: "Contact", id: "contact" }
]}
bottomLeftText="Roodepoort, Johannesburg"
bottomRightText="hello@buildright.co.za"
/>
</div>
<div id="reviews" data-section="reviews" style={{ paddingTop: "6rem" }}>
<FeatureCardTwelve
features={[
{
id: "full-home-renovations", label: "Full Home", title: "Full Home Renovations", items: [
"Complete structural assessment and evaluation", "Comprehensive design and planning services", "Professional multi-room coordination", "Full project management from start to finish"
],
buttons: [{ text: "Get Quote", href: "contact" }]
},
{
id: "bathroom-renovations", label: "Bathrooms", title: "Bathroom Renovations", items: [
"Expert tile work and professional waterproofing", "High-quality fixture and plumbing installation", "Custom vanity design and storage solutions", "Ventilation system installation and maintenance"
],
buttons: [{ text: "Get Quote", href: "contact" }]
},
{
id: "kitchen-renovations", label: "Kitchens", title: "Kitchen Renovations", items: [
"Cabinet refacing, replacement, and custom design", "Premium countertop installation and finishing", "Seamless appliance integration and electrical work", "Professional lighting design and premium finishes"
],
buttons: [{ text: "Get Quote", href: "contact" }]
},
{
id: "flooring-installation", label: "Flooring", title: "Flooring Installation", items: [
"Expert hardwood and laminate floor installation", "Premium tile and natural stone work", "Professional subfloor preparation and repair", "High-quality finishing and protective sealing"
],
buttons: [{ text: "Get Quote", href: "contact" }]
},
{
id: "brickwork-plastering", label: "Brickwork", title: "Brickwork & Plastering", items: [
"Expert brick and mortar work for all structures", "Professional wall repairs and restoration services", "Quality plastering and surface preparation", "Premium finishing for enhanced aesthetic appeal"
],
buttons: [{ text: "Get Quote", href: "contact" }]
},
{
id: "roof-repairs", label: "Roofing", title: "Roof Repairs", items: [
"Comprehensive leak detection and expert repair", "Professional roof inspections and assessments", "Quality material replacement and upgrades", "Superior weather protection and durability solutions"
],
buttons: [{ text: "Get Quote", href: "contact" }]
},
{
id: "painting-finishing", label: "Painting", title: "Painting & Finishing", items: [
"Professional interior and exterior painting services", "Meticulous surface preparation and priming", "Expert color consultation and professional selection", "Premium finishes with careful attention to detail"
],
buttons: [{ text: "Get Quote", href: "contact" }]
},
{
id: "paving-outdoor", label: "Paving", title: "Paving & Outdoor Areas", items: [
"Professional driveway paving and quality installation", "Custom patio design and professional construction", "Landscape integration and outdoor space design", "Proper drainage solutions and ongoing maintenance"
],
buttons: [{ text: "Get Quote", href: "contact" }]
},
{
id: "door-window-installation", label: "Doors & Windows", title: "Door & Window Installation", items: [
"Professional door frame and installation expertise", "Quality window replacement and upgrade services", "Expert weatherproofing and insulation installation", "Complete hardware and professional finishing work"
],
buttons: [{ text: "Get Quote", href: "contact" }]
},
{
id: "structural-repairs", label: "Structural", title: "Structural Repairs", items: [
"Comprehensive foundation assessment and repair work", "Expert load-bearing wall construction and reinforcement", "Professional structural reinforcement solutions", "Full safety compliance and building standards adherence"
],
buttons: [{ text: "Get Quote", href: "contact" }]
}
]}
animationType="blur-reveal"
title="Our Services"
description="Discover our comprehensive range of professional home renovation and construction services. Each service is delivered with expert craftsmanship, quality materials, and professional attention to detail."
tag="Our Services"
tagIcon={Home}
tagAnimation="slide-up"
textboxLayout="default"
useInvertedBackground={true}
ariaLabel="Services section showcasing all professional renovation offerings"
/>
</div>
<div id="contact" data-section="contact">
<ContactCenter
tag="Get Started"
title="Ready to Start Your Renovation?"
description="Contact BuildRight today to discuss your home renovation project. Our expert team is ready to provide a free consultation and detailed quote for your specific needs."
tagIcon={Phone}
tagAnimation="slide-up"
background={{ variant: "radial-gradient" }}
useInvertedBackground={false}
inputPlaceholder="Your email address"
buttonText="Get Free Quote"
termsText="We respect your privacy. We'll contact you within 24 hours with your free quote."
ariaLabel="Contact section for service inquiries"
/>
</div>
<div id="footer" data-section="footer">
<FooterLogoReveal
logoText="BuildRight"
leftLink={{ text: "Privacy Policy", href: "#" }}
rightLink={{ text: "Terms of Service", href: "#" }}
ariaLabel="Site footer with branding and links"
/>
</div>
</ThemeProvider>
);
}

View File

@@ -28,6 +28,7 @@ export default function ServicesPage() {
{ name: "Home", id: "/" },
{ name: "About", id: "about" },
{ name: "Services", id: "/services" },
{ name: "Reviews", id: "/reviews" },
{ name: "Projects", id: "projects" },
{ name: "Contact", id: "contact" }
]}