Bob AI: Update theme to red/blue and rewrite hero/services for Tende
This commit is contained in:
@@ -21,7 +21,7 @@ export default function Layout() {
|
||||
<SiteBackgroundSlot />
|
||||
<SectionErrorBoundary name="navbar">
|
||||
<NavbarFloatingLogo
|
||||
logo="KTP Chemicals"
|
||||
logo="Tender 18"
|
||||
logoImageSrc="https://storage.googleapis.com/webild/default/no-image.jpg?id=b6wad9"
|
||||
ctaButton={{
|
||||
text: "Get Quote", href: "#contact"}}
|
||||
@@ -32,8 +32,8 @@ export default function Layout() {
|
||||
</main>
|
||||
<SectionErrorBoundary name="footer">
|
||||
<FooterMinimal
|
||||
brand="KTP Chemicals © 2024"
|
||||
copyright="All rights reserved. Dedicated to high-performance chemical solutions."
|
||||
brand="Tender 18 © 2024"
|
||||
copyright="All rights reserved. Dedicated to government tender support services."
|
||||
socialLinks={[
|
||||
{ icon: "Linkedin", href: "#" },
|
||||
{ icon: "Twitter", href: "#" },
|
||||
|
||||
@@ -5,15 +5,15 @@
|
||||
|
||||
:root {
|
||||
/* @colorThemes/lightTheme/grayNavyBlue */
|
||||
--background: #f5faff;
|
||||
--background: #f8fafc;
|
||||
--card: #ffffff;
|
||||
--foreground: #001122;
|
||||
--primary-cta: #15479c;
|
||||
--foreground: #0f172a;
|
||||
--primary-cta: #dc2626;
|
||||
--primary-cta-text: #f5faff;
|
||||
--secondary-cta: #ffffff;
|
||||
--secondary-cta-text: #001122;
|
||||
--accent: #a8cce8;
|
||||
--background-accent: #7ba3cf;
|
||||
--secondary-cta-text: #0f172a;
|
||||
--accent: #fca5a5;
|
||||
--background-accent: #ef4444;
|
||||
|
||||
/* @layout/border-radius/rounded */
|
||||
--radius: 1.5rem;
|
||||
|
||||
@@ -1,149 +1,36 @@
|
||||
import AboutTextSplit from '@/components/sections/about/AboutTextSplit';
|
||||
import ContactCta from '@/components/sections/contact/ContactCta';
|
||||
import FaqSplitMedia from '@/components/sections/faq/FaqSplitMedia';
|
||||
import FeaturesImageBento from '@/components/sections/features/FeaturesImageBento';
|
||||
import FeaturesMediaCards from '@/components/sections/features/FeaturesMediaCards';
|
||||
import HeroBillboardCarousel from '@/components/sections/hero/HeroBillboardCarousel';
|
||||
import MetricsFeatureCards from '@/components/sections/metrics/MetricsFeatureCards';
|
||||
import TestimonialMarqueeOverlayCards from '@/components/sections/testimonial/TestimonialMarqueeOverlayCards';
|
||||
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 ProductsSection from './HomePage/sections/Products';
|
||||
import SafetySection from './HomePage/sections/Safety';
|
||||
import MetricsSection from './HomePage/sections/Metrics';
|
||||
import TestimonialsSection from './HomePage/sections/Testimonials';
|
||||
import FaqSection from './HomePage/sections/Faq';
|
||||
import ContactSection from './HomePage/sections/Contact';
|
||||
|
||||
export default function HomePage(): React.JSX.Element {
|
||||
return (
|
||||
<>
|
||||
<div id="hero" data-section="hero">
|
||||
<SectionErrorBoundary name="hero">
|
||||
<HeroBillboardCarousel
|
||||
tag="Chemical Innovation"
|
||||
title="Empowering Industry Through Chemistry"
|
||||
description="Leading manufacturer and global supplier of high-purity chemical solutions for research, manufacturing, and industrial sectors."
|
||||
primaryButton={{
|
||||
text: "Browse Products", href: "#products"}}
|
||||
secondaryButton={{
|
||||
text: "Contact Sales", href: "#contact"}}
|
||||
items={[
|
||||
{ imageSrc: "http://img.b2bpic.net/free-photo/modern-winery-with-big-steel-barrels_657883-407.jpg" },
|
||||
{ imageSrc: "http://img.b2bpic.net/free-photo/entrance-stairs_1127-2032.jpg" },
|
||||
{ imageSrc: "http://img.b2bpic.net/free-photo/petri-dish-with-dropper-blue-background_23-2148958376.jpg" },
|
||||
{ imageSrc: "http://img.b2bpic.net/free-photo/biohazard-sign-ai-generated_268835-18721.jpg" },
|
||||
{ imageSrc: "http://img.b2bpic.net/free-photo/two-doctors-pointing-alarm-clock-protective-suit_176474-23954.jpg" },
|
||||
{ imageSrc: "http://img.b2bpic.net/free-photo/steel-pipelines-cables-plant_1359-188.jpg" },
|
||||
]}
|
||||
/>
|
||||
</SectionErrorBoundary>
|
||||
</div>
|
||||
<>
|
||||
<HeroSection />
|
||||
|
||||
<div id="about" data-section="about">
|
||||
<SectionErrorBoundary name="about">
|
||||
<AboutTextSplit
|
||||
title="Delivering Excellence Since 1995"
|
||||
descriptions={[
|
||||
"KTP Chemicals stands at the forefront of chemical innovation, combining decades of expertise with cutting-edge manufacturing processes. Our commitment to purity and quality control ensures that our clients receive the best materials for their critical applications.", "Operating on a global scale, we prioritize safety, sustainability, and reliability. Our facilities adhere to the highest international standards, making us the preferred partner for research and large-scale manufacturing alike."]}
|
||||
primaryButton={{
|
||||
text: "Our Mission", href: "#about"}}
|
||||
/>
|
||||
</SectionErrorBoundary>
|
||||
</div>
|
||||
<AboutSection />
|
||||
|
||||
<div id="products" data-section="products">
|
||||
<SectionErrorBoundary name="products">
|
||||
<FeaturesImageBento
|
||||
tag="Our Catalog"
|
||||
title="Specialty Chemical Products"
|
||||
description="Browse our curated collection of industrial-grade chemical components."
|
||||
items={[
|
||||
{ title: "High Purity Solvents", description: "Precision solvents for labs.", imageSrc: "http://img.b2bpic.net/free-photo/horizontal-science-banner-with-glass-containers_23-2149495043.jpg" },
|
||||
{ title: "Analytical Reagents", description: "Lab-grade reliable test agents.", imageSrc: "http://img.b2bpic.net/free-photo/researching-laboratory_1384-140.jpg" },
|
||||
{ title: "Advanced Polymers", description: "High performance plastic materials.", imageSrc: "http://img.b2bpic.net/free-photo/professional-technologist-expert-protective-white-uniform-with-hairnet-mask-gloves-holding-both-thumbs-up_342744-1181.jpg" },
|
||||
{ title: "Industrial Dyes", description: "Concentrated colorant solutions.", imageSrc: "http://img.b2bpic.net/free-photo/blue-ink-dissolved-water-inside-glass-against-white-background_23-2147948915.jpg" },
|
||||
{ title: "Organic Mixtures", description: "Customizable blend formulas.", imageSrc: "http://img.b2bpic.net/free-photo/researching-laboratory_1384-68.jpg" },
|
||||
{ title: "Chemical Catalysts", description: "Boost process efficiency.", imageSrc: "http://img.b2bpic.net/free-photo/laboratory-supplies-medical-work_23-2149744754.jpg" },
|
||||
{ title: "Raw Bulk Materials", description: "Large scale supply ready.", imageSrc: "http://img.b2bpic.net/free-photo/many-metal-kegs-beer_1398-2530.jpg" },
|
||||
]}
|
||||
/>
|
||||
</SectionErrorBoundary>
|
||||
</div>
|
||||
<ProductsSection />
|
||||
|
||||
<div id="safety" data-section="safety">
|
||||
<SectionErrorBoundary name="safety">
|
||||
<FeaturesMediaCards
|
||||
tag="Safety Commitment"
|
||||
title="Safety & Quality First"
|
||||
description="We treat environmental stewardship and safety standards as our highest priority."
|
||||
items={[
|
||||
{ title: "ISO Certified", description: "Strict compliance with international standards.", imageSrc: "http://img.b2bpic.net/free-photo/closeup-shot-tube-inside-erlenmeyer-beaker_181624-38705.jpg" },
|
||||
{ title: "Sustainability", description: "Eco-friendly manufacturing processes for zero waste.", imageSrc: "http://img.b2bpic.net/free-photo/colourful-chemicals-composition-lab_23-2148697211.jpg" },
|
||||
{ title: "Safety First", description: "Rigorous internal safety audits and protocols.", imageSrc: "http://img.b2bpic.net/free-photo/close-up-perforated-fabric_23-2149894479.jpg" },
|
||||
]}
|
||||
/>
|
||||
</SectionErrorBoundary>
|
||||
</div>
|
||||
<SafetySection />
|
||||
|
||||
<div id="metrics" data-section="metrics">
|
||||
<SectionErrorBoundary name="metrics">
|
||||
<MetricsFeatureCards
|
||||
tag="Our Impact"
|
||||
title="Global Chemical Presence"
|
||||
description="Reliable supply chain and technical expertise that drives our industry forward."
|
||||
metrics={[
|
||||
{
|
||||
value: "25+", title: "Years Experience", features: ["Proven legacy", "Trusted expertise", "Market leaders"],
|
||||
},
|
||||
{
|
||||
value: "1500+", title: "Active Products", features: ["Wide selection", "High purity", "Stock ready"],
|
||||
},
|
||||
{
|
||||
value: "99.9%", title: "Product Purity", features: ["Analytical tests", "Strict control", "Consistent results"],
|
||||
},
|
||||
]}
|
||||
/>
|
||||
</SectionErrorBoundary>
|
||||
</div>
|
||||
<MetricsSection />
|
||||
|
||||
<div id="testimonials" data-section="testimonials">
|
||||
<SectionErrorBoundary name="testimonials">
|
||||
<TestimonialMarqueeOverlayCards
|
||||
tag="Client Success"
|
||||
title="Trusted by Leaders"
|
||||
description="Our long-term partners trust us to deliver consistent results time after time."
|
||||
testimonials={[
|
||||
{ name: "Sarah Miller", role: "Lead Scientist", company: "Global Pharma Inc.", rating: 5, imageSrc: "http://img.b2bpic.net/free-photo/scientist-man-with-thumb-up_1368-4730.jpg" },
|
||||
{ name: "David Chen", role: "Operations Dir", company: "Techno-Manufacturing", rating: 5, imageSrc: "http://img.b2bpic.net/free-photo/confident-businessman_1098-16876.jpg" },
|
||||
{ name: "Jessica Lee", role: "Head Researcher", company: "InnovateChem Lab", rating: 5, imageSrc: "http://img.b2bpic.net/free-photo/medium-shot-doctor-wearing-lab-coat_23-2149551158.jpg" },
|
||||
{ name: "Robert Evans", role: "Plant Manager", company: "Industrial Solutions", rating: 5, imageSrc: "http://img.b2bpic.net/free-photo/solar-panels-manufacturing-factory-specialist-explains-production-process_482257-118103.jpg" },
|
||||
{ name: "Amanda Ross", role: "Procurement Head", company: "Global Trade Chem", rating: 5, imageSrc: "http://img.b2bpic.net/free-photo/smiling-senior-engineer-solar-panels-plant-reading-documentation_482257-120499.jpg" },
|
||||
]}
|
||||
/>
|
||||
</SectionErrorBoundary>
|
||||
</div>
|
||||
<TestimonialsSection />
|
||||
|
||||
<div id="faq" data-section="faq">
|
||||
<SectionErrorBoundary name="faq">
|
||||
<FaqSplitMedia
|
||||
tag="Common Queries"
|
||||
title="Frequently Asked Questions"
|
||||
description="Have questions about our manufacturing or supply chain capabilities? Here are the most common ones."
|
||||
items={[
|
||||
{ question: "What is your typical turnaround time?", answer: "Most bulk orders are processed and shipped within 3-5 business days." },
|
||||
{ question: "Are your materials ISO certified?", answer: "Yes, we adhere to all ISO manufacturing and safety standards." },
|
||||
{ question: "Can I request custom formulations?", answer: "Absolutely, our technical team works with you to design specific blend formulas." },
|
||||
{ question: "What are your shipping regions?", answer: "We provide global shipping to over 50 countries worldwide." },
|
||||
]}
|
||||
imageSrc="http://img.b2bpic.net/free-photo/vertical-shot-four-yellow-metallic-silos-with-blue-sky_181624-5116.jpg"
|
||||
/>
|
||||
</SectionErrorBoundary>
|
||||
</div>
|
||||
<FaqSection />
|
||||
|
||||
<div id="contact" data-section="contact">
|
||||
<SectionErrorBoundary name="contact">
|
||||
<ContactCta
|
||||
tag="Get Started"
|
||||
text="Partner with a world-class chemical supplier for your business requirements."
|
||||
primaryButton={{ text: "Contact Support", href: "mailto:info@ktpchemicals.com" }}
|
||||
secondaryButton={{ text: "Inquiry Form", href: "#contact-form" }}
|
||||
/>
|
||||
</SectionErrorBoundary>
|
||||
</div>
|
||||
<ContactSection />
|
||||
</>
|
||||
);
|
||||
}
|
||||
|
||||
22
src/pages/HomePage/sections/About.tsx
Normal file
22
src/pages/HomePage/sections/About.tsx
Normal 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 AboutTextSplit from '@/components/sections/about/AboutTextSplit';
|
||||
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
|
||||
|
||||
export default function AboutSection(): React.JSX.Element {
|
||||
return (
|
||||
<div id="about" data-section="about">
|
||||
<SectionErrorBoundary name="about">
|
||||
<AboutTextSplit
|
||||
title="Delivering Excellence Since 1995"
|
||||
descriptions={[
|
||||
"KTP Chemicals stands at the forefront of chemical innovation, combining decades of expertise with cutting-edge manufacturing processes. Our commitment to purity and quality control ensures that our clients receive the best materials for their critical applications.", "Operating on a global scale, we prioritize safety, sustainability, and reliability. Our facilities adhere to the highest international standards, making us the preferred partner for research and large-scale manufacturing alike."]}
|
||||
primaryButton={{
|
||||
text: "Our Mission", href: "#about"}}
|
||||
/>
|
||||
</SectionErrorBoundary>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
21
src/pages/HomePage/sections/Contact.tsx
Normal file
21
src/pages/HomePage/sections/Contact.tsx
Normal file
@@ -0,0 +1,21 @@
|
||||
// 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="Get Started"
|
||||
text="Partner with a world-class chemical supplier for your business requirements."
|
||||
primaryButton={{ text: "Contact Support", href: "mailto:info@ktpchemicals.com" }}
|
||||
secondaryButton={{ text: "Inquiry Form", href: "#contact-form" }}
|
||||
/>
|
||||
</SectionErrorBoundary>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
27
src/pages/HomePage/sections/Faq.tsx
Normal file
27
src/pages/HomePage/sections/Faq.tsx
Normal file
@@ -0,0 +1,27 @@
|
||||
// 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 FaqSplitMedia from '@/components/sections/faq/FaqSplitMedia';
|
||||
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
|
||||
|
||||
export default function FaqSection(): React.JSX.Element {
|
||||
return (
|
||||
<div id="faq" data-section="faq">
|
||||
<SectionErrorBoundary name="faq">
|
||||
<FaqSplitMedia
|
||||
tag="Common Queries"
|
||||
title="Frequently Asked Questions"
|
||||
description="Have questions about our manufacturing or supply chain capabilities? Here are the most common ones."
|
||||
items={[
|
||||
{ question: "What is your typical turnaround time?", answer: "Most bulk orders are processed and shipped within 3-5 business days." },
|
||||
{ question: "Are your materials ISO certified?", answer: "Yes, we adhere to all ISO manufacturing and safety standards." },
|
||||
{ question: "Can I request custom formulations?", answer: "Absolutely, our technical team works with you to design specific blend formulas." },
|
||||
{ question: "What are your shipping regions?", answer: "We provide global shipping to over 50 countries worldwide." },
|
||||
]}
|
||||
imageSrc="http://img.b2bpic.net/free-photo/vertical-shot-four-yellow-metallic-silos-with-blue-sky_181624-5116.jpg"
|
||||
/>
|
||||
</SectionErrorBoundary>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
32
src/pages/HomePage/sections/Hero.tsx
Normal file
32
src/pages/HomePage/sections/Hero.tsx
Normal file
@@ -0,0 +1,32 @@
|
||||
// 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 HeroBillboardCarousel from '@/components/sections/hero/HeroBillboardCarousel';
|
||||
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
|
||||
|
||||
export default function HeroSection(): React.JSX.Element {
|
||||
return (
|
||||
<div id="hero" data-section="hero">
|
||||
<SectionErrorBoundary name="hero">
|
||||
<HeroBillboardCarousel
|
||||
tag="Government Tender Consultancy"
|
||||
title="Expert Support for Government Tenders"
|
||||
description="We provide comprehensive support services for government tenders, including tender information, bidding assistance, product/service uploading, and training."
|
||||
primaryButton={{
|
||||
text: "Browse Products", href: "#products"}}
|
||||
secondaryButton={{
|
||||
text: "Contact Sales", href: "#contact"}}
|
||||
items={[
|
||||
{ imageSrc: "http://img.b2bpic.net/free-photo/modern-winery-with-big-steel-barrels_657883-407.jpg" },
|
||||
{ imageSrc: "http://img.b2bpic.net/free-photo/entrance-stairs_1127-2032.jpg" },
|
||||
{ imageSrc: "http://img.b2bpic.net/free-photo/petri-dish-with-dropper-blue-background_23-2148958376.jpg" },
|
||||
{ imageSrc: "http://img.b2bpic.net/free-photo/biohazard-sign-ai-generated_268835-18721.jpg" },
|
||||
{ imageSrc: "http://img.b2bpic.net/free-photo/two-doctors-pointing-alarm-clock-protective-suit_176474-23954.jpg" },
|
||||
{ imageSrc: "http://img.b2bpic.net/free-photo/steel-pipelines-cables-plant_1359-188.jpg" },
|
||||
]}
|
||||
/>
|
||||
</SectionErrorBoundary>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
31
src/pages/HomePage/sections/Metrics.tsx
Normal file
31
src/pages/HomePage/sections/Metrics.tsx
Normal file
@@ -0,0 +1,31 @@
|
||||
// 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 MetricsFeatureCards from '@/components/sections/metrics/MetricsFeatureCards';
|
||||
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
|
||||
|
||||
export default function MetricsSection(): React.JSX.Element {
|
||||
return (
|
||||
<div id="metrics" data-section="metrics">
|
||||
<SectionErrorBoundary name="metrics">
|
||||
<MetricsFeatureCards
|
||||
tag="Our Impact"
|
||||
title="Global Chemical Presence"
|
||||
description="Reliable supply chain and technical expertise that drives our industry forward."
|
||||
metrics={[
|
||||
{
|
||||
value: "25+", title: "Years Experience", features: ["Proven legacy", "Trusted expertise", "Market leaders"],
|
||||
},
|
||||
{
|
||||
value: "1500+", title: "Active Products", features: ["Wide selection", "High purity", "Stock ready"],
|
||||
},
|
||||
{
|
||||
value: "99.9%", title: "Product Purity", features: ["Analytical tests", "Strict control", "Consistent results"],
|
||||
},
|
||||
]}
|
||||
/>
|
||||
</SectionErrorBoundary>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
21
src/pages/HomePage/sections/Products.tsx
Normal file
21
src/pages/HomePage/sections/Products.tsx
Normal file
@@ -0,0 +1,21 @@
|
||||
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
|
||||
// file as the canonical source for the "products" section.
|
||||
|
||||
import React from 'react';
|
||||
import FeaturesImageBento from '@/components/sections/features/FeaturesImageBento';
|
||||
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
|
||||
|
||||
export default function ProductsSection(): React.JSX.Element {
|
||||
return (
|
||||
<div id="products" data-section="products">
|
||||
<SectionErrorBoundary name="products">
|
||||
<FeaturesImageBento
|
||||
tag="Our Services"
|
||||
title="Tender Support Services"
|
||||
description="Explore our comprehensive range of services designed to help you succeed in government tendering."
|
||||
items={[{"title":"Tender Information","imageSrc":"http://img.b2bpic.net/free-photo/modern-winery-with-big-steel-barrels_657883-407.jpg","description":"Get timely and accurate information on relevant government tenders."},{"imageSrc":"http://img.b2bpic.net/free-photo/entrance-stairs_1127-2032.jpg","title":"Bidding Assistance","description":"Expert assistance in preparing and submitting winning bids."},{"imageSrc":"http://img.b2bpic.net/free-photo/petri-dish-with-dropper-blue-background_23-2148958376.jpg","title":"Product/Service Uploading","description":"Seamless uploading of your products and services to government portals."},{"description":"Comprehensive training programs to empower your team.","imageSrc":"http://img.b2bpic.net/free-photo/biohazard-sign-ai-generated_268835-18721.jpg","title":"Training Services"},{"description":"End-to-end support throughout the tender lifecycle.","title":"End-to-End Support","imageSrc":"http://img.b2bpic.net/free-photo/two-doctors-pointing-alarm-clock-protective-suit_176474-23954.jpg"},{"title":"Strategic Consulting","imageSrc":"http://img.b2bpic.net/free-photo/steel-pipelines-cables-plant_1359-188.jpg","description":"Strategic advice to improve your chances of winning."},{"description":"Assistance with tender-related documentation and compliance.","imageSrc":"http://img.b2bpic.net/free-photo/horizontal-science-banner-with-glass-containers_23-2149495043.jpg","title":"Documentation Support"}]}
|
||||
/>
|
||||
</SectionErrorBoundary>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
25
src/pages/HomePage/sections/Safety.tsx
Normal file
25
src/pages/HomePage/sections/Safety.tsx
Normal file
@@ -0,0 +1,25 @@
|
||||
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
|
||||
// file as the canonical source for the "safety" section.
|
||||
|
||||
import React from 'react';
|
||||
import FeaturesMediaCards from '@/components/sections/features/FeaturesMediaCards';
|
||||
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
|
||||
|
||||
export default function SafetySection(): React.JSX.Element {
|
||||
return (
|
||||
<div id="safety" data-section="safety">
|
||||
<SectionErrorBoundary name="safety">
|
||||
<FeaturesMediaCards
|
||||
tag="Safety Commitment"
|
||||
title="Safety & Quality First"
|
||||
description="We treat environmental stewardship and safety standards as our highest priority."
|
||||
items={[
|
||||
{ title: "ISO Certified", description: "Strict compliance with international standards.", imageSrc: "http://img.b2bpic.net/free-photo/closeup-shot-tube-inside-erlenmeyer-beaker_181624-38705.jpg" },
|
||||
{ title: "Sustainability", description: "Eco-friendly manufacturing processes for zero waste.", imageSrc: "http://img.b2bpic.net/free-photo/colourful-chemicals-composition-lab_23-2148697211.jpg" },
|
||||
{ title: "Safety First", description: "Rigorous internal safety audits and protocols.", imageSrc: "http://img.b2bpic.net/free-photo/close-up-perforated-fabric_23-2149894479.jpg" },
|
||||
]}
|
||||
/>
|
||||
</SectionErrorBoundary>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
27
src/pages/HomePage/sections/Testimonials.tsx
Normal file
27
src/pages/HomePage/sections/Testimonials.tsx
Normal file
@@ -0,0 +1,27 @@
|
||||
// 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 TestimonialMarqueeOverlayCards from '@/components/sections/testimonial/TestimonialMarqueeOverlayCards';
|
||||
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
|
||||
|
||||
export default function TestimonialsSection(): React.JSX.Element {
|
||||
return (
|
||||
<div id="testimonials" data-section="testimonials">
|
||||
<SectionErrorBoundary name="testimonials">
|
||||
<TestimonialMarqueeOverlayCards
|
||||
tag="Client Success"
|
||||
title="Trusted by Leaders"
|
||||
description="Our long-term partners trust us to deliver consistent results time after time."
|
||||
testimonials={[
|
||||
{ name: "Sarah Miller", role: "Lead Scientist", company: "Global Pharma Inc.", rating: 5, imageSrc: "http://img.b2bpic.net/free-photo/scientist-man-with-thumb-up_1368-4730.jpg" },
|
||||
{ name: "David Chen", role: "Operations Dir", company: "Techno-Manufacturing", rating: 5, imageSrc: "http://img.b2bpic.net/free-photo/confident-businessman_1098-16876.jpg" },
|
||||
{ name: "Jessica Lee", role: "Head Researcher", company: "InnovateChem Lab", rating: 5, imageSrc: "http://img.b2bpic.net/free-photo/medium-shot-doctor-wearing-lab-coat_23-2149551158.jpg" },
|
||||
{ name: "Robert Evans", role: "Plant Manager", company: "Industrial Solutions", rating: 5, imageSrc: "http://img.b2bpic.net/free-photo/solar-panels-manufacturing-factory-specialist-explains-production-process_482257-118103.jpg" },
|
||||
{ name: "Amanda Ross", role: "Procurement Head", company: "Global Trade Chem", rating: 5, imageSrc: "http://img.b2bpic.net/free-photo/smiling-senior-engineer-solar-panels-plant-reading-documentation_482257-120499.jpg" },
|
||||
]}
|
||||
/>
|
||||
</SectionErrorBoundary>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user