Compare commits

...

39 Commits

Author SHA1 Message Date
1e8472fc01 Update src/app/page.tsx 2026-05-15 16:38:05 +00:00
3e14daae4e Merge version_29 into main
Merge version_29 into main
2026-05-15 16:36:36 +00:00
70b0fb878b Update src/app/pricing-highlighted/page.tsx 2026-05-15 16:36:33 +00:00
b990e3d931 Update src/app/pricing/page.tsx 2026-05-15 16:36:32 +00:00
800f02c04d Update src/app/page.tsx 2026-05-15 16:36:32 +00:00
83a41d7e9f Update src/app/comparison/page.tsx 2026-05-15 16:36:31 +00:00
2899d5b371 Merge version_28 into main
Merge version_28 into main
2026-05-15 16:34:34 +00:00
3d276f7bae Update src/app/page.tsx 2026-05-15 16:34:30 +00:00
0966b31b2b Merge version_27 into main
Merge version_27 into main
2026-05-15 16:31:40 +00:00
0b81cef451 Add src/app/pricing-highlighted/page.tsx 2026-05-15 16:31:37 +00:00
d14f2c5d37 Update src/app/pricing/page.tsx 2026-05-15 16:31:36 +00:00
a6501fd8b9 Update src/app/page.tsx 2026-05-15 16:31:36 +00:00
7549c60a9e Update src/app/comparison/page.tsx 2026-05-15 16:31:35 +00:00
02e36a8a33 Switch to version 25: modified src/app/page.tsx 2026-05-15 16:30:27 +00:00
1b7d7bd9ee Merge version_26 into main
Merge version_26 into main
2026-05-15 16:29:44 +00:00
621dda645f Update src/app/page.tsx 2026-05-15 16:29:41 +00:00
683cd0e3ff Merge version_26 into main
Merge version_26 into main
2026-05-15 16:29:17 +00:00
b16fcdf3bf Update src/app/page.tsx 2026-05-15 16:29:11 +00:00
9baf262094 Merge version_25 into main
Merge version_25 into main
2026-05-15 16:28:21 +00:00
2155a9ce66 Update src/app/pricing/page.tsx 2026-05-15 16:28:18 +00:00
e13d575f16 Merge version_25 into main
Merge version_25 into main
2026-05-15 16:27:56 +00:00
f1d856a652 Add src/app/pricing/page.tsx 2026-05-15 16:27:53 +00:00
f18382ca11 Update src/app/page.tsx 2026-05-15 16:27:53 +00:00
edc5cc6445 Update src/app/comparison/page.tsx 2026-05-15 16:27:52 +00:00
1abcc657cf Merge version_24 into main
Merge version_24 into main
2026-05-15 16:26:35 +00:00
4485b75d1a Update src/app/styles/variables.css 2026-05-15 16:26:32 +00:00
b430a5ebce Update src/app/page.tsx 2026-05-15 16:26:32 +00:00
159fac70e8 Update src/app/comparison/page.tsx 2026-05-15 16:26:31 +00:00
e9ae83f681 Merge version_23 into main
Merge version_23 into main
2026-05-15 16:24:40 +00:00
9bdada7ae6 Update src/app/comparison/page.tsx 2026-05-15 16:24:37 +00:00
4e731c0df2 Merge version_23 into main
Merge version_23 into main
2026-05-15 16:24:16 +00:00
5e9086ac4f Update src/app/styles/variables.css 2026-05-15 16:24:12 +00:00
11a7ba8854 Update src/app/comparison/page.tsx 2026-05-15 16:24:12 +00:00
cd11cd0bb4 Merge version_22 into main
Merge version_22 into main
2026-05-15 16:22:53 +00:00
5e10de8bb2 Update src/app/page.tsx 2026-05-15 16:22:50 +00:00
c253cc7f29 Merge version_21 into main
Merge version_21 into main
2026-05-15 16:21:49 +00:00
534a589f25 Update src/app/page.tsx 2026-05-15 16:21:46 +00:00
f208212c9f Add src/app/comparison/page.tsx 2026-05-15 16:21:45 +00:00
0969ee222c Merge version_20 into main
Merge version_20 into main
2026-05-15 16:21:07 +00:00
5 changed files with 237 additions and 9 deletions

View File

@@ -0,0 +1,61 @@
"use client";
import ReactLenis from "lenis/react";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import NavbarLayoutFloatingOverlay from "@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay";
import FooterBase from "@/components/sections/footer/FooterBase";
import PricingCardEight from "@/components/sections/pricing/PricingCardEight";
export default function ComparisonPage() {
return (
<ThemeProvider
defaultButtonVariant="text-stagger"
defaultTextAnimation="entrance-slide"
borderRadius="pill"
contentWidth="medium"
sizing="medium"
background="none"
cardStyle="glass-elevated"
primaryButtonStyle="gradient"
secondaryButtonStyle="glass"
headingFontWeight="medium"
>
<ReactLenis root>
<NavbarLayoutFloatingOverlay
brandName="Switzerweb"
navItems={[
{ name: "Réalisations", id: "work" },
{ name: "Services", id: "services" },
{ name: "À Propos", id: "about" },
{ name: "Contact", id: "contact" },
{ name: "Pricing", id: "/pricing" },
{ name: "Nos Offres", id: "/comparison" },
{ name: "Pricing Highlights", id: "/pricing-highlighted" }
]}
button={{ text: "Démarrer", href: "#contact" }}
/>
<div id="features-comparison" className="pt-32 pb-20">
<PricingCardEight
title="Nos Offres"
description="Découvrez nos différentes options conçues pour propulser votre croissance digitale."
animationType="slide-up"
textboxLayout="default"
useInvertedBackground={false}
plans={[
{ id: "basic", badge: "Essentiel", price: "$49", subtitle: "Pour les marques en croissance", features: ["SEO Optimisé", "Développement Web", "Support Standard"], buttons: [{ text: "Démarrer", href: "#" }] },
{ id: "pro", badge: "Professionnel", price: "$99", subtitle: "Pour les entreprises établies", features: ["Tout le pack Essentiel", "Analyses Avancées", "Support Prioritaire 24/7", "UI/UX Sur-mesure"], buttons: [{ text: "Choisir", href: "#" }] }
]}
/>
</div>
<FooterBase
logoText="Switzerweb"
copyrightText="© 2026 | Switzerweb"
columns={[
{ title: "Entreprise", items: [{ label: "À Propos", href: "#about" }, { label: "Services", href: "#services" }, { label: "Contact", href: "#contact" }] },
{ title: "Services", items: [{ label: "Dév Web", href: "#" }, { label: "SEO", href: "#" }] },
]}
/>
</ReactLenis>
</ThemeProvider>
);
}

View File

