5 Commits

Author SHA1 Message Date
848789df7d Update src/app/styles/variables.css 2026-03-03 18:06:32 +00:00
b58009d620 Update src/app/styles/base.css 2026-03-03 18:06:30 +00:00
16d98354af Update src/app/page.tsx 2026-03-03 18:06:29 +00:00
88e7bae30b Update src/app/layout.tsx 2026-03-03 18:06:26 +00:00
39e38ee7d3 Merge version_1 into main
Merge version_1 into main
2026-03-03 10:53:14 +00:00
4 changed files with 91 additions and 88 deletions

View File

@@ -1,17 +1,17 @@
import type { Metadata } from "next"; import type { Metadata } from "next";
import { Halant } from "next/font/google"; import { Cormorant_Garamond } from "next/font/google";
import { Inter } from "next/font/google"; import { Lora } from "next/font/google";
import "./globals.css"; import "./globals.css";
import { ServiceWrapper } from "@/components/ServiceWrapper"; import { ServiceWrapper } from "@/components/ServiceWrapper";
import Tag from "@/tag/Tag"; import Tag from "@/tag/Tag";
const halant = Halant({ const cormorantGaramond = Cormorant_Garamond({
variable: "--font-halant", subsets: ["latin"], variable: "--font-cormorant-garamond", subsets: ["latin"],
weight: ["300", "400", "500", "600", "700"], weight: ["300", "400", "500", "600", "700"],
}); });
const inter = Inter({ const lora = Lora({
variable: "--font-inter", subsets: ["latin"], variable: "--font-lora", subsets: ["latin"],
}); });
export const metadata: Metadata = { export const metadata: Metadata = {
@@ -39,7 +39,7 @@ export default function RootLayout({
<html lang="en" suppressHydrationWarning> <html lang="en" suppressHydrationWarning>
<ServiceWrapper> <ServiceWrapper>
<body <body
className={`${halant.variable} ${inter.variable} antialiased`} className={`${cormorantGaramond.variable} ${lora.variable} antialiased`}
> >
<Tag /> <Tag />
{children} {children}

View File

@@ -43,42 +43,42 @@ export default function LandingPage() {
<div id="hero" data-section="hero"> <div id="hero" data-section="hero">
<HeroBillboard <HeroBillboard
title="Woodfired pizza, fresh ingredients, delivered fast" title="Bienvenue à Notre Pizzeria"
description="Order online for pickup or delivery. Handcrafted pizzas made to order with premium toppings" description="Découvrez l'authenticité du four à bois, les ingrédients frais et l'essence de la cuisine italienne traditionnelle en Provence"
background={{ variant: "sparkles-gradient" }} background={{ variant: "sparkles-gradient" }}
tag="Premium Italian" tag="Pizzeria Française"
tagIcon={Flame} tagIcon={Flame}
buttons={[ buttons={[
{ text: "Order now", href: "#pricing" }, { text: "Commander maintenant", href: "#pricing" },
{ text: "View Menu", href: "#menu" }, { text: "Voir le menu", href: "#menu" },
]} ]}
imageSrc="http://img.b2bpic.net/free-photo/baking-delicious-pizza-with-wood-fired-oven_23-2150134278.jpg" imageSrc="http://img.b2bpic.net/free-photo/baking-delicious-pizza-with-wood-fired-oven_23-2150134278.jpg"
imageAlt="Woodfired pizza with fresh ingredients" imageAlt="Pizza cuite au four à bois avec ingrédients frais"
/> />
</div> </div>
<div id="about" data-section="about"> <div id="about" data-section="about">
<TextAbout <TextAbout
tag="Craft & Passion" tag="Artisanat & Passion"
tagIcon={Heart} tagIcon={Heart}
title="We believe in the art of authentic pizza-making. Every pizza is crafted with premium ingredients, time-honored techniques, and a passion for delivering exceptional flavors to your table." title="Nous croyons en l'art véritable de la fabrication de la pizza. Chaque pizza est élaborée avec des ingrédients premium, des techniques transmises depuis des générations, et une passion pour livrer des saveurs exceptionnelles à votre table."
useInvertedBackground={false} useInvertedBackground={false}
buttons={[{ text: "Discover Our Story", href: "#" }]} buttons={[{ text: "Découvrir Notre Histoire", href: "#" }]}
/> />
</div> </div>
<div id="menu" data-section="menu"> <div id="menu" data-section="menu">
<ProductCardOne <ProductCardOne
title="Featured Pizzas" title="Pizzas Signature"
description="Explore our signature pizzas crafted with premium toppings and authentic recipes" description="Explorez nos pizzas signature conçues avec des garnitures premium et des recettes authentiques inspirées de la gastronomie française"
tag="Menu" tag="Menu"
products={[ products={[
{ {
id: "1", name: "Margherita Classica", price: "$14.99", imageSrc: "http://img.b2bpic.net/free-photo/delicious-vegan-pizza-social-post_23-2151895448.jpg", imageAlt: "Margherita Classica pizza"}, id: "1", name: "Margherita Classique", price: "14,99", imageSrc: "http://img.b2bpic.net/free-photo/delicious-vegan-pizza-social-post_23-2151895448.jpg", imageAlt: "Pizza Margherita Classique"},
{ {
id: "2", name: "Pepperoni Extravaganza", price: "$16.99", imageSrc: "http://img.b2bpic.net/free-photo/flat-lay-composition-with-hot-pepperoni-pizza-wooden-table_632805-19.jpg", imageAlt: "Pepperoni Extravaganza pizza"}, id: "2", name: "Extravagance Pepperoni", price: "16,99", imageSrc: "http://img.b2bpic.net/free-photo/flat-lay-composition-with-hot-pepperoni-pizza-wooden-table_632805-19.jpg", imageAlt: "Pizza Extravagance Pepperoni"},
{ {
id: "3", name: "Veggie Garden Delight", price: "$15.99", imageSrc: "http://img.b2bpic.net/free-photo/pizza-is-wooden-tray-topped-with-red-onions-black-grapes-tomatoes-lettuce_1150-24487.jpg", imageAlt: "Veggie Garden Delight pizza"}, id: "3", name: "Délice Jardin Provençal", price: "15,99", imageSrc: "http://img.b2bpic.net/free-photo/pizza-is-wooden-tray-topped-with-red-onions-black-grapes-tomatoes-lettuce_1150-24487.jpg", imageAlt: "Pizza Délice Jardin Provençal"},
]} ]}
gridVariant="three-columns-all-equal-width" gridVariant="three-columns-all-equal-width"
animationType="slide-up" animationType="slide-up"
@@ -89,18 +89,18 @@ export default function LandingPage() {
<div id="features" data-section="features"> <div id="features" data-section="features">
<FeatureCardTwentySeven <FeatureCardTwentySeven
title="Why Choose Our Pizzeria" title="Pourquoi Choisir Notre Pizzeria"
description="Experience the difference quality and passion make" description="Découvrez la différence que la qualité et la passion apportent"
tag="Our Advantages" tag="Nos Avantages"
features={[ features={[
{ {
id: "1", title: "Authentic Wood-Fired Oven", description: "All our pizzas are cooked in a traditional wood-fired oven at 900°F, creating the perfect crust every time."}, id: "1", title: "Four à Bois Authentique", description: "Toutes nos pizzas sont cuites dans un four à bois traditionnel à 900°C, créant la croûte parfaite à chaque fois."},
{ {
id: "2", title: "Premium Fresh Ingredients", description: "We source the finest imported ingredients and local produce to ensure superior taste and quality in every bite."}, id: "2", title: "Ingrédients Frais Premium", description: "Nous sélectionnons les plus beaux ingrédients importés et les produits locaux provençaux pour assurer une qualité supérieure."},
{ {
id: "3", title: "Fast Online Ordering", description: "Order ahead online for convenient pickup or delivery, with real-time tracking to know exactly when your pizza arrives."}, id: "3", title: "Commande Rapide en Ligne", description: "Commandez en ligne pour un retrait ou une livraison pratiques, avec suivi en temps réel de votre pizza."},
{ {
id: "4", title: "Customizable Pizzas", description: "Create your own pizza masterpiece with our extensive selection of premium toppings and sauce options."}, id: "4", title: "Pizzas Personnalisables", description: "Créez votre propre chef-d'œuvre avec notre sélection étendue de garnitures premium et options de sauce."},
]} ]}
gridVariant="four-items-2x2-equal-grid" gridVariant="four-items-2x2-equal-grid"
animationType="slide-up" animationType="slide-up"
@@ -111,34 +111,34 @@ export default function LandingPage() {
<div id="pricing" data-section="pricing"> <div id="pricing" data-section="pricing">
<PricingCardThree <PricingCardThree
title="Delivery & Pickup Options" title="Options de Livraison & Retrait"
description="Choose how you'd like to enjoy our delicious pizzas" description="Choisissez comment vous aimeriez profiter de nos délicieuses pizzas"
tag="Order Today" tag="Commandez Aujourd'hui"
plans={[ plans={[
{ {
id: "1", badge: "Most Popular", badgeIcon: Zap, id: "1", badge: "Le Plus Populaire", badgeIcon: Zap,
price: "$8.99", name: "Delivery", buttons: [ price: "8,99", name: "Livraison", buttons: [
{ text: "Order Delivery", href: "#" }, { text: "Commander Livraison", href: "#" },
{ text: "View Tracking", href: "#" }, { text: "Suivre Commande", href: "#" },
], ],
features: [ features: [
"Fast 30-45 minute delivery", "Order tracking included", "Hot pizza guaranteed", "Minimum order $15"], "Livraison rapide 30-45 minutes", "Suivi de commande inclus", "Pizza livrée chaude garantie", "Commande minimum 15"],
}, },
{ {
id: "2", price: "Free", name: "Pickup", buttons: [ id: "2", price: "Gratuit", name: "Retrait", buttons: [
{ text: "Order Pickup", href: "#" }, { text: "Commander Retrait", href: "#" },
{ text: "Reserve Table", href: "#" }, { text: "Réserver Table", href: "#" },
], ],
features: [ features: [
"Ready in 20-30 minutes", "Walk in anytime", "Dine-in available", "No delivery fee"], "Prêt en 20-30 minutes", "Venez quand vous voulez", "Dîner sur place disponible", "Pas de frais de livraison"],
}, },
{ {
id: "3", price: "Ask Us", name: "Catering", buttons: [ id: "3", price: "Nous consulter", name: "Catering", buttons: [
{ text: "Contact for Catering", href: "#contact" }, { text: "Demande de Catering", href: "#contact" },
{ text: "View Menu", href: "#menu" }, { text: "Voir Menu", href: "#menu" },
], ],
features: [ features: [
"Large party pizzas", "Custom menu options", "Setup & service available", "Volume discounts"], "Pizzas pour grands groupes", "Menu personnalisé", "Service et installation disponibles", "Réductions volume"],
}, },
]} ]}
animationType="slide-up" animationType="slide-up"
@@ -149,19 +149,22 @@ export default function LandingPage() {
<div id="testimonials" data-section="testimonials"> <div id="testimonials" data-section="testimonials">
<TestimonialCardThirteen <TestimonialCardThirteen
title="What Our Customers Say" title="Ce Que Nos Clients Disent"
description="Join thousands of satisfied customers who love our pizzas" description="Rejoignez des milliers de clients satisfaits qui adorent nos pizzas"
tag="Testimonials" tag="Témoignages"
testimonials={[ testimonials={[
{ {
id: "1", name: "Sarah Johnson", handle: "@sarahj", testimonial: "The best pizza I've had outside of Italy! The wood-fired oven makes all the difference. Fast delivery, delicious pizza, highly recommend!", rating: 5, id: "1", name: "Sophie Martin", handle: "@sophiemartinprov", testimonial: "La meilleure pizza que j'ai mangée en dehors de l'Italie! Le four à bois fait toute la différence. Livraison rapide, pizza délicieuse, je recommande vivement!", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/picture-beautiful-smiling-woman-against-blurry-background_181624-19438.jpg", imageAlt: "Sarah Johnson"}, imageSrc: "http://img.b2bpic.net/free-photo/picture-beautiful-smiling-woman-against-blurry-background_181624-19438.jpg", imageAlt: "Sophie Martin"},
{ {
id: "2", name: "Michael Chen", handle: "@mchen", testimonial: "Amazing quality and fresh ingredients. Our family orders from here every Friday night. The customization options are fantastic!", rating: 5, imageSrc: "http://img.b2bpic.net/free-photo/close-up-portrait-young-handsome-successful-man_1163-5475.jpg", imageAlt: "Michael Chen"}, id: "2", name: "Marc Dubois", handle: "@marcdubois", testimonial: "Qualité exceptionnelle et ingrédients frais. Notre famille commande chaque vendredi soir. Les options de personnalisation sont fantastiques!", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/close-up-portrait-young-handsome-successful-man_1163-5475.jpg", imageAlt: "Marc Dubois"},
{ {
id: "3", name: "Emily Rodriguez", handle: "@emilyeats", testimonial: "Finally, authentic woodfired pizza in our neighborhood! The crust is perfect, toppings are generous, and service is quick. Worth every penny.", rating: 5, imageSrc: "http://img.b2bpic.net/free-photo/young-businesswoman-portrait-office_1262-1506.jpg", imageAlt: "Emily Rodriguez"}, id: "3", name: "Émilie Rousseau", handle: "@emilieeats", testimonial: "Enfin, une véritable pizza au four à bois dans notre quartier! La croûte est parfaite, les garnitures généreuses, et le service rapide. À réessayer!", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/young-businesswoman-portrait-office_1262-1506.jpg", imageAlt: "Émilie Rousseau"},
{ {
id: "4", name: "David Kim", handle: "@davidkim", testimonial: "Ordered 3 times this month - never disappointed. The online ordering system is super easy, and pizza arrives hot and fresh. Best local spot!", rating: 5, imageSrc: "http://img.b2bpic.net/free-photo/smiling-millennial-man-looking-camera-cafe-headshot-portrait_1163-5163.jpg", imageAlt: "David Kim"}, id: "4", name: "Pierre Laurent", handle: "@pierrelaurent", testimonial: "J'ai commandé 3 fois ce mois-ci - jamais déçu. Le système de commande en ligne est super facile, et la pizza arrive chaude et fraîche. Meilleur endroit local!", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/smiling-millennial-man-looking-camera-cafe-headshot-portrait_1163-5163.jpg", imageAlt: "Pierre Laurent"},
]} ]}
showRating={true} showRating={true}
animationType="slide-up" animationType="slide-up"
@@ -172,15 +175,15 @@ export default function LandingPage() {
<div id="contact" data-section="contact"> <div id="contact" data-section="contact">
<ContactCenter <ContactCenter
tag="Stay Connected" tag="Restez Connecté"
tagIcon={Mail} tagIcon={Mail}
title="Join Our Pizza Lovers Community" title="Rejoignez Notre Communauté d'Amateurs de Pizza"
description="Subscribe to get special offers, new menu items, and pizza tips delivered to your inbox every week." description="Abonnez-vous pour recevoir nos offres spéciales, nouveaux menus et conseils de pizza livrés dans votre boîte mail chaque semaine."
background={{ variant: "radial-gradient" }} background={{ variant: "radial-gradient" }}
useInvertedBackground={false} useInvertedBackground={false}
inputPlaceholder="Enter your email" inputPlaceholder="Entrez votre email"
buttonText="Subscribe" buttonText="S'abonner"
termsText="We respect your privacy. Unsubscribe anytime. Special promotions and menu updates only." termsText="Nous respectons votre vie privée. Désinscrivez-vous à tout moment. Promotions spéciales et mises à jour menu uniquement."
/> />
</div> </div>
@@ -188,23 +191,23 @@ export default function LandingPage() {
<FooterSimple <FooterSimple
columns={[ columns={[
{ {
title: "Navigate", items: [ title: "Navigation", items: [
{ label: "Home", href: "#" }, { label: "Accueil", href: "#" },
{ label: "Menu", href: "#menu" }, { label: "Menu", href: "#menu" },
{ label: "Order", href: "#pricing" }, { label: "Commander", href: "#pricing" },
{ label: "About", href: "#about" }, { label: "À Propos", href: "#about" },
], ],
}, },
{ {
title: "Contact", items: [ title: "Contact", items: [
{ label: "Phone: (555) 123-4567", href: "#" }, { label: "Tél: (04) 92 XX-XX-XX", href: "#" },
{ label: "Email: hello@pizzeria.com", href: "#" }, { label: "Email: hello@pizzeria.fr", href: "#" },
{ label: "123 Main Street", href: "#" }, { label: "123 Rue Principale, Provence", href: "#" },
{ label: "Open 11am - 11pm Daily", href: "#" }, { label: "Ouvert 11h - 23h Tous les jours", href: "#" },
], ],
}, },
{ {
title: "Follow", items: [ title: "Suivez-Nous", items: [
{ label: "Instagram", href: "#" }, { label: "Instagram", href: "#" },
{ label: "Facebook", href: "#" }, { label: "Facebook", href: "#" },
{ label: "Twitter", href: "#" }, { label: "Twitter", href: "#" },
@@ -212,16 +215,16 @@ export default function LandingPage() {
], ],
}, },
{ {
title: "Legal", items: [ title: "Légal", items: [
{ label: "Privacy Policy", href: "#" }, { label: "Politique de Confidentialité", href: "#" },
{ label: "Terms & Conditions", href: "#" }, { label: "Conditions Générales", href: "#" },
{ label: "Accessibility", href: "#" }, { label: "Accessibilité", href: "#" },
{ label: "Sitemap", href: "#" }, { label: "Plan du Site", href: "#" },
], ],
}, },
]} ]}
bottomLeftText="© 2025 Pizzeria. All rights reserved." bottomLeftText="© 2025 Pizzeria. Tous droits réservés."
bottomRightText="Handcrafted with passion and fresh ingredients" bottomRightText="Élaborée avec passion et ingrédients frais"
/> />
</div> </div>
</ThemeProvider> </ThemeProvider>

View File

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

View File

@@ -2,23 +2,23 @@
/* Base units */ /* Base units */
/* --vw is set by ThemeProvider */ /* --vw is set by ThemeProvider */
/* --background: #f7f6f7;; /* --background: #f5ede5;;
--card: #ffffff;; --card: #fefbf7;;
--foreground: #0c1325;; --foreground: #3d2817;;
--primary-cta: #0b07ff;; --primary-cta: #8b4513;;
--secondary-cta: #ffffff;; --secondary-cta: #ffffff;;
--accent: #93b7ff;; --accent: #d4a574;;
--background-accent: #a8bae8;; */ --background-accent: #c9a878;; */
--background: #f7f6f7;; --background: #f5ede5;;
--card: #ffffff;; --card: #fefbf7;;
--foreground: #0c1325;; --foreground: #3d2817;;
--primary-cta: #0b07ff;; --primary-cta: #8b4513;;
--primary-cta-text: #f7f6f7;; --primary-cta-text: #f7f6f7;;
--secondary-cta: #ffffff;; --secondary-cta: #ffffff;;
--secondary-cta-text: #0c1325;; --secondary-cta-text: #0c1325;;
--accent: #93b7ff;; --accent: #d4a574;;
--background-accent: #a8bae8;; --background-accent: #c9a878;;
/* text sizing - set by ThemeProvider */ /* text sizing - set by ThemeProvider */
/* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem); /* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem);