10 Commits

Author SHA1 Message Date
7420668cd2 Switch to version 1: modified src/app/styles/base.css 2026-04-30 10:55:15 +00:00
283492d2b2 Switch to version 1: modified src/app/page.tsx 2026-04-30 10:55:15 +00:00
0749b487e9 Switch to version 1: modified src/app/layout.tsx 2026-04-30 10:55:14 +00:00
a829846c62 Merge version_2 into main
Merge version_2 into main
2026-04-30 10:54:45 +00:00
4ae39d09b5 Merge version_2 into main
Merge version_2 into main
2026-04-30 10:54:09 +00:00
bfbec84854 Merge version_2 into main
Merge version_2 into main
2026-04-30 10:49:15 +00:00
2999c6dde0 Merge version_2 into main
Merge version_2 into main
2026-04-30 10:48:42 +00:00
4956348a60 Merge version_2 into main
Merge version_2 into main
2026-04-30 10:41:32 +00:00
1edbc4a187 Merge version_2 into main
Merge version_2 into main
2026-04-30 10:40:58 +00:00
bb1685120f Merge version_2 into main
Merge version_2 into main
2026-04-30 10:40:25 +00:00
3 changed files with 291 additions and 103 deletions

View File

@@ -7,7 +7,6 @@ import { ServiceWrapper } from "@/components/ServiceWrapper";
import Tag from "@/tag/Tag";
import { getVisualEditScript } from "@/utils/visual-edit-script";
import { Lato } from "next/font/google";
import { Cormorant_Garamond, Lato } from "next/font/google";
@@ -21,9 +20,11 @@ export const metadata: Metadata = {
},
};
const cormorantGaramond = Cormorant_Garamond({ variable: "--font-cormorant", subsets: ["latin"], weight: ["300", "400", "500", "600", "700"] });
const lato = Lato({ variable: "--font-lato", subsets: ["latin"], weight: ["100", "300", "400", "700", "900"] });
const lato = Lato({
variable: "--font-lato",
subsets: ["latin"],
weight: ["100", "300", "400", "700", "900"],
});
export default function RootLayout({
children,
@@ -33,7 +34,7 @@ export default function RootLayout({
return (
<html lang="en" suppressHydrationWarning>
<ServiceWrapper>
<body className={`${cormorantGaramond.variable} ${lato.variable} antialiased`}>
<body className={`${lato.variable} antialiased`}>
<Tag />
{children}
<script

View File

@@ -9,120 +9,307 @@ import HeroCentered from '@/components/sections/hero/HeroCentered';
import InlineImageSplitTextAbout from '@/components/sections/about/InlineImageSplitTextAbout';
import NavbarStyleFullscreen from '@/components/navbar/NavbarStyleFullscreen/NavbarStyleFullscreen';
import ProductCardFour from '@/components/sections/product/ProductCardFour';
import { Award, Gift, MapPin, ShieldCheck, Truck } from "lucide-react";
export default function LandingPage() {
return (
<ThemeProvider
defaultButtonVariant="hover-bubble"
defaultButtonVariant="text-stagger"
defaultTextAnimation="reveal-blur"
borderRadius="soft"
contentWidth="medium"
borderRadius="rounded"
contentWidth="compact"
sizing="largeSizeMediumTitles"
background="none"
background="fluid"
cardStyle="glass-elevated"
primaryButtonStyle="flat"
secondaryButtonStyle="solid"
headingFontWeight="semibold"
headingFontWeight="bold"
>
<ReactLenis root>
<div id="nav" data-section="nav">
<NavbarStyleFullscreen
navItems={[
{ name: "Accueil", id: "hero" },
{ name: "À propos", id: "about" },
{ name: "Produits", id: "produits" },
{ name: "Paniers", id: "paniers" },
{ name: "Contact", id: "contact" },
]}
brandName="Great Saveurs"
/>
</div>
<div id="nav" data-section="nav">
<NavbarStyleFullscreen
navItems={[
{
name: "Accueil",
id: "hero",
},
{
name: "Produits",
id: "produits",
},
{
name: "Paniers",
id: "paniers",
},
{
name: "Contact",
id: "contact",
},
]}
brandName="Great Saveurs"
button={{
text: "Prendre contact",
href: "#contact",
}}
/>
</div>
<div id="hero" data-section="hero">
<HeroCentered
background={{ variant: "radial-gradient" }}
title="L'Épicerie Fine du Terroir"
description="Une sélection rigoureuse de produits régionaux artisanaux, directement des producteurs locaux à votre table."
avatars={[
{ src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3D1qOSIyqpAJnVmTp8rS4p8ETfF/uploaded-1777545608060-62m531yz.jpg", alt: "Produits fins" },
{ src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3D1qOSIyqpAJnVmTp8rS4p8ETfF/uploaded-1777545608060-ylvmeboi.jpg", alt: "Epicerie fine" }
]}
buttons={[{ text: "Découvrir nos produits", href: "#produits" }]}
/>
</div>
<div id="hero" data-section="hero">
<HeroCentered
background={{
variant: "gradient-bars",
}}
title="Le meilleur du terroir, livré avec passion"
description="Une sélection rigoureuse de produits régionaux artisanaux, directement des producteurs locaux à votre table."
avatars={[
{
src: "http://img.b2bpic.net/free-photo/front-view-basket-with-vegetables-garlics-onions-beet-light-background_140725-94827.jpg",
alt: "Produits artisanaux",
},
{
src: "http://img.b2bpic.net/free-photo/assorted-yummy-food-composition_23-2147930093.jpg",
alt: "Assorted yummy food composition",
},
{
src: "http://img.b2bpic.net/free-photo/dried-apricots-wooden-plate-spoons-with-juice-top-view-plaster-picnic-cloth_176474-9283.jpg",
alt: "Dried apricots in wooden plate",
},
{
src: "http://img.b2bpic.net/free-photo/delicious-honey-white-wooden-surface_1150-42243.jpg",
alt: "Delicious honey on white wooden surface",
},
{
src: "http://img.b2bpic.net/free-photo/delicious-chocolate-bars_23-2147787067.jpg",
alt: "Delicious chocolate bars",
},
]}
buttons={[
{
text: "Découvrir la gamme",
href: "#produits",
},
{
text: "Nous contacter",
href: "#contact",
},
]}
buttonAnimation="slide-up"
marqueeItems={[
{
type: "text-icon",
text: "100% Artisanal",
icon: Award,
},
{
type: "text-icon",
text: "Livraison Rapide",
icon: Truck,
},
{
type: "text-icon",
text: "Produits Régionaux",
icon: MapPin,
},
{
type: "text-icon",
text: "Qualité Garantie",
icon: ShieldCheck,
},
{
type: "text-icon",
text: "Paniers Sur-Mesure",
icon: Gift,
},
]}
/>
</div>
<div id="bandeau" data-section="bandeau">
<FeatureCardNineteen
title="Engagement Great Saveurs"
description="Qualité artisanale et authenticité française au cœur de notre démarche."
textboxLayout="split"
useInvertedBackground={false}
features={[
{ tag: "Artisanat", title: "Savoir-faire", subtitle: "Authenticité", description: "Fabrication authentique par des artisans." },
{ tag: "Terroir", title: "Régional", subtitle: "100% Terroir", description: "Le meilleur des régions françaises." }
]}
/>
</div>
<div id="bandeau" data-section="bandeau">
<FeatureCardNineteen
textboxLayout="default"
useInvertedBackground={true}
features={[
{
tag: "01",
title: "Livraison",
subtitle: "Sur commande",
description: "Commandez vos produits en toute simplicité.",
imageSrc: "http://img.b2bpic.net/free-photo/bakery_23-2148011524.jpg",
imageAlt: "Bakery ",
},
{
tag: "02",
title: "Régional",
subtitle: "100% Terroir",
description: "Le meilleur des régions françaises.",
imageSrc: "http://img.b2bpic.net/free-photo/front-view-basket-with-vegetables-garlics-onions-beet-light-background_140725-94827.jpg",
imageAlt: "Bakery ",
},
{
tag: "03",
title: "Artisanal",
subtitle: "Savoir-faire",
description: "Fabrication authentique par des artisans.",
imageSrc: "http://img.b2bpic.net/free-photo/portrait-smiling-baker-standing-with-arms-crossed_1170-2018.jpg",
imageAlt: "Bakery ",
},
{
tag: "04",
title: "Sur-mesure",
subtitle: "Paniers",
description: "Compositions personnalisées pour vos cadeaux.",
imageSrc: "http://img.b2bpic.net/free-photo/high-angle-fruit-jam-bread_23-2148606865.jpg?_wi=1",
imageAlt: "Bakery ",
},
]}
title="Engagement Great Saveurs"
description="Qualité artisanale et authenticité française au cœur de notre démarche."
/>
</div>
<div id="about" data-section="about">
<InlineImageSplitTextAbout
useInvertedBackground={false}
heading={[
{ type: "text", content: "Franck Chatail parcourt les régions de France pour vous proposer ce que les producteurs locaux font de mieux. Confitures, miels, biscuits artisanaux, chocolats — chaque produit est choisi pour sa qualité et son authenticité." }
]}
/>
</div>
<div id="about" data-section="about">
<InlineImageSplitTextAbout
useInvertedBackground={false}
heading={[
{
type: "image",
src: "http://img.b2bpic.net/free-photo/portrait-smiling-baker-standing-with-arms-crossed_1170-2018.jpg",
alt: "Franck Chatail",
},
{
type: "text",
content: "Franck Chatail parcourt les régions de France pour vous proposer ce que les producteurs locaux font de mieux. Confitures, miels, biscuits artisanaux, chocolats, gazpachos — chaque produit est choisi pour sa qualité et son authenticité.",
},
]}
/>
</div>
<div id="produits" data-section="produits">
<ProductCardFour
title="Nos Produits"
description="Une sélection raffinée de spécialités régionales."
gridVariant="three-columns-all-equal-width"
animationType="blur-reveal"
textboxLayout="split"
useInvertedBackground={true}
products={[
{ id: "1", name: "Miels de France", price: "Sur demande", variant: "Artisan", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3D1qOSIyqpAJnVmTp8rS4p8ETfF/uploaded-1777545608060-62m531yz.jpg" },
{ id: "2", name: "Spécialités Gourmandes", price: "Sur demande", variant: "Produit rare", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3D1qOSIyqpAJnVmTp8rS4p8ETfF/uploaded-1777545608060-ylvmeboi.jpg" },
{ id: "3", name: "Biscuits Artisanaux", price: "Sur demande", variant: "Tradition", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3D1qOSIyqpAJnVmTp8rS4p8ETfF/uploaded-1777545608060-ylvmeboi.jpg" }
]}
/>
</div>
<div id="produits" data-section="produits">
<ProductCardFour
animationType="slide-up"
textboxLayout="default"
gridVariant="three-columns-all-equal-width"
useInvertedBackground={true}
products={[
{
id: "1",
name: "Confitures artisanales",
price: "Sur demande",
variant: "250g",
imageSrc: "http://img.b2bpic.net/free-photo/high-angle-fruit-jam-bread_23-2148606865.jpg?_wi=2",
},
{
id: "2",
name: "Miels de France",
price: "Sur demande",
variant: "500g",
imageSrc: "http://img.b2bpic.net/free-photo/glass-jar-full-honey-with-honey-spoon_23-2148173069.jpg",
},
{
id: "3",
name: "Tablettes chocolat",
price: "Sur demande",
variant: "100g",
imageSrc: "http://img.b2bpic.net/free-photo/chocolate-brownies-kitchen-towel_114579-19047.jpg",
},
{
id: "4",
name: "Sablés fourrés",
price: "Sur demande",
variant: "200g",
imageSrc: "http://img.b2bpic.net/free-photo/waffle-bowl-cookies-white-surface-high-quality-photo_114579-35997.jpg",
},
{
id: "5",
name: "Meringues artisanales",
price: "Sur demande",
variant: "100g",
imageSrc: "http://img.b2bpic.net/free-photo/white-pink-macaroons-glass-cover_1304-4684.jpg",
},
{
id: "6",
name: "Gazpacho & soupes",
price: "Sur demande",
variant: "500ml",
imageSrc: "http://img.b2bpic.net/free-photo/top-view-delicious-lentils-soup-inside-plates-light-background-seed-plant-soup-color-food-dish-photo_140725-108883.jpg",
},
]}
title="Nos Produits Artisanaux"
description="Une sélection raffinée de spécialités régionales."
/>
</div>
<div id="paniers" data-section="paniers">
<FeatureCardNineteen
title="Paniers Garnis"
description="Pour cadeaux d'entreprise, mariages ou fêtes, créez des compositions uniques."
textboxLayout="split"
useInvertedBackground={false}
features={[
{ tag: "Sur-mesure", title: "Cadeaux Signature", subtitle: "Composition unique", description: "Mélangez nos meilleures sélections pour un cadeau inoubliable." }
]}
/>
</div>
<div id="paniers" data-section="paniers">
<FeatureCardNineteen
textboxLayout="split"
useInvertedBackground={false}
features={[
{
tag: "Exemple",
title: "Composition Signature",
subtitle: "Un cadeau qui a du goût",
description: "Mélangez nos meilleures confitures, chocolats, miels et sablés pour un cadeau inoubliable.",
imageSrc: "http://img.b2bpic.net/free-photo/composition-breakfast-objects-fathers-day_23-2148098308.jpg",
},
]}
title="Paniers Garnis sur mesure"
description="Pour cadeaux d'entreprise, mariages ou fêtes de fin d'année, créez des compositions personnalisées uniques avec nos produits artisanaux."
/>
</div>
<div id="contact" data-section="contact">
<ContactCTA
tag="Contact"
title="Vente sur commande directe"
description="Contactez-nous pour toute demande de commande ou conseil sur notre gamme."
background={{ variant: "radial-gradient" }}
useInvertedBackground={false}
buttons={[
{ text: "07 84 55 81 49", href: "tel:0784558149" },
{ text: "franck.chatail0475@orange.fr", href: "mailto:franck.chatail0475@orange.fr" }
]}
/>
</div>
<div id="contact" data-section="contact">
<ContactCTA
useInvertedBackground={true}
background={{
variant: "plain",
}}
tag="Contactez-nous"
title="Vente sur commande directe"
description="Franck Chatail est à votre écoute pour toute demande de commande ou conseil sur notre gamme de produits régionaux."
buttons={[
{
text: "Appeler : 07 84 55 81 49",
href: "tel:0784558149",
},
{
text: "Email : franck.chatail0475@orange.fr",
href: "mailto:franck.chatail0475@orange.fr",
},
]}
/>
</div>
<div id="footer" data-section="footer">
<FooterMedia
logoText="Great Saveurs"
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3D1qOSIyqpAJnVmTp8rS4p8ETfF/uploaded-1777545608060-62m531yz.jpg"
columns={[{ title: "Navigation", items: [{ label: "Accueil", href: "#nav" }, { label: "Produits", href: "#produits" }, { label: "Contact", href: "#contact" }] }]}
/>
</div>
<div id="footer" data-section="footer">
<FooterMedia
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=9aodwr"
logoText="Great Saveurs"
columns={[
{
title: "Navigation",
items: [
{
label: "Accueil",
href: "#hero",
},
{
label: "Produits",
href: "#produits",
},
{
label: "Paniers",
href: "#paniers",
},
{
label: "Contact",
href: "#contact",
},
],
},
]}
copyrightText="© 2025 Great Saveurs — Franck Chatail, commercial multicarte"
/>
</div>
</ReactLenis>
</ThemeProvider>
);
}
}

View File

@@ -11,7 +11,7 @@ html {
body {
background-color: var(--background);
color: var(--foreground);
font-family: var(--font-cormorant), sans-serif;
font-family: var(--font-lato), sans-serif;
position: relative;
min-height: 100vh;
overscroll-behavior: none;
@@ -24,5 +24,5 @@ h3,
h4,
h5,
h6 {
font-family: var(--font-cormorant), sans-serif;
font-family: var(--font-lato), sans-serif;
}