@@ -10,7 +10,10 @@ import MetricCardOne from "@/components/sections/metrics/MetricCardOne";
import FooterBase from "@/components/sections/footer/FooterBase";
import TestimonialCardSixteen from "@/components/sections/testimonial/TestimonialCardSixteen";
import ContactCTA from "@/components/sections/contact/ContactCTA";
import { Sparkles, Search, Award, Users, ArrowRight } from "lucide-react";
import PricingCardEight from "@/components/sections/pricing/PricingCardEight";
import PricingCardThree from "@/components/sections/pricing/PricingCardThree";
import PricingCardOne from "@/components/sections/pricing/PricingCardOne";
import { Sparkles, Search, Award, Users, ArrowRight, CheckCircle } from "lucide-react";
export default function WebAgency2Page() {
return (
@@ -34,6 +37,8 @@ export default function WebAgency2Page() {
{ name: "Services", id: "services" },
{ name: "À Propos", id: "about" },
{ name: "Contact", id: "contact" },
{ name: "Tarifs", id: "pricing" },
{ name: "Offres", id: "/comparison" }
]}
button={{ text: "Démarrer", href: "#contact" }}
/>
@@ -47,7 +52,7 @@ export default function WebAgency2Page() {
{ name: "Maria Santos", handle: "@luxuriatravel", testimonial: "Un travail exceptionnel, une équipe réactive et des résultats au-delà de mes espérances.", rating: 5 },
{ name: "John Doe", handle: "@johndoe", testimonial: "Le partenaire idéal pour booster notre visibilité en ligne.", rating: 5 },
]}
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3B1CZ8wJvEJetEx867dlBUUa9fk/uploaded-1778687704099-pawini9k.png?_wi=1"
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3B1CZ8wJvEJetEx867dlBUUa9fk/uploaded-1778862157558-53z96op4.png"
buttons={[{ text: "View Our Projects", href: "#work" }]}
/>
<div id="services">
@@ -89,6 +94,45 @@ export default function WebAgency2Page() {
]}
/>
</div>
<div id="offers">
<PricingCardEight
title="Nos Offres"
description="Découvrez nos différentes options conçues pour propulser votre croissance digitale."
animationType="slide-up"
textboxLayout="default"
useInvertedBackground={false}
plans={[
{ id: "basic", badge: "Essentiel", price: "$49", subtitle: "Pour les marques en croissance", features: ["SEO Optimisé", "Développement Web", "Support Standard"], buttons: [{ text: "Démarrer", href: "#" }] },
{ id: "pro", badge: "Professionnel", price: "$99", subtitle: "Pour les entreprises établies", features: ["Tout le pack Essentiel", "Analyses Avancées", "Support Prioritaire 24/7", "UI/UX Sur-mesure"], buttons: [{ text: "Choisir", href: "#" }] }
]}
/>
</div>
<div id="pricing">
<PricingCardThree
title="Nos Plans Tarifaires"
description="Choisissez l'offre qui propulsera votre projet vers le succès."
animationType="slide-up"
textboxLayout="default"
useInvertedBackground={false}
plans={[
{ id: "starter", price: "$49", name: "Starter", features: ["SEO de base", "Design Réactif", "Maintenance Mensuelle"], buttons: [{ text: "Démarrer", href: "#" }] },
{ id: "growth", price: "$99", name: "Growth", features: ["SEO Avancé", "Stratégie Digitale", "Support 24/7", "Analytique"], buttons: [{ text: "Choisir", href: "#" }] },
{ id: "pro", price: "$199", name: "Pro", features: ["Tout le pack Growth", "UI/UX Personnalisé", "Gestionnaire Dédié", "Performance Optimisée"], buttons: [{ text: "Passer au niveau supérieur", href: "#" }] }
]}
/>
</div>
<div id="pricing-highlighted">
<PricingCardOne
title="Pricing Plans"
description="Premium plans with highlighted features."
animationType="depth-3d"
textboxLayout="default"
useInvertedBackground={false}
plans={[
{ id: "pro", badge: "Highlighted", badgeIcon: CheckCircle, price: "$199", subtitle: "Best value plan", features: ["Everything in standard", "Dedicated support", "Custom analytics", "Unlimited projects"] }
]}
/>
</div>
<TestimonialCardSixteen
title="Témoignages"
description="Ce que nos clients disent de nous."

View File

@@ -0,0 +1,61 @@
"use client";
import ReactLenis from "lenis/react";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import NavbarLayoutFloatingOverlay from "@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay";
import FooterBase from "@/components/sections/footer/FooterBase";
import PricingCardOne from "@/components/sections/pricing/PricingCardOne";
import { CheckCircle } from "lucide-react";
export default function PricingHighlightedPage() {
return (
<ThemeProvider
defaultButtonVariant="text-stagger"
defaultTextAnimation="entrance-slide"
borderRadius="pill"
contentWidth="medium"
sizing="medium"
background="none"
cardStyle="glass-elevated"
primaryButtonStyle="gradient"
secondaryButtonStyle="glass"
headingFontWeight="medium"
>
<ReactLenis root>
<NavbarLayoutFloatingOverlay
brandName="Switzerweb"
navItems={[
{ name: "Réalisations", id: "work" },
{ name: "Services", id: "services" },
{ name: "À Propos", id: "about" },
{ name: "Contact", id: "contact" },
{ name: "Pricing", id: "/pricing" },
{ name: "Nos Offres", id: "/comparison" },
{ name: "Pricing Highlights", id: "/pricing-highlighted" }
]}
button={{ text: "Démarrer", href: "#contact" }}
/>
<div id="pricing-highlighted" className="pt-32 pb-20">
<PricingCardOne
title="Pricing Plans"
description="Premium plans with highlighted features."
animationType="depth-3d"
textboxLayout="default"
useInvertedBackground={false}
plans={[
{ id: "pro", badge: "Highlighted", badgeIcon: CheckCircle, price: "$199", subtitle: "Best value plan", features: ["Everything in standard", "Dedicated support", "Custom analytics", "Unlimited projects"] }
]}
/>
</div>
<FooterBase
logoText="Switzerweb"
copyrightText="© 2026 | Switzerweb"
columns={[
{ title: "Entreprise", items: [{ label: "À Propos", href: "#about" }, { label: "Services", href: "#services" }, { label: "Contact", href: "#contact" }] },
{ title: "Services", items: [{ label: "Dév Web", href: "#" }, { label: "SEO", href: "#" }] },
]}
/>
</ReactLenis>
</ThemeProvider>
);
}

