Merge version_2_1781440967289 into main

Merge version_2_1781440967289 into main
This commit was merged in pull request #5.
This commit is contained in:
2026-06-14 12:44:20 +00:00
11 changed files with 239 additions and 146 deletions

View File

@@ -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: "#" },

View File

@@ -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;

View File

@@ -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 />
</>
);
}

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 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>
);
}

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 "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>
);
}

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 "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>
);
}

View 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>
);
}

View 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>
);
}

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 "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>
);
}

View 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>
);
}

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 "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>
);
}