Compare commits

...

31 Commits

Author SHA1 Message Date
ebb6c526ec Update src/app/page.tsx 2026-05-15 06:44:58 +00:00
e7299a15c2 Update src/app/page.tsx 2026-05-15 06:44:25 +00:00
60d071ff7f Merge version_34 into main
Merge version_34 into main
2026-05-15 06:39:46 +00:00
7d9137c82a Update src/app/page.tsx 2026-05-15 06:39:43 +00:00
441b0a65ac Merge version_34 into main
Merge version_34 into main
2026-05-15 06:39:10 +00:00
e9c0f8b6ea Update src/app/page.tsx 2026-05-15 06:39:06 +00:00
ec04c8ee82 Merge version_34 into main
Merge version_34 into main
2026-05-15 06:38:30 +00:00
80a2dafc27 Update src/app/page.tsx 2026-05-15 06:38:23 +00:00
3f9b40cc02 Merge version_33 into main
Merge version_33 into main
2026-05-15 06:34:43 +00:00
eac80812ee Update src/app/page.tsx 2026-05-15 06:34:40 +00:00
242003ca3c Merge version_32 into main
Merge version_32 into main
2026-05-15 06:27:54 +00:00
761338fe06 Update src/app/page.tsx 2026-05-15 06:27:48 +00:00
1baf54d7b5 Merge version_31 into main
Merge version_31 into main
2026-05-15 06:19:02 +00:00
1a65c0cea4 Update src/app/page.tsx 2026-05-15 06:18:56 +00:00
c4766acd40 Merge version_30 into main
Merge version_30 into main
2026-05-15 06:17:24 +00:00
47e9767a50 Update src/app/page.tsx 2026-05-15 06:17:21 +00:00
ae62d885a7 Merge version_29 into main
Merge version_29 into main
2026-05-15 06:16:15 +00:00
ab161d983b Update src/app/page.tsx 2026-05-15 06:16:08 +00:00
8264fd3277 Merge version_28 into main
Merge version_28 into main
2026-05-15 06:15:04 +00:00
2fcc670745 Update src/app/page.tsx 2026-05-15 06:15:01 +00:00
6a06e71bd3 Merge version_27 into main
Merge version_27 into main
2026-05-15 06:13:13 +00:00
4eb11b0f39 Update src/app/page.tsx 2026-05-15 06:13:07 +00:00
2e376006db Merge version_26 into main
Merge version_26 into main
2026-05-15 06:11:15 +00:00
949c284f12 Update src/app/page.tsx 2026-05-15 06:11:12 +00:00
86a9234b08 Merge version_25 into main
Merge version_25 into main
2026-05-15 06:10:04 +00:00
814c75c3ad Update src/app/page.tsx 2026-05-15 06:10:01 +00:00
b8180b2000 Merge version_24 into main
Merge version_24 into main
2026-05-15 06:09:01 +00:00
4ef8f319ee Update src/app/page.tsx 2026-05-15 06:08:58 +00:00
c91a75d372 Merge version_23 into main
Merge version_23 into main
2026-05-15 06:08:03 +00:00
ea978abc34 Update src/app/page.tsx 2026-05-15 06:07:57 +00:00
29187cd4e7 Merge version_22 into main
Merge version_22 into main
2026-05-15 06:06:50 +00:00

View File

