diff --git a/src/pages/HomePage.tsx b/src/pages/HomePage.tsx index 0f83d21..d8c8b25 100644 --- a/src/pages/HomePage.tsx +++ b/src/pages/HomePage.tsx @@ -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 .//sections/.tsx. Edit the section +// files directly. Non-block content (wrappers, non-inlinable sections) is +// preserved inline; extracted section blocks become 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 ( - <> -
- - - -
+<> + -
- - - -
+ -
- - - -
+ + -
- - - -
+ -
- - - -
+ -
- - - -
+ -
- - - -
+ -
- - - -
+ ); } diff --git a/src/pages/HomePage/sections/About.tsx b/src/pages/HomePage/sections/About.tsx new file mode 100644 index 0000000..af8f7e3 --- /dev/null +++ b/src/pages/HomePage/sections/About.tsx @@ -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 ( +
+ + + +
+ ); +} diff --git a/src/pages/HomePage/sections/AfterConstructionMaterials.tsx b/src/pages/HomePage/sections/AfterConstructionMaterials.tsx new file mode 100644 index 0000000..249a84c --- /dev/null +++ b/src/pages/HomePage/sections/AfterConstructionMaterials.tsx @@ -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 ( +
+
+
+ + + + + +

+ We provide premium after-construction materials for home and commercial projects. Images coming soon. +

+
+
+ +
+ {items.map((item, index) => ( + + +
+ +
+
+

{item.title}

+

{item.description}

+
+
+
+ ))} +
+
+
+ ); +} \ No newline at end of file diff --git a/src/pages/HomePage/sections/Contact.tsx b/src/pages/HomePage/sections/Contact.tsx new file mode 100644 index 0000000..c4ff23b --- /dev/null +++ b/src/pages/HomePage/sections/Contact.tsx @@ -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 ( +
+ + + +
+ ); +} diff --git a/src/pages/HomePage/sections/Faq.tsx b/src/pages/HomePage/sections/Faq.tsx new file mode 100644 index 0000000..4295796 --- /dev/null +++ b/src/pages/HomePage/sections/Faq.tsx @@ -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 ( +
+ + + +
+ ); +} diff --git a/src/pages/HomePage/sections/Hero.tsx b/src/pages/HomePage/sections/Hero.tsx new file mode 100644 index 0000000..9570991 --- /dev/null +++ b/src/pages/HomePage/sections/Hero.tsx @@ -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 ( +
+ + + +
+ ); +} diff --git a/src/pages/HomePage/sections/Metrics.tsx b/src/pages/HomePage/sections/Metrics.tsx new file mode 100644 index 0000000..05a7234 --- /dev/null +++ b/src/pages/HomePage/sections/Metrics.tsx @@ -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 ( +
+ + + +
+ ); +} diff --git a/src/pages/HomePage/sections/Projects.tsx b/src/pages/HomePage/sections/Projects.tsx new file mode 100644 index 0000000..a9f6af6 --- /dev/null +++ b/src/pages/HomePage/sections/Projects.tsx @@ -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 ( +
+ + + +
+ ); +} diff --git a/src/pages/HomePage/sections/Services.tsx b/src/pages/HomePage/sections/Services.tsx new file mode 100644 index 0000000..d58b467 --- /dev/null +++ b/src/pages/HomePage/sections/Services.tsx @@ -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 ( +
+ + + +
+ ); +} diff --git a/src/pages/HomePage/sections/Testimonials.tsx b/src/pages/HomePage/sections/Testimonials.tsx new file mode 100644 index 0000000..eb1b7ab --- /dev/null +++ b/src/pages/HomePage/sections/Testimonials.tsx @@ -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 ( +
+ + + +
+ ); +}