Merge version_1_1781773272675 into main

Merge version_1_1781773272675 into main
This commit was merged in pull request #1.
This commit is contained in:
2026-06-18 09:02:16 +00:00
2 changed files with 120 additions and 255 deletions

View File

@@ -7,84 +7,48 @@ import { StyleProvider } from "@/components/ui/StyleProvider";
export default function Layout() {
const navItems = [
{
"name": "Forfaits",
"href": "#pricing"
},
{
"name": "Méthode",
"href": "#agency-vs"
},
{
"name": "Bilano",
"href": "#bilano"
},
{
"name": "Hero",
"href": "#hero"
},
{
"name": "Inversion Risque",
"href": "#inversion-risque"
},
{
"name": "Faq",
"href": "#faq"
},
{
"name": "Contact",
"href": "#contact"
}
];
{ "name": "Forfaits", "href": "#pricing" },
{ "name": "Méthode", "href": "#agency-vs" },
{ "name": "Bilano", "href": "#bilano" },
{ "name": "Hero", "href": "#hero" },
{ "name": "Inversion Risque", "href": "#inversion-risque" },
{ "name": "Faq", "href": "#faq" },
{ "name": "Contact", "href": "#contact" }
];
return (
<StyleProvider buttonVariant="magnetic" siteBackground="noise" heroBackground="gradientBars">
<SiteBackgroundSlot />
<SectionErrorBoundary name="navbar">
<NavbarFloatingLogo
logo="Épure"
ctaButton={{
text: "Réserver un brief",
href: "#contact",
}}
navItems={navItems} />
logo="Épure"
logoImageSrc="http://img.b2bpic.net/free-vector/elegant-minimalist-luxury-fashion-blog-logo-template_742173-17128.jpg"
ctaButton={{ text: "Réserver un brief", href: "#contact" }}
navItems={navItems}
/>
</SectionErrorBoundary>
<main className="flex-grow">
<Outlet />
</main>
<SectionErrorBoundary name="footer">
<FooterBasic
columns={[
{
title: "Épure",
items: [
columns={[
{
label: "Services",
href: "#",
title: "Épure", items: [
{ label: "Services", href: "#" },
{ label: "Méthode", href: "#" }
]
},
{
label: "Méthode",
href: "#",
},
],
},
{
title: "Légal",
items: [
{
label: "Mentions Légales",
href: "#",
},
{
label: "RGPD",
href: "#",
},
],
},
]}
leftText="© 2024 Épure. Factory Digitale."
rightText="Honnêteté radicale."
/>
title: "Légal", items: [
{ label: "Mentions Légales", href: "#" },
{ label: "RGPD", href: "#" }
]
}
]}
leftText="© 2024 Épure. Factory Digitale."
rightText="Honnêteté radicale."
/>
</SectionErrorBoundary>
</StyleProvider>
);

View File