@@ -3,17 +3,24 @@
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider"; import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react"; import ReactLenis from "lenis/react";
import AboutMetric from '@/components/sections/about/AboutMetric'; import AboutMetric from '@/components/sections/about/AboutMetric';
import ContactCenter from '@/components/sections/contact/ContactCenter'; import ContactText from '@/components/sections/contact/ContactText';
import FeatureCardOne from '@/components/sections/feature/FeatureCardOne'; import FeatureCardOne from '@/components/sections/feature/FeatureCardOne';
import FooterLogoEmphasis from '@/components/sections/footer/FooterLogoEmphasis'; import FooterLogoReveal from '@/components/sections/footer/FooterLogoReveal';
import HeroBillboard from '@/components/sections/hero/HeroBillboard'; import HeroBillboardCarousel from '@/components/sections/hero/HeroBillboardCarousel';
import MetricCardTwo from '@/components/sections/metrics/MetricCardTwo'; import MetricCardTwo from '@/components/sections/metrics/MetricCardTwo';
import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered'; import NavbarStyleFullscreen from '@/components/navbar/NavbarStyleFullscreen/NavbarStyleFullscreen';
import ProductCardOne from '@/components/sections/product/ProductCardOne'; import ProductCardOne from '@/components/sections/product/ProductCardOne';
import TestimonialCardTwelve from '@/components/sections/testimonial/TestimonialCardTwelve'; import TestimonialCardOne from '@/components/sections/testimonial/TestimonialCardOne';
import { Award, ShieldCheck, Users } from "lucide-react"; import { Award, ShieldCheck, Users } from "lucide-react";
export default function LandingPage() { export default function LandingPage() {
const handleProductClick = () => {
const contactSection = document.getElementById('contact');
if (contactSection) {
contactSection.scrollIntoView({ behavior: 'smooth' });
}
};
return ( return (
<ThemeProvider <ThemeProvider
defaultButtonVariant="hover-bubble" defaultButtonVariant="hover-bubble"
@@ -29,25 +36,27 @@ export default function LandingPage() {
> >
<ReactLenis root> <ReactLenis root>
<div id="nav" data-section="nav"> <div id="nav" data-section="nav">
<NavbarStyleCentered <NavbarStyleFullscreen
navItems={[ navItems={[
{ name: "Accueil", id: "#hero" }, { name: "Accueil", id: "#hero" },
{ name: "Produits", id: "#products" }, { name: "Produits", id: "#products" },
{ name: "À Propos", id: "#about" }, { name: "À Propos", id: "#about" },
{ name: "Contact", id: "#contact" }, { name: "Contact", id: "#contact" },
{ name: "Mon Panier", id: "#cart" },
]} ]}
brandName="SAE Réunion" brandName="SAE Réunion"
/> />
</div> </div>
<div id="hero" data-section="hero"> <div id="hero" data-section="hero">
<HeroBillboard <HeroBillboardCarousel
title="Expertise en EPI pour les Professionnels de la Réunion" title="Expertise en EPI pour les Professionnels de la Réunion"
description="Assurez une sécurité immédiate pour les professionnels de l'île de La Réunion. description="Bénéficiez de notre expertise locale unique et de nos délais de livraison ultra-rapides. Contrairement aux fournisseurs généralistes, nous garantissons une disponibilité immédiate et un accompagnement technique de proximité pour sécuriser vos chantiers réunionnais sans attente."
Nos solutions d'EPI certifiées protègent vos collaborateurs et assurent la conformité totale de vos chantiers."
buttons={[{ text: "Obtenir un devis rapide", href: "#contact" }]} buttons={[{ text: "Obtenir un devis rapide", href: "#contact" }]}
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Df1ETXUvuyYPxkhnyZJKVSXGQj/chantier-1778660616866-4fd2157e.png" mediaItems={[
imageAlt="Chantier de construction avec un professionnel en équipement de sécurité" { imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Df1ETXUvuyYPxkhnyZJKVSXGQj/chantier-1778660616866-4fd2157e.png", imageAlt: "Chantier de construction" },
{ imageSrc: "http://img.b2bpic.net/free-photo/warehouse-worker-checking-inventory_23-2152001550.jpg?_wi=1", imageAlt: "Entrepôt logistique" }
]}
background={{ variant: "plain" }} background={{ variant: "plain" }}
/> />
</div> </div>
@@ -55,7 +64,7 @@ Nos solutions d'EPI certifiées protègent vos collaborateurs et assurent la con
<div id="about" data-section="about"> <div id="about" data-section="about">
<AboutMetric <AboutMetric
useInvertedBackground={true} useInvertedBackground={true}
title="Le spécialiste de l'EPI depuis 1996" title="30 ans au service de votre sécurité à La Réunion"
metrics={[ metrics={[
{ icon: Award, label: "Années d'expertise", value: "30+" }, { icon: Award, label: "Années d'expertise", value: "30+" },
{ icon: ShieldCheck, label: "Produits certifiés", value: "1000+" }, { icon: ShieldCheck, label: "Produits certifiés", value: "1000+" },
@@ -73,16 +82,16 @@ Nos solutions d'EPI certifiées protègent vos collaborateurs et assurent la con
useInvertedBackground={false} useInvertedBackground={false}
tag="Certifié & Conforme" tag="Certifié & Conforme"
products={[ products={[
{ id: "p1", name: "Gants de Manutention", price: "12€", imageSrc: "http://img.b2bpic.net/free-photo/top-view-safety-gloves-vest_23-2148784084.jpg", onProductClick: () => window.location.href = '#contact' }, { id: "p1", name: "Gants de Manutention", price: "12€", imageSrc: "http://img.b2bpic.net/free-photo/top-view-safety-gloves-vest_23-2148784084.jpg", onProductClick: handleProductClick },
{ id: "p2", name: "Chaussures de Sécurité", price: "89€", imageSrc: "http://img.b2bpic.net/free-photo/unrecognizable-manual-worker-typing-shoelace-construction-site_637285-8190.jpg", onProductClick: () => window.location.href = '#contact' }, { id: "p2", name: "Chaussures de Sécurité", price: "89€", imageSrc: "http://img.b2bpic.net/free-photo/unrecognizable-manual-worker-typing-shoelace-construction-site_637285-8190.jpg", onProductClick: handleProductClick },
{ id: "p3", name: "Lunettes de Protection", price: "15€", imageSrc: "http://img.b2bpic.net/free-photo/man-wearing-protection-equipment-close-up_23-2148921397.jpg" }, { id: "p3", name: "Lunettes de Protection", price: "15€", imageSrc: "http://img.b2bpic.net/free-photo/man-wearing-protection-equipment-close-up_23-2148921397.jpg", onProductClick: handleProductClick },
{ id: "p4", name: "Vêtements Haute Visibilité", price: "45€", imageSrc: "http://img.b2bpic.net/free-photo/engineer-oversees-assembly-tools-tablet-industry-plant-surrounded-by-metal-steel-machinery_482257-135546.jpg" }, { id: "p4", name: "Vêtements Haute Visibilité", price: "45€", imageSrc: "http://img.b2bpic.net/free-photo/engineer-oversees-assembly-tools-tablet-industry-plant-surrounded-by-metal-steel-machinery_482257-135546.jpg", onProductClick: handleProductClick },
{ id: "p5", name: "Protection Respiratoire", price: "29€", imageSrc: "http://img.b2bpic.net/free-photo/man-with-gas-mask_1122-1288.jpg" }, { id: "p5", name: "Protection Respiratoire", price: "29€", imageSrc: "http://img.b2bpic.net/free-photo/man-with-gas-mask_1122-1288.jpg", onProductClick: handleProductClick },
{ id: "p6", name: "Casque Anti-bruit", price: "35€", imageSrc: "http://img.b2bpic.net/free-photo/man-builder-carpenter-polishes-wooden-board-with-random-orbit-sander_23-2147944854.jpg" }, { id: "p6", name: "Casque Anti-bruit", price: "35€", imageSrc: "http://img.b2bpic.net/free-photo/man-builder-carpenter-polishes-wooden-board-with-random-orbit-sander_23-2147944854.jpg", onProductClick: handleProductClick },
]} ]}
title="Gamme complète d'EPI" title="Gamme complète d'EPI"
description="" description="Nos équipements sont rigoureusement sélectionnés pour offrir une protection maximale aux professionnels du bâtiment, résistant aux conditions les plus exigeantes sur le terrain pour garantir une sécurité sans compromis."
buttons={[{ text: "Voir le catalogue complet", href: "#catalog" }]} buttons={[{ text: "Demander un devis personnalisé", href: "#contact" }]}
/> />
</div> </div>
@@ -93,7 +102,7 @@ Nos solutions d'EPI certifiées protègent vos collaborateurs et assurent la con
gridVariant="three-columns-all-equal-width" gridVariant="three-columns-all-equal-width"
useInvertedBackground={true} useInvertedBackground={true}
features={[ features={[
{ title: "Expertise Locale", description: "Connaissance approfondie des contraintes du marché local réunionnais.", imageSrc: "http://img.b2bpic.net/free-photo/warehouse-worker-checking-inventory_23-2152001550.jpg" }, { title: "Expertise Locale", description: "Connaissance approfondie des contraintes du marché local réunionnais.", imageSrc: "http://img.b2bpic.net/free-photo/warehouse-worker-checking-inventory_23-2152001550.jpg?_wi=2" },
{ title: "Normes Strictes", description: "Tous nos EPI répondent aux dernières normes européennes de sécurité.", imageSrc: "http://img.b2bpic.net/free-photo/manual-worker-with-face-mask-working-carpentry-warehouse-coronavirus-pandemic_637285-11777.jpg" }, { title: "Normes Strictes", description: "Tous nos EPI répondent aux dernières normes européennes de sécurité.", imageSrc: "http://img.b2bpic.net/free-photo/manual-worker-with-face-mask-working-carpentry-warehouse-coronavirus-pandemic_637285-11777.jpg" },
{ title: "Stock Permanent", description: "Un large choix disponible immédiatement pour vos chantiers.", imageSrc: "http://img.b2bpic.net/free-photo/engineers-industry-40-industrial-plant-controlling-automated-machinery_482257-120564.jpg" }, { title: "Stock Permanent", description: "Un large choix disponible immédiatement pour vos chantiers.", imageSrc: "http://img.b2bpic.net/free-photo/engineers-industry-40-industrial-plant-controlling-automated-machinery_482257-120564.jpg" },
]} ]}
@@ -119,39 +128,36 @@ Nos solutions d'EPI certifiées protègent vos collaborateurs et assurent la con
</div> </div>
<div id="testimonials" data-section="testimonials"> <div id="testimonials" data-section="testimonials">
<TestimonialCardTwelve <TestimonialCardOne
useInvertedBackground={true} title="Ce que nos partenaires disent"
animationType="blur-reveal"
gridVariant="uniform-all-items-equal"
useInvertedBackground={false}
description="Retours d'expérience"
textboxLayout="default"
testimonials={[ testimonials={[
{ id: "t1", name: "Jean Dupont", imageSrc: "http://img.b2bpic.net/free-photo/medium-shot-plus-size-man-working-construction_23-2150772851.jpg" }, { id: "t1", name: "Jean Dupont", role: "Chef de chantier", company: "BTP 974", rating: 5, imageSrc: "http://img.b2bpic.net/free-photo/medium-shot-plus-size-man-working-construction_23-2150772851.jpg" },
{ id: "t2", name: "Marc Martin", imageSrc: "http://img.b2bpic.net/free-photo/woman-wearing-special-industrial-protective-equipment_23-2148991969.jpg" }, { id: "t2", name: "Marc Martin", role: "Responsable Sécurité", company: "SecurPro", rating: 5, imageSrc: "http://img.b2bpic.net/free-photo/woman-wearing-special-industrial-protective-equipment_23-2148991969.jpg" },
{ id: "t3", name: "Sophie Leroy", imageSrc: "http://img.b2bpic.net/free-photo/close-up-portrait-engineer-talking-phone_23-2148233674.jpg" }, { id: "t3", name: "Sophie Leroy", role: "Ingénieure", company: "BatirRéunion", rating: 5, imageSrc: "http://img.b2bpic.net/close-up-portrait-engineer-talking-phone_23-2148233674.jpg" },
{ id: "t4", name: "Lucie Bernard", imageSrc: "http://img.b2bpic.net/free-photo/male-worker-with-arms-crossed-standing-factory_107420-96042.jpg" },
{ id: "t5", name: "Pierre Vidal", imageSrc: "http://img.b2bpic.net/free-photo/front-view-smiley-young-man-with-helmet_23-2148269289.jpg" },
]} ]}
cardTitle="Ce que nos partenaires disent"
cardTag="Témoignages"
cardAnimation="slide-up"
/> />
</div> </div>
<div id="contact" data-section="contact"> <div id="contact" data-section="contact">
<ContactCenter <ContactText
tag="Contact" text="Obtenez votre devis personnalisé en 24h"
title="Besoin d'un devis ?" animationType="reveal-blur"
description="Obtenez une réponse sous 24h pour vos besoins en sécurité."
background={{ variant: "gradient-bars" }} background={{ variant: "gradient-bars" }}
useInvertedBackground={true} useInvertedBackground={true}
buttons={[{ text: "Nous contacter" }]}
/> />
</div> </div>
<div id="footer" data-section="footer"> <div id="footer" data-section="footer">
<FooterLogoEmphasis <FooterLogoReveal
logoText="SAE Réunion" logoText="SAE Réunion"
columns={[ leftLink={{ text: "Mentions Légales" }}
{ items: [{ label: "Accueil", href: "#hero" }, { label: "Produits", href: "#products" }] }, rightLink={{ text: "Confidentialité" }}
{ items: [{ label: "À Propos", href: "#about" }, { label: "Contact", href: "#contact" }] },
{ items: [{ label: "Mentions Légales" }, { label: "Confidentialité" }] },
]}
/> />
</div> </div>
</ReactLenis> </ReactLenis>