62
src/app/pricing/page.tsx Normal file
View File

@@ -0,0 +1,62 @@
"use client";
import ReactLenis from "lenis/react";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import NavbarLayoutFloatingOverlay from "@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay";
import FooterBase from "@/components/sections/footer/FooterBase";
import PricingCardThree from "@/components/sections/pricing/PricingCardThree";
export default function PricingPage() {
return (
<ThemeProvider
defaultButtonVariant="text-stagger"
defaultTextAnimation="entrance-slide"
borderRadius="pill"
contentWidth="medium"
sizing="medium"
background="none"
cardStyle="glass-elevated"
primaryButtonStyle="gradient"
secondaryButtonStyle="glass"
headingFontWeight="medium"
>
<ReactLenis root>
<NavbarLayoutFloatingOverlay
brandName="Switzerweb"
navItems={[
{ name: "Réalisations", id: "work" },
{ name: "Services", id: "services" },
{ name: "À Propos", id: "about" },
{ name: "Contact", id: "contact" },
{ name: "Pricing", id: "/pricing" },
{ name: "Nos Offres", id: "/comparison" },
{ name: "Pricing Highlights", id: "/pricing-highlighted" }
]}
button={{ text: "Démarrer", href: "#contact" }}
/>
<div id="pricing" className="pt-32 pb-20">
<PricingCardThree
title="Nos Plans Tarifaires"
description="Choisissez l'offre qui propulsera votre projet vers le succès."
animationType="slide-up"
textboxLayout="default"
useInvertedBackground={false}
plans={[
{ id: "starter", price: "$49", name: "Starter", features: ["SEO de base", "Design Réactif", "Maintenance Mensuelle"], buttons: [{ text: "Démarrer", href: "#" }] },
{ id: "growth", price: "$99", name: "Growth", features: ["SEO Avancé", "Stratégie Digitale", "Support 24/7", "Analytique"], buttons: [{ text: "Choisir", href: "#" }] },
{ id: "pro", price: "$199", name: "Pro", features: ["Tout le pack Growth", "UI/UX Personnalisé", "Gestionnaire Dédié", "Performance Optimisée"], buttons: [{ text: "Passer au niveau supérieur", href: "#" }] }
]}
/>
</div>
<FooterBase
logoText="Switzerweb"
copyrightText="© 2026 | Switzerweb"
columns={[
{ title: "Entreprise", items: [{ label: "À Propos", href: "#about" }, { label: "Services", href: "#services" }, { label: "Contact", href: "#contact" }] },
{ title: "Services", items: [{ label: "Dév Web", href: "#" }, { label: "SEO", href: "#" }] },
]}
/>
</ReactLenis>
</ThemeProvider>
);
}

View File

@@ -10,15 +10,15 @@
--accent: #ffffff;
--background-accent: #ffffff; */
--background: #0a0a0a;
--card: #161616;
--foreground: #f0f0f0;
--background: #ffffff;
--card: #ffffff;
--foreground: #000612;
--primary-cta: #ffffff;
--primary-cta-text: #0a0a0a;
--secondary-cta: #1e1e1e;
--secondary-cta: #ffffff;
--secondary-cta-text: #e0e0e0;
--accent: #d0d0d0;
--background-accent: #9a9a9a;
--accent: #e2e2e2;
--background-accent: #f9f9f9;
/* text sizing - set by ThemeProvider */
/* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem);