Compare commits

...

15 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

View File

@@ -3,15 +3,15 @@
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 NavbarStyleApple from '@/components/navbar/NavbarStyleApple/NavbarStyleApple'; 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, Search, ShoppingCart } from "lucide-react"; import { Award, ShieldCheck, Users } from "lucide-react";
export default function LandingPage() { export default function LandingPage() {
const handleProductClick = () => { const handleProductClick = () => {
@@ -36,25 +36,27 @@ export default function LandingPage() {
> >
<ReactLenis root> <ReactLenis root>
<div id="nav" data-section="nav"> <div id="nav" data-section="nav">
<NavbarStyleApple <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>
@@ -100,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" },
]} ]}
@@ -126,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="Obtenez votre devis personnalisé en 24h" animationType="reveal-blur"
description="Nous nous engageons à traiter vos demandes rapidement pour assurer votre 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>