@@ -11,211 +11,112 @@ import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
export default function HomePage() {
return (
<>
<div id="hero" data-section="hero">
<SectionErrorBoundary name="hero">
<div id="hero" data-section="hero">
<SectionErrorBoundary name="hero">
<HeroBillboardTiltedCarousel
tag="Factory Digitale"
title="Transformer vos idées en SaaS livré sous 7 jours"
description="Nous sommes une factory spécialisée dans le SaaS, les landing pages et agents IA. Prix signés, honnêteté radicale, zéro blabla."
primaryButton={{
text: "Réserver un brief",
href: "#contact",
}}
secondaryButton={{
text: "Voir les forfaits",
href: "#pricing",
}}
items={[
{
imageSrc: "http://img.b2bpic.net/free-photo/creamy-bird-paradise-leaf-background-design-resource_53876-102382.jpg",
},
{
imageSrc: "http://img.b2bpic.net/free-photo/professional-young-woman-checking-her-phone_23-2148452656.jpg",
},
{
imageSrc: "http://img.b2bpic.net/free-photo/close-up-velvet-texture_23-2149305941.jpg",
},
{
imageSrc: "http://img.b2bpic.net/free-photo/portrait-smart-young-woman-posing-office_23-2148452665.jpg",
},
{
imageSrc: "http://img.b2bpic.net/free-photo/yellow-branch-leaves-beige-surface_114579-46023.jpg",
},
{
imageSrc: "http://img.b2bpic.net/free-photo/assortment-abstract-3d-design-elements_23-2148996836.jpg",
},
]}
/>
</SectionErrorBoundary>
</div>
tag="Factory Digitale"
title="Transformer vos idées en SaaS livré sous 7 jours"
description="Nous sommes une factory spécialisée dans le SaaS, les landing pages et agents IA. Prix signés, honnêteté radicale, zéro blabla."
primaryButton={{ text: "Réserver un brief", href: "#contact" }}
secondaryButton={{ text: "Voir les forfaits", href: "#pricing" }}
items={[
{ imageSrc: "http://img.b2bpic.net/free-photo/creamy-bird-paradise-leaf-background-design-resource_53876-102382.jpg" },
{ imageSrc: "http://img.b2bpic.net/free-photo/professional-young-woman-checking-her-phone_23-2148452656.jpg" },
{ imageSrc: "http://img.b2bpic.net/free-photo/close-up-velvet-texture_23-2149305941.jpg" },
{ imageSrc: "http://img.b2bpic.net/free-photo/portrait-smart-young-woman-posing-office_23-2148452665.jpg" },
{ imageSrc: "http://img.b2bpic.net/free-photo/yellow-branch-leaves-beige-surface_114579-46023.jpg" },
{ imageSrc: "http://img.b2bpic.net/free-photo/assortment-abstract-3d-design-elements_23-2148996836.jpg" }
]}
/>
</SectionErrorBoundary>
</div>
<div id="agency-vs" data-section="agency-vs">
<SectionErrorBoundary name="agency-vs">
<div id="agency-vs" data-section="agency-vs">
<SectionErrorBoundary name="agency-vs">
<AboutFeaturesSplit
tag="Transparence"
title="Agence classique vs Épure"
description="L'agence traditionnelle facture le temps et l'imprécision. Épure facture la valeur et la rapidité."
items={[
{
icon: Clock,
title: "Délai",
description: "3 mois vs 7 jours garantis.",
},
{
icon: CheckCircle,
title: "Prix",
description: "Devis flous vs Forfaits signés fixes.",
},
{
icon: Shield,
title: "Transparence",
description: "Opacité totale vs Code et IP 100% à vous.",
},
]}
imageSrc="http://img.b2bpic.net/free-photo/organized-creative-workspace-graphic-designers-photographers_482257-126938.jpg"
/>
</SectionErrorBoundary>
</div>
tag="Transparence"
title="Agence classique vs Épure"
description="L'agence traditionnelle facture le temps et l'imprécision. Épure facture la valeur et la rapidité."
items={[
{ icon: "Clock", title: "Délai", description: "3 mois vs 7 jours garantis." },
{ icon: "CheckCircle", title: "Prix", description: "Devis flous vs Forfaits signés fixes." },
{ icon: "Shield", title: "Transparence", description: "Opacité totale vs Code et IP 100% à vous." }
]}
imageSrc="http://img.b2bpic.net/free-photo/organized-creative-workspace-graphic-designers-photographers_482257-126938.jpg"
/>
</SectionErrorBoundary>
</div>
<div id="bilano" data-section="bilano">
<SectionErrorBoundary name="bilano">
<div id="bilano" data-section="bilano">
<SectionErrorBoundary name="bilano">
<FeaturesMediaCards
tag="Preuve par le SaaS"
title="Bilano : Le SaaS conçu par nos soins"
description="Fondé par l'équipe Épure, Bilano prouve notre exigence technique et produit."
items={[
{
title: "Ingénierie",
description: "Architecture robuste et évolutive.",
imageSrc: "http://img.b2bpic.net/free-photo/smart-car-navigator-interface-windshield-hologram_53876-103040.jpg",
},
{
title: "UX Design",
description: "Pensé pour la conversion.",
imageSrc: "http://img.b2bpic.net/free-photo/elegant-uber-driver-giving-taxi-ride_23-2149241774.jpg",
},
{
title: "IA Intégrée",
description: "Agents autonomes performants.",
imageSrc: "http://img.b2bpic.net/free-photo/green-screen-mockup-laptop-accountant-working-office_482257-126537.jpg",
},
]}
/>
</SectionErrorBoundary>
</div>
tag="Preuve par le SaaS"
title="Bilano : Le SaaS conçu par nos soins"
description="Fondé par l'équipe Épure, Bilano prouve notre exigence technique et produit."
items={[
{ title: "Ingénierie", description: "Architecture robuste et évolutive.", imageSrc: "http://img.b2bpic.net/free-photo/smart-car-navigator-interface-windshield-hologram_53876-103040.jpg" },
{ title: "UX Design", description: "Pensé pour la conversion.", imageSrc: "http://img.b2bpic.net/free-photo/elegant-uber-driver-giving-taxi-ride_23-2149241774.jpg" },
{ title: "IA Intégrée", description: "Agents autonomes performants.", imageSrc: "http://img.b2bpic.net/free-photo/green-screen-mockup-laptop-accountant-working-office_482257-126537.jpg" }
]}
/>
</SectionErrorBoundary>
</div>
<div id="pricing" data-section="pricing">
<SectionErrorBoundary name="pricing">
<div id="pricing" data-section="pricing">
<SectionErrorBoundary name="pricing">
<PricingSimpleCards
tag="Forfaits Signés"
title="Clarté de tarification"
description="Pas de coûts cachés, pas de surprises. Juste de la valeur."
plans={[
{
tag: "Landing",
price: "2 900 €",
description: "Landing page de haute précision.",
features: [
"Design custom",
"Copywriting",
"Performance 7j",
],
},
{
tag: "App",
price: "7 900 €",
description: "Application SaaS interne sur mesure.",
features: [
"Base de données",
"Auth & Sécurité",
"Full responsive",
],
},
{
tag: "IA",
price: "9 900 €",
description: "Agent IA spécialisé pour votre métier.",
features: [
"Fine-tuning LLM",
"Workflow automation",
"Support 24/7",
],
},
]}
/>
</SectionErrorBoundary>
</div>
tag="Forfaits Signés"
title="Clarté de tarification"
description="Pas de coûts cachés, pas de surprises. Juste de la valeur."
plans={[
{ tag: "Landing", price: "2 900 €", description: "Landing page de haute précision.", features: ["Design custom", "Copywriting", "Performance 7j"] },
{ tag: "App", price: "7 900 €", description: "Application SaaS interne sur mesure.", features: ["Base de données", "Auth & Sécurité", "Full responsive"] },
{ tag: "IA", price: "9 900 €", description: "Agent IA spécialisé pour votre métier.", features: ["Fine-tuning LLM", "Workflow automation", "Support 24/7"] }
]}
/>
</SectionErrorBoundary>
</div>
<div id="inversion-risque" data-section="inversion-risque">
<SectionErrorBoundary name="inversion-risque">
<div id="inversion-risque" data-section="inversion-risque">
<SectionErrorBoundary name="inversion-risque">
<MetricsIconCards
tag="Garanties"
title="L'inversion totale du risque"
description="Nous avons confiance dans notre rapidité."
metrics={[
{
icon: FileText,
title: "Contrat",
description: "Prix signé ferme",
value: "100%",
},
{
icon: TrendingDown,
title: "Retard",
description: "Pénalité 5% par jour",
value: "Garantie",
},
{
icon: Lock,
title: "Propriété",
description: "Cession IP totale",
value: "Clair",
},
]}
/>
</SectionErrorBoundary>
</div>
tag="Garanties"
title="L'inversion totale du risque"
description="Nous avons confiance dans notre rapidité."
metrics={[
{ icon: "FileText", title: "Contrat", value: "100%" },
{ icon: "TrendingDown", title: "Retard", value: "Garantie" },
{ icon: "Lock", title: "Propriété", value: "Clair" }
]}
/>
</SectionErrorBoundary>
</div>
<div id="faq" data-section="faq">
<SectionErrorBoundary name="faq">
<div id="faq" data-section="faq">
<SectionErrorBoundary name="faq">
<FaqSimple
tag="Questions"
title="FAQ sans filtre"
description="Tout ce que vous devez savoir."
items={[
{
question: "Comment livrer en 7 jours ?",
answer: "Nous utilisons des stacks éprouvées et un processus ultra-optimisé, sans réunions inutiles.",
},
{
question: "Qui possède le code ?",
answer: "Vous. 100% de la propriété intellectuelle vous est cédée dès la livraison.",
},
{
question: "Comment gérer la maintenance ?",
answer: "Nous documentons tout et formons votre équipe à la reprise immédiate.",
},
]}
/>
</SectionErrorBoundary>
</div>
tag="Questions"
title="FAQ sans filtre"
description="Tout ce que vous devez savoir."
items={[
{ question: "Comment livrer en 7 jours ?", answer: "Nous utilisons des stacks éprouvées et un processus ultra-optimisé, sans réunions inutiles." },
{ question: "Qui possède le code ?", answer: "Vous. 100% de la propriété intellectuelle vous est cédée dès la livraison." },
{ question: "Comment gérer la maintenance ?", answer: "Nous documentons tout et formons votre équipe à la reprise immédiate." }
]}
/>
</SectionErrorBoundary>
</div>
<div id="contact" data-section="contact">
<SectionErrorBoundary name="contact">
<div id="contact" data-section="contact">
<SectionErrorBoundary name="contact">
<ContactCta
tag="Prêt ?"
text="Réservez votre brief. 15 minutes, zéro engagement."
primaryButton={{
text: "Réserver un brief",
href: "#",
}}
secondaryButton={{
text: "Contact direct",
href: "#",
}}
/>
</SectionErrorBoundary>
</div>
tag="Prêt ?"
text="Réservez votre brief. 15 minutes, zéro engagement."
primaryButton={{ text: "Réserver un brief", href: "#" }}
secondaryButton={{ text: "Contact direct", href: "#" }}
/>
</SectionErrorBoundary>
</div>
</>
);
}