13 Commits

Author SHA1 Message Date
82b3abd71c Merge version_3 into main
Merge version_3 into main
2026-03-06 19:36:31 +00:00
57cd3284cb Update src/app/reviews/page.tsx 2026-03-06 19:36:26 +00:00
9fdb1fb268 Merge version_3 into main
Merge version_3 into main
2026-03-06 19:35:17 +00:00
50945a15e9 Update src/app/reviews/page.tsx 2026-03-06 19:35:11 +00:00
b34c050426 Merge version_3 into main
Merge version_3 into main
2026-03-06 19:33:29 +00:00
7d5e7ba58d Update src/app/services/page.tsx 2026-03-06 19:33:25 +00:00
1401037664 Add src/app/reviews/page.tsx 2026-03-06 19:33:24 +00:00
ae4d9f4783 Update src/app/page.tsx 2026-03-06 19:33:23 +00:00
58ca0483a3 Update src/app/layout.tsx 2026-03-06 19:33:23 +00:00
a1c5980a97 Merge version_2 into main
Merge version_2 into main
2026-03-06 19:28:10 +00:00
06c9943d92 Add src/app/services/page.tsx 2026-03-06 19:28:06 +00:00
f7c47090d0 Update src/app/page.tsx 2026-03-06 19:28:06 +00:00
f9d92a401e Merge version_1 into main
Merge version_1 into main
2026-03-06 19:16:15 +00:00
4 changed files with 344 additions and 45 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

@@ -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" }
]}
@@ -92,22 +93,64 @@ export default function LandingPage() {
<FeatureCardTwelve
features={[
{
id: "bathroom", label: "Bathrooms", title: "Complete Bathroom Renovations", items: [
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: "/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: "Modern Kitchen Upgrades", items: [
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: "roofing", label: "Roofing", title: "Roof Repairs & Replacement", items: [
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: "/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: "/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: "/reviews" }]
},
{
id: "paving", label: "Paving", title: "Paving & Outdoor Areas", items: [
"Driveway paving", "Patio installation", "Outdoor landscaping", "Drainage solutions"
],
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: "/reviews" }]
},
{
id: "structural", label: "Structural", title: "Structural Repairs", items: [
"Foundation assessment", "Load-bearing wall work", "Structural reinforcement", "Safety compliance"
],
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, 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>
);
}

142
src/app/services/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 { Wrench, Phone } from "lucide-react";
export default function ServicesPage() {
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="services" data-section="services" style={{ paddingTop: "6rem" }}>
<FeatureCardTwelve
features={[
{
id: "full-home", label: "Full Home", title: "Full Home Renovations", items: [
"Complete structural assessment and planning", "Design consultation and 3D visualization", "Multi-room coordination and management", "Professional project timeline and delivery"
],
buttons: [{ text: "Get Quote", href: "contact" }]
},
{
id: "bathroom", label: "Bathrooms", title: "Bathroom Renovations", items: [
"Tile work and professional waterproofing", "Premium fixture installation and plumbing", "Custom vanities and storage solutions", "Ventilation systems and moisture control"
],
buttons: [{ text: "Get Quote", href: "contact" }]
},
{
id: "kitchen", label: "Kitchens", title: "Kitchen Renovations", items: [
"Cabinet refacing, replacement, and custom design", "Quality countertop installation and finishing", "Seamless appliance integration and electrical", "Professional lighting and premium finishes"
],
buttons: [{ text: "Get Quote", href: "contact" }]
},
{
id: "flooring", label: "Flooring", title: "Flooring Installation", items: [
"Hardwood and laminate installation expertise", "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", label: "Brickwork", title: "Brickwork & Plastering", items: [
"Expert brick and mortar work for structures", "Professional wall repairs and restoration", "Quality plastering and surface preparation", "Premium finishing for aesthetic appeal"
],
buttons: [{ text: "Get Quote", href: "contact" }]
},
{
id: "roofing", label: "Roofing", title: "Roof Repairs", items: [
"Comprehensive leak detection and repair", "Professional roof inspections and assessment", "Quality material replacement and upgrades", "Superior weather protection solutions"
],
buttons: [{ text: "Get Quote", href: "contact" }]
},
{
id: "painting", label: "Painting", title: "Painting & Finishing", items: [
"Professional interior and exterior painting", "Meticulous surface preparation and priming", "Expert color consultation and selection", "Premium finishes with attention to detail"
],
buttons: [{ text: "Get Quote", href: "contact" }]
},
{
id: "paving", label: "Paving", title: "Paving & Outdoor Areas", items: [
"Professional driveway paving and installation", "Custom patio design and construction", "Landscape integration and outdoor design", "Proper drainage solutions and maintenance"
],
buttons: [{ text: "Get Quote", href: "contact" }]
},
{
id: "doors-windows", label: "Doors & Windows", title: "Door & Window Installation", items: [
"Professional door frame and installation work", "Quality window replacement and upgrades", "Expert weatherproofing and insulation", "Complete hardware and finishing installation"
],
buttons: [{ text: "Get Quote", href: "contact" }]
},
{
id: "structural", label: "Structural", title: "Structural Repairs", items: [
"Comprehensive foundation assessment and repair", "Expert load-bearing wall construction work", "Professional structural reinforcement solutions", "Full safety compliance and building standards"
],
buttons: [{ text: "Get Quote", href: "contact" }]
}
]}
animationType="blur-reveal"
title="Our Services"
description="Comprehensive home renovation and construction services tailored to your needs. From complete home transformations to specialized repairs, BuildRight delivers quality workmanship with professional expertise."
tag="What We Do"
tagIcon={Wrench}
tagAnimation="slide-up"
textboxLayout="default"
useInvertedBackground={true}
ariaLabel="Services section describing all renovation offerings"
/>
</div>
<div id="contact" data-section="contact">
<ContactCenter
tag="Get Started"
title="Ready to Transform Your Home?"
description="Contact BuildRight today for a free consultation and detailed quote. Our team will discuss your project, answer questions, and provide professional guidance tailored to your renovation 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>
);
}