Merge version_2_1781857390016 into main #1

Merged
bender merged 1 commits from version_2_1781857390016 into main 2026-06-19 08:24:52 +00:00
10 changed files with 411 additions and 252 deletions

View File

@@ -1,264 +1,41 @@
import AboutText from '@/components/sections/about/AboutText';
import ContactCta from '@/components/sections/contact/ContactCta';
import FaqTwoColumn from '@/components/sections/faq/FaqTwoColumn';
import FeaturesImageBento from '@/components/sections/features/FeaturesImageBento';
import FeaturesRevealCards from '@/components/sections/features/FeaturesRevealCards';
import HeroSplitVerticalMarquee from '@/components/sections/hero/HeroSplitVerticalMarquee';
import MetricsSimpleCards from '@/components/sections/metrics/MetricsSimpleCards';
import TestimonialTrustCard from '@/components/sections/testimonial/TestimonialTrustCard';
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
// AUTO-GENERATED shell by per-section-migrate.
// Section bodies live in ./<PageBase>/sections/<X>.tsx. Edit the section
// files directly. Non-block content (wrappers, non-inlinable sections) is
// preserved inline; extracted section blocks become <XSection/> refs.
export default function HomePage() {
import React from 'react';
import HeroSection from './HomePage/sections/Hero';
import AboutSection from './HomePage/sections/About';
import ServicesSection from './HomePage/sections/Services';
import ProjectsSection from './HomePage/sections/Projects';
import MetricsSection from './HomePage/sections/Metrics';
import TestimonialsSection from './HomePage/sections/Testimonials';
import FaqSection from './HomePage/sections/Faq';
import ContactSection from './HomePage/sections/Contact';
{/* webild-stub @2026-06-19T08:24:47.212Z: Update the company profile to reflect 6-7 years of industry experience instead of decades. Remove interior finishing from the services list. Focus the services and construction details on foundation strength, beams, columns, flooring, and c */}
import AfterConstructionMaterialsSection from './HomePage/sections/AfterConstructionMaterials';export default function HomePage(): React.JSX.Element {
return (
<>
<div id="hero" data-section="hero">
<SectionErrorBoundary name="hero">
<HeroSplitVerticalMarquee
tag="Construction Excellence"
title="Building Your Vision into Reality"
description="Aggarwal Construction delivers high-performance structural solutions with a commitment to quality, durability, and architectural precision."
primaryButton={{
text: "View Projects",
href: "#projects",
}}
secondaryButton={{
text: "Contact Us",
href: "#contact",
}}
leftItems={[
{
imageSrc: "http://img.b2bpic.net/free-photo/female-architect-with-helmet-construction-site_23-2147702481.jpg",
},
{
imageSrc: "http://img.b2bpic.net/free-photo/architect-smiling-while-looking-camera_23-2148242957.jpg",
},
{
imageSrc: "http://img.b2bpic.net/free-photo/construction-work-site_1398-2982.jpg",
},
{
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/new-york-city-ny-usa-october-20-2020-vessel-hudson-yards-staircase-designed-by-architect-thomas-heatherwick-midtown-manhattan-west_1321-2499.jpg",
},
{
imageSrc: "http://img.b2bpic.net/free-photo/blueprint-architect-construction-project-sketch-concept_53876-120012.jpg",
},
]}
rightItems={[
{
imageSrc: "http://img.b2bpic.net/free-photo/pedestrian-bridge-against-blue-sky_1127-2835.jpg",
},
{
imageSrc: "http://img.b2bpic.net/free-photo/light-symmetry-historic-atrium-upward-view-through-stairs_169016-70079.jpg",
},
{
imageSrc: "http://img.b2bpic.net/free-photo/construction-site_53876-31720.jpg",
},
{
imageSrc: "http://img.b2bpic.net/free-photo/steel-bar-site-construction_1150-10127.jpg",
},
{
imageSrc: "http://img.b2bpic.net/free-photo/construction-worker-using-hammer-job-site_23-2150530685.jpg",
},
{
imageSrc: "http://img.b2bpic.net/free-photo/man-taking-picture-flowing-water-from-bridge_23-2148187299.jpg",
},
]}
/>
</SectionErrorBoundary>
</div>
<>
<HeroSection />
<div id="about" data-section="about">
<SectionErrorBoundary name="about">
<AboutText
title="Decades of Unmatched Structural Integrity"
primaryButton={{
text: "Learn About Us",
href: "#",
}}
/>
</SectionErrorBoundary>
</div>
<AboutSection />
<div id="services" data-section="services">
<SectionErrorBoundary name="services">
<FeaturesRevealCards
tag="Our Core Services"
title="Professional Construction Solutions"
description="From foundational engineering to interior precision, we manage every detail."
items={[
{
title: "Structural Foundation",
description: "Rock-solid foundations for commercial and residential developments.",
imageSrc: "http://img.b2bpic.net/free-photo/low-angle-shot-beautiful-modern-building-middle-city-clear-sky_181624-7463.jpg",
},
{
title: "Interior Finishing",
description: "Premium aesthetic and structural finishing for modern spaces.",
imageSrc: "http://img.b2bpic.net/free-photo/close-up-woman-man-choosing-color_23-2148903521.jpg",
},
{
title: "Commercial Development",
description: "Large-scale project management with architectural rigor.",
imageSrc: "http://img.b2bpic.net/free-photo/tall-skyscraper-with-metal-construction_23-2147764381.jpg",
},
]}
/>
</SectionErrorBoundary>
</div>
<ServicesSection />
<AfterConstructionMaterialsSection />
<div id="projects" data-section="projects">
<SectionErrorBoundary name="projects">
<FeaturesImageBento
tag="Portfolio"
title="Featured Construction Projects"
description="Explore our recent success in diverse sectors."
items={[
{
title: "Luxury Estate",
description: "High-end residential build.",
imageSrc: "http://img.b2bpic.net/free-photo/real-estate-team-using-3d-models-explore-construction-layout-options-working-residential_482257-136318.jpg",
},
{
title: "Corporate Office",
description: "Modern office structural design.",
imageSrc: "http://img.b2bpic.net/free-photo/construction-building-seen-from_1203-1115.jpg",
},
{
title: "Home Renovation",
description: "Professional residential remodel.",
imageSrc: "http://img.b2bpic.net/free-photo/architecture-light-gothic-arches-windows-aesthetic-church-space_169016-68625.jpg",
},
{
title: "Paving Infra",
description: "Expert roadway infrastructure.",
imageSrc: "http://img.b2bpic.net/free-photo/portrait-man-with-sunflowers-electric-scooter_23-2149705863.jpg",
},
{
title: "Foundation Work",
description: "Reinforced concrete systems.",
imageSrc: "http://img.b2bpic.net/free-photo/monochrome-scene-depicting-life-workers-construction-industry-site_23-2151431492.jpg",
},
{
title: "Outdoor Landscape",
description: "Structural aesthetic integration.",
imageSrc: "http://img.b2bpic.net/free-photo/service-maintenance-worker-repairing_23-2149176755.jpg",
},
{
title: "Bridge Engineering",
description: "Large scale civil project.",
imageSrc: "http://img.b2bpic.net/free-photo/aerial-shot-long-self-anchored-suspension-bridge-through-sea_181624-40406.jpg",
},
]}
/>
</SectionErrorBoundary>
</div>
<ProjectsSection />
<div id="metrics" data-section="metrics">
<SectionErrorBoundary name="metrics">
<MetricsSimpleCards
tag="Our Impact"
title="Engineering Numbers"
description="Proven performance across decades."
metrics={[
{
value: "150+",
description: "Completed Projects",
},
{
value: "20+",
description: "Years Experience",
},
{
value: "500+",
description: "Clients Served",
},
{
value: "100%",
description: "Safety Rating",
},
]}
/>
</SectionErrorBoundary>
</div>
<MetricsSection />
<div id="testimonials" data-section="testimonials">
<SectionErrorBoundary name="testimonials">
<TestimonialTrustCard
quote="Aggarwal Construction transformed our vision into a masterpiece. Their precision and structural focus made all the difference."
rating={5}
author="Vikas Khanna, CEO of Khanna Tech"
avatars={[
{
name: "Sarah J",
imageSrc: "http://img.b2bpic.net/free-photo/african-american-man-red-t-shirt-smiling-yellow-wall_291650-225.jpg",
},
{
name: "Michael C",
imageSrc: "http://img.b2bpic.net/free-photo/image-carefree-africanamerican-girl-white-tshirt-showing-tongue-smiling-winking-happy-stan_1258-128116.jpg",
},
{
name: "Emily R",
imageSrc: "http://img.b2bpic.net/free-photo/close-up-vertical-image-smiling-african-man-looking_171337-9837.jpg",
},
{
name: "David K",
imageSrc: "http://img.b2bpic.net/free-photo/alone-specialist-handsome-daydreaming-collar_1262-870.jpg",
},
{
name: "Anita P",
imageSrc: "http://img.b2bpic.net/free-photo/puzzled-young-man-with-afro-hairstyle-raises-eyebrow-bewilderment-reacts-something-feels-doubt-dressed-elegant-shirt-isolated-white-wall_273609-17381.jpg",
},
]}
/>
</SectionErrorBoundary>
</div>
<TestimonialsSection />
<div id="faq" data-section="faq">
<SectionErrorBoundary name="faq">
<FaqTwoColumn
tag="Common Questions"
title="Need More Information?"
description="Frequently asked questions about our process."
items={[
{
question: "What is your project timeline estimation?",
answer: "We provide detailed timelines during the initial consultation based on project scale.",
},
{
question: "Do you handle all necessary permits?",
answer: "Yes, we handle the full regulatory and permitting process for all projects.",
},
{
question: "What kind of projects do you take?",
answer: "We specialize in residential builds, commercial office spaces, and industrial infrastructure.",
},
{
question: "How do we get started?",
answer: "Reach out through our contact form and we will schedule an onsite assessment.",
},
]}
/>
</SectionErrorBoundary>
</div>
<FaqSection />
<div id="contact" data-section="contact">
<SectionErrorBoundary name="contact">
<ContactCta
tag="Let's Build"
text="Ready to bring your architectural vision to life with Aggarwal Construction?"
primaryButton={{
text: "Schedule Consultation",
href: "#",
}}
secondaryButton={{
text: "Contact Us",
href: "#",
}}
/>
</SectionErrorBoundary>
</div>
<ContactSection />
</>
);
}

View File

@@ -0,0 +1,22 @@
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
// file as the canonical source for the "about" section.
import React from 'react';
import AboutText from '@/components/sections/about/AboutText';
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
export default function AboutSection(): React.JSX.Element {
return (
<div id="about" data-section="about">
<SectionErrorBoundary name="about">
<AboutText
title="6-7 Years of Unmatched Structural Integrity"
primaryButton={{
text: "Learn About Us",
href: "#",
}}
/>
</SectionErrorBoundary>
</div>
);
}

View File

@@ -0,0 +1,69 @@
import { motion } from 'motion/react';
import TextAnimation from '@/components/ui/TextAnimation';
import ScrollReveal from '@/components/ui/ScrollReveal';
import Card from '@/components/ui/Card';
import ImageOrVideo from '@/components/ui/ImageOrVideo';
import Tag from '@/components/ui/Tag';
export default function AfterConstructionMaterialsSection() {
const items = [
{
title: "Tiles",
description: "High-quality tiles for various applications.",
imageSrc: "https://images.unsplash.com/photo-1502005097973-f5a1e117b533?auto=format&fit=crop&q=80&w=800",
},
{
title: "Imported Italian Marble",
description: "Imported Italian marble for luxurious finishes.",
imageSrc: "https://images.unsplash.com/photo-1600585154340-be6161a56a0c?auto=format&fit=crop&q=80&w=800",
},
{
title: "Granite",
description: "Durable granite for countertops and flooring.",
imageSrc: "https://images.unsplash.com/photo-1584622650111-993a426fbf0a?auto=format&fit=crop&q=80&w=800",
}
];
return (
<section data-webild-section="after-construction-materials" id="after-construction-materials" className="relative w-full py-24 bg-background">
<div className="w-content-width mx-auto">
<div className="flex flex-col items-center text-center mb-16">
<ScrollReveal variant="fade">
<Tag text="Materials" className="mb-4" />
</ScrollReveal>
<TextAnimation
text="After-Construction Materials"
variant="fade-blur"
tag="h2"
gradientText={false}
className="text-4xl md:text-5xl font-bold text-foreground mb-4"
/>
<ScrollReveal variant="fade" delay={0.2}>
<p className="text-lg text-accent max-w-2xl mx-auto">
We provide premium after-construction materials for home and commercial projects. Images coming soon.
</p>
</ScrollReveal>
</div>
<div className="grid grid-cols-1 md:grid-cols-3 gap-8">
{items.map((item, index) => (
<ScrollReveal variant="fade" key={index} delay={0.1 * index}>
<Card className="h-full overflow-hidden flex flex-col">
<div className="relative h-64 w-full">
<ImageOrVideo
imageSrc={item.imageSrc}
className="w-full h-full object-cover"
/>
</div>
<div className="p-6 flex flex-col flex-grow">
<h3 className="text-xl font-bold text-foreground mb-2">{item.title}</h3>
<p className="text-accent">{item.description}</p>
</div>
</Card>
</ScrollReveal>
))}
</div>
</div>
</section>
);
}

View File

@@ -0,0 +1,27 @@
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
// file as the canonical source for the "contact" section.
import React from 'react';
import ContactCta from '@/components/sections/contact/ContactCta';
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
export default function ContactSection(): React.JSX.Element {
return (
<div id="contact" data-section="contact">
<SectionErrorBoundary name="contact">
<ContactCta
tag="Let's Build"
text="Ready to bring your architectural vision to life with Aggarwal Construction?"
primaryButton={{
text: "Schedule Consultation",
href: "#",
}}
secondaryButton={{
text: "Contact Us",
href: "#",
}}
/>
</SectionErrorBoundary>
</div>
);
}

View File

@@ -0,0 +1,38 @@
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
// file as the canonical source for the "faq" section.
import React from 'react';
import FaqTwoColumn from '@/components/sections/faq/FaqTwoColumn';
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
export default function FaqSection(): React.JSX.Element {
return (
<div id="faq" data-section="faq">
<SectionErrorBoundary name="faq">
<FaqTwoColumn
tag="Common Questions"
title="Need More Information?"
description="Frequently asked questions about our process."
items={[
{
question: "What is your project timeline estimation?",
answer: "We provide detailed timelines during the initial consultation based on project scale.",
},
{
question: "Do you handle all necessary permits?",
answer: "Yes, we handle the full regulatory and permitting process for all projects.",
},
{
question: "What kind of projects do you take?",
answer: "We specialize in residential builds, commercial office spaces, and industrial infrastructure.",
},
{
question: "How do we get started?",
answer: "Reach out through our contact form and we will schedule an onsite assessment.",
},
]}
/>
</SectionErrorBoundary>
</div>
);
}

View File

@@ -0,0 +1,68 @@
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
// file as the canonical source for the "hero" section.
import React from 'react';
import HeroSplitVerticalMarquee from '@/components/sections/hero/HeroSplitVerticalMarquee';
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
export default function HeroSection(): React.JSX.Element {
return (
<div id="hero" data-section="hero">
<SectionErrorBoundary name="hero">
<HeroSplitVerticalMarquee
tag="Construction Excellence"
title="Building Your Vision into Reality"
description="Aggarwal Construction delivers high-performance structural solutions with a commitment to quality, durability, and architectural precision."
primaryButton={{
text: "View Projects",
href: "#projects",
}}
secondaryButton={{
text: "Contact Us",
href: "#contact",
}}
leftItems={[
{
imageSrc: "http://img.b2bpic.net/free-photo/female-architect-with-helmet-construction-site_23-2147702481.jpg",
},
{
imageSrc: "http://img.b2bpic.net/free-photo/architect-smiling-while-looking-camera_23-2148242957.jpg",
},
{
imageSrc: "http://img.b2bpic.net/free-photo/construction-work-site_1398-2982.jpg",
},
{
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/new-york-city-ny-usa-october-20-2020-vessel-hudson-yards-staircase-designed-by-architect-thomas-heatherwick-midtown-manhattan-west_1321-2499.jpg",
},
{
imageSrc: "http://img.b2bpic.net/free-photo/blueprint-architect-construction-project-sketch-concept_53876-120012.jpg",
},
]}
rightItems={[
{
imageSrc: "http://img.b2bpic.net/free-photo/pedestrian-bridge-against-blue-sky_1127-2835.jpg",
},
{
imageSrc: "http://img.b2bpic.net/free-photo/light-symmetry-historic-atrium-upward-view-through-stairs_169016-70079.jpg",
},
{
imageSrc: "http://img.b2bpic.net/free-photo/construction-site_53876-31720.jpg",
},
{
imageSrc: "http://img.b2bpic.net/free-photo/steel-bar-site-construction_1150-10127.jpg",
},
{
imageSrc: "http://img.b2bpic.net/free-photo/construction-worker-using-hammer-job-site_23-2150530685.jpg",
},
{
imageSrc: "http://img.b2bpic.net/free-photo/man-taking-picture-flowing-water-from-bridge_23-2148187299.jpg",
},
]}
/>
</SectionErrorBoundary>
</div>
);
}

View File

@@ -0,0 +1,38 @@
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
// file as the canonical source for the "metrics" section.
import React from 'react';
import MetricsSimpleCards from '@/components/sections/metrics/MetricsSimpleCards';
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
export default function MetricsSection(): React.JSX.Element {
return (
<div id="metrics" data-section="metrics">
<SectionErrorBoundary name="metrics">
<MetricsSimpleCards
tag="Our Impact"
title="Engineering Numbers"
description="Proven performance across decades."
metrics={[
{
value: "150+",
description: "Completed Projects",
},
{
value: "20+",
description: "Years Experience",
},
{
value: "500+",
description: "Clients Served",
},
{
value: "100%",
description: "Safety Rating",
},
]}
/>
</SectionErrorBoundary>
</div>
);
}

View File

@@ -0,0 +1,57 @@
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
// file as the canonical source for the "projects" section.
import React from 'react';
import FeaturesImageBento from '@/components/sections/features/FeaturesImageBento';
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
export default function ProjectsSection(): React.JSX.Element {
return (
<div id="projects" data-section="projects">
<SectionErrorBoundary name="projects">
<FeaturesImageBento
tag="Portfolio"
title="Featured Construction Projects"
description="Explore our recent success in diverse sectors."
items={[
{
title: "Luxury Estate",
description: "High-end residential build.",
imageSrc: "http://img.b2bpic.net/free-photo/real-estate-team-using-3d-models-explore-construction-layout-options-working-residential_482257-136318.jpg",
},
{
title: "Corporate Office",
description: "Modern office structural design.",
imageSrc: "http://img.b2bpic.net/free-photo/construction-building-seen-from_1203-1115.jpg",
},
{
title: "Home Renovation",
description: "Professional residential remodel.",
imageSrc: "http://img.b2bpic.net/free-photo/architecture-light-gothic-arches-windows-aesthetic-church-space_169016-68625.jpg",
},
{
title: "Paving Infra",
description: "Expert roadway infrastructure.",
imageSrc: "http://img.b2bpic.net/free-photo/portrait-man-with-sunflowers-electric-scooter_23-2149705863.jpg",
},
{
title: "Foundation Work",
description: "Reinforced concrete systems.",
imageSrc: "http://img.b2bpic.net/free-photo/monochrome-scene-depicting-life-workers-construction-industry-site_23-2151431492.jpg",
},
{
title: "Outdoor Landscape",
description: "Structural aesthetic integration.",
imageSrc: "http://img.b2bpic.net/free-photo/service-maintenance-worker-repairing_23-2149176755.jpg",
},
{
title: "Bridge Engineering",
description: "Large scale civil project.",
imageSrc: "http://img.b2bpic.net/free-photo/aerial-shot-long-self-anchored-suspension-bridge-through-sea_181624-40406.jpg",
},
]}
/>
</SectionErrorBoundary>
</div>
);
}

View File

@@ -0,0 +1,21 @@
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
// file as the canonical source for the "services" section.
import React from 'react';
import FeaturesRevealCards from '@/components/sections/features/FeaturesRevealCards';
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
export default function ServicesSection(): React.JSX.Element {
return (
<div id="services" data-section="services">
<SectionErrorBoundary name="services">
<FeaturesRevealCards
tag="Our Core Services"
title="Professional Construction Solutions"
description="From foundational engineering to concrete insulating wall solutions, we manage every structural detail."
items={[{"description":"Rock-solid foundations, beams, columns, and flooring for commercial and residential developments.","title":"Structural Foundation","imageSrc":"http://img.b2bpic.net/free-photo/low-angle-shot-beautiful-modern-building-middle-city-clear-sky_181624-7463.jpg"},{"imageSrc":"http://img.b2bpic.net/free-photo/close-up-woman-man-choosing-color_23-2148903521.jpg","title":"Construction Materials","description":"Premium construction materials including TMT iron bars, ACC, and Bangur Cement."},{"title":"Commercial Development","description":"Large-scale project management with architectural rigor, completed on schedule.","imageSrc":"http://img.b2bpic.net/free-photo/tall-skyscraper-with-metal-construction_23-2147764381.jpg"}]}
/>
</SectionErrorBoundary>
</div>
);
}

View File

@@ -0,0 +1,42 @@
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
// file as the canonical source for the "testimonials" section.
import React from 'react';
import TestimonialTrustCard from '@/components/sections/testimonial/TestimonialTrustCard';
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
export default function TestimonialsSection(): React.JSX.Element {
return (
<div id="testimonials" data-section="testimonials">
<SectionErrorBoundary name="testimonials">
<TestimonialTrustCard
quote="Aggarwal Construction transformed our vision into a masterpiece. Their precision and structural focus made all the difference."
rating={5}
author="Vikas Khanna, CEO of Khanna Tech"
avatars={[
{
name: "Sarah J",
imageSrc: "http://img.b2bpic.net/free-photo/african-american-man-red-t-shirt-smiling-yellow-wall_291650-225.jpg",
},
{
name: "Michael C",
imageSrc: "http://img.b2bpic.net/free-photo/image-carefree-africanamerican-girl-white-tshirt-showing-tongue-smiling-winking-happy-stan_1258-128116.jpg",
},
{
name: "Emily R",
imageSrc: "http://img.b2bpic.net/free-photo/close-up-vertical-image-smiling-african-man-looking_171337-9837.jpg",
},
{
name: "David K",
imageSrc: "http://img.b2bpic.net/free-photo/alone-specialist-handsome-daydreaming-collar_1262-870.jpg",
},
{
name: "Anita P",
imageSrc: "http://img.b2bpic.net/free-photo/puzzled-young-man-with-afro-hairstyle-raises-eyebrow-bewilderment-reacts-something-feels-doubt-dressed-elegant-shirt-isolated-white-wall_273609-17381.jpg",
},
]}
/>
</SectionErrorBoundary>
</div>
);
}