Merge version_2 into main #2
@@ -1,57 +1,20 @@
|
||||
import type { Metadata } from "next";
|
||||
import { Halant } from "next/font/google";
|
||||
import { Inter } from "next/font/google";
|
||||
import { Nunito } from "next/font/google";
|
||||
import "./globals.css";
|
||||
import { ServiceWrapper } from "@/components/ServiceWrapper";
|
||||
import Tag from "@/tag/Tag";
|
||||
|
||||
const halant = Halant({
|
||||
variable: "--font-halant", subsets: ["latin"],
|
||||
weight: ["300", "400", "500", "600", "700"],
|
||||
});
|
||||
|
||||
const inter = Inter({
|
||||
variable: "--font-inter", subsets: ["latin"],
|
||||
});
|
||||
|
||||
const nunito = Nunito({
|
||||
variable: "--font-nunito", subsets: ["latin"],
|
||||
});
|
||||
const inter = Inter({ variable: "--font-inter", subsets: ["latin"] });
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title: "GiustoCosì | Fine Dining in Treviglio", description: "Experience innovative Italian cuisine at GiustoCosì. Located in Treviglio's historic center, we offer signature dishes and exceptional hospitality led by Chef Niccolò.", keywords: "fine dining Treviglio, Italian restaurant, innovative cuisine, Gyrozoncelli, reservations", metadataBase: new URL("https://giustocosi.it"),
|
||||
alternates: {
|
||||
canonical: "https://giustocosi.it"},
|
||||
openGraph: {
|
||||
title: "GiustoCosì | Elegant Dining Experience", description: "Discover signature dishes and warm hospitality in historic Treviglio", url: "https://giustocosi.it", siteName: "GiustoCosì", type: "website", images: [
|
||||
{
|
||||
url: "http://img.b2bpic.net/free-photo/side-view-couple-having-lunch_23-2150598339.jpg", alt: "GiustoCosì elegant dining room"},
|
||||
],
|
||||
},
|
||||
twitter: {
|
||||
card: "summary_large_image", title: "GiustoCosì | Fine Dining", description: "Experience innovative Italian cuisine in Treviglio", images: ["http://img.b2bpic.net/free-photo/side-view-couple-having-lunch_23-2150598339.jpg"],
|
||||
},
|
||||
robots: {
|
||||
index: true,
|
||||
follow: true,
|
||||
},
|
||||
};
|
||||
title: "GiustoCosì - Fine Dining in Treviglio", description: "Discover innovative cuisine and exceptional hospitality at GiustoCosì, a fine dining restaurant in Treviglio's historic center."};
|
||||
|
||||
export default function RootLayout({
|
||||
children,
|
||||
}: Readonly<{
|
||||
}: {
|
||||
children: React.ReactNode;
|
||||
}>) {
|
||||
}) {
|
||||
return (
|
||||
<html lang="en" suppressHydrationWarning>
|
||||
<ServiceWrapper>
|
||||
<body
|
||||
className={`${halant.variable} ${inter.variable} ${nunito.variable} antialiased`}
|
||||
>
|
||||
<Tag />
|
||||
{children}
|
||||
|
||||
<html lang="en">
|
||||
<body className={inter.variable}>{children}
|
||||
<script
|
||||
dangerouslySetInnerHTML={{
|
||||
__html: `
|
||||
@@ -1419,7 +1382,6 @@ export default function RootLayout({
|
||||
}}
|
||||
/>
|
||||
</body>
|
||||
</ServiceWrapper>
|
||||
</html>
|
||||
);
|
||||
}
|
||||
|
||||
120
src/app/page.tsx
120
src/app/page.tsx
@@ -11,7 +11,7 @@ import FooterBaseReveal from '@/components/sections/footer/FooterBaseReveal';
|
||||
import { Sparkles, Heart, ChefHat, Utensils, Flame, Zap, Leaf, Wine, Star, Quote } from 'lucide-react';
|
||||
|
||||
const handleReservationSubmit = (data: Record<string, string>) => {
|
||||
console.log('Reservation submitted:', data);
|
||||
console.log('Prenotazione inviata:', data);
|
||||
};
|
||||
|
||||
export default function LandingPage() {
|
||||
@@ -32,29 +32,29 @@ export default function LandingPage() {
|
||||
<NavbarStyleCentered
|
||||
navItems={[
|
||||
{ name: "Home", id: "home" },
|
||||
{ name: "About", id: "about" },
|
||||
{ name: "Chi Siamo", id: "about" },
|
||||
{ name: "Menu", id: "features" },
|
||||
{ name: "Reviews", id: "testimonials" },
|
||||
{ name: "Contact", id: "contact" }
|
||||
{ name: "Recensioni", id: "testimonials" },
|
||||
{ name: "Contatti", id: "contact" }
|
||||
]}
|
||||
button={{ text: "Book a Table", href: "contact" }}
|
||||
button={{ text: "Prenota un Tavolo", href: "contact" }}
|
||||
brandName="GiustoCosì"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="hero" data-section="hero">
|
||||
<HeroBillboardScroll
|
||||
title="Welcome to GiustoCosì"
|
||||
description="Discover innovative cuisine and exceptional hospitality in the heart of Treviglio's historic center"
|
||||
tag="Fine Dining Experience"
|
||||
title="Benvenuti a GiustoCosì"
|
||||
description="Scopri una cucina innovativa e un'ospitalità eccezionale nel cuore del centro storico di Treviglio"
|
||||
tag="Esperienza di Cucina Fine Dining"
|
||||
tagIcon={Sparkles}
|
||||
tagAnimation="slide-up"
|
||||
background={{ variant: "plain" }}
|
||||
imageSrc="http://img.b2bpic.net/free-photo/side-view-couple-having-lunch_23-2150598339.jpg"
|
||||
imageAlt="Elegant dining room at GiustoCosì"
|
||||
imageAlt="Elegante sala da pranzo presso GiustoCosì"
|
||||
buttons={[
|
||||
{ text: "Reserve Your Table", href: "contact" },
|
||||
{ text: "Call Now", onClick: () => window.open('tel:+39XXXXXXXXXX') }
|
||||
{ text: "Prenota il Tuo Tavolo", href: "contact" },
|
||||
{ text: "Chiama Ora", onClick: () => window.open('tel:+39XXXXXXXXXX') }
|
||||
]}
|
||||
buttonAnimation="slide-up"
|
||||
/>
|
||||
@@ -62,14 +62,14 @@ export default function LandingPage() {
|
||||
|
||||
<div id="about" data-section="about">
|
||||
<TestimonialAboutCard
|
||||
tag="Our Story"
|
||||
tag="La Nostra Storia"
|
||||
tagIcon={Heart}
|
||||
title="Where Historic Charm Meets Modern Innovation"
|
||||
description="Founded and led by Niccolò"
|
||||
subdescription="Located on Via Roma, Treviglio"
|
||||
title="Dove il Fascino Storico Incontra l'Innovazione Moderna"
|
||||
description="Fondato e gestito da Niccolò"
|
||||
subdescription="Situato su Via Roma, Treviglio"
|
||||
icon={ChefHat}
|
||||
imageSrc="http://img.b2bpic.net/free-photo/portrait-waitress-standing-with-disposable-coffee-cup_107420-12313.jpg"
|
||||
imageAlt="Niccolò at GiustoCosì restaurant"
|
||||
imageAlt="Niccolò presso il ristorante GiustoCosì"
|
||||
mediaAnimation="slide-up"
|
||||
useInvertedBackground={true}
|
||||
/>
|
||||
@@ -77,38 +77,38 @@ export default function LandingPage() {
|
||||
|
||||
<div id="features" data-section="features">
|
||||
<FeatureCardTwentyFive
|
||||
title="Signature Dishes"
|
||||
description="Experience innovative twists on classics, crafted with premium ingredients"
|
||||
tag="Menu Highlights"
|
||||
title="Piatti Signature"
|
||||
description="Sperimenta innovativi ritorni ai classici, preparati con ingredienti premium"
|
||||
tag="Highlights del Menu"
|
||||
tagIcon={Utensils}
|
||||
tagAnimation="slide-up"
|
||||
features={[
|
||||
{
|
||||
title: "Gyrozoncelli", description: "Our legendary signature dish - a masterpiece of innovation and tradition", icon: Flame,
|
||||
title: "Gyrozoncelli", description: "Il nostro leggendario piatto signature - un capolavoro di innovazione e tradizione", icon: Flame,
|
||||
mediaItems: [
|
||||
{ imageSrc: "http://img.b2bpic.net/free-photo/seafood-salad-with-crabsters-mussels_114579-2138.jpg", imageAlt: "Gyrozoncelli presentation" },
|
||||
{ imageSrc: "http://img.b2bpic.net/free-photo/close-up-asian-dish-plate-with-chopsticks_23-2148694396.jpg", imageAlt: "Gyrozoncelli plating detail" }
|
||||
{ imageSrc: "http://img.b2bpic.net/free-photo/seafood-salad-with-crabsters-mussels_114579-2138.jpg", imageAlt: "Presentazione Gyrozoncelli" },
|
||||
{ imageSrc: "http://img.b2bpic.net/free-photo/close-up-asian-dish-plate-with-chopsticks_23-2148694396.jpg", imageAlt: "Dettaglio dell'impiattamento Gyrozoncelli" }
|
||||
]
|
||||
},
|
||||
{
|
||||
title: "Slow-Cooked Beef Cheek", description: "Tender, melt-in-mouth perfection with refined accompaniments", icon: Zap,
|
||||
title: "Guancia di Manzo Cotta a Fuoco Lento", description: "Tenerezza che si scioglie in bocca con accompagnamenti raffinati", icon: Zap,
|
||||
mediaItems: [
|
||||
{ imageSrc: "http://img.b2bpic.net/free-photo/high-angle-chef-plating-meal_23-2148794096.jpg", imageAlt: "Beef cheek dish presentation" },
|
||||
{ imageSrc: "http://img.b2bpic.net/free-photo/fried-chicken-topped-with-berry-sauce_140725-6150.jpg", imageAlt: "Beef cheek with sauce detail" }
|
||||
{ imageSrc: "http://img.b2bpic.net/free-photo/high-angle-chef-plating-meal_23-2148794096.jpg", imageAlt: "Presentazione piatto di guancia di manzo" },
|
||||
{ imageSrc: "http://img.b2bpic.net/free-photo/fried-chicken-topped-with-berry-sauce_140725-6150.jpg", imageAlt: "Dettaglio guancia di manzo con salsa" }
|
||||
]
|
||||
},
|
||||
{
|
||||
title: "Seasonal Specialties", description: "Fresh ingredients showcasing the best of Italian culinary tradition", icon: Leaf,
|
||||
title: "Specialità Stagionali", description: "Ingredienti freschi che mostrano il meglio della tradizione culinaria italiana", icon: Leaf,
|
||||
mediaItems: [
|
||||
{ imageSrc: "http://img.b2bpic.net/free-photo/healthy-food-composition-with-colorful-salad_23-2147992909.jpg", imageAlt: "Seasonal specialty dish" },
|
||||
{ imageSrc: "http://img.b2bpic.net/free-photo/seafood-cleaning-process-kitchen_23-2150171373.jpg", imageAlt: "Seasonal ingredients showcase" }
|
||||
{ imageSrc: "http://img.b2bpic.net/free-photo/healthy-food-composition-with-colorful-salad_23-2147992909.jpg", imageAlt: "Piatto specialità stagionale" },
|
||||
{ imageSrc: "http://img.b2bpic.net/free-photo/seafood-cleaning-process-kitchen_23-2150171373.jpg", imageAlt: "Vetrina ingredienti stagionali" }
|
||||
]
|
||||
},
|
||||
{
|
||||
title: "Wine Selection", description: "Curated wines from Italy and beyond to elevate your dining", icon: Wine,
|
||||
title: "Selezione di Vini", description: "Vini selezionati dall'Italia e non solo per elevare la tua esperienza culinaria", icon: Wine,
|
||||
mediaItems: [
|
||||
{ imageSrc: "http://img.b2bpic.net/free-photo/assorted-food-near-oils_23-2147930122.jpg", imageAlt: "Wine cellar selection" },
|
||||
{ imageSrc: "http://img.b2bpic.net/free-photo/people-having-dinner-luxurious-restaurants_23-2151081860.jpg", imageAlt: "Wine pairing service" }
|
||||
{ imageSrc: "http://img.b2bpic.net/free-photo/assorted-food-near-oils_23-2147930122.jpg", imageAlt: "Selezione della cantina" },
|
||||
{ imageSrc: "http://img.b2bpic.net/free-photo/people-having-dinner-luxurious-restaurants_23-2151081860.jpg", imageAlt: "Servizio abbinamento vini" }
|
||||
]
|
||||
}
|
||||
]}
|
||||
@@ -121,29 +121,29 @@ export default function LandingPage() {
|
||||
|
||||
<div id="testimonials" data-section="testimonials">
|
||||
<TestimonialCardTwo
|
||||
title="What Our Guests Say"
|
||||
description="Authentic reviews from satisfied diners who experience GiustoCosì's excellence"
|
||||
tag="Five-Star Reviews"
|
||||
title="Cosa Dicono i Nostri Ospiti"
|
||||
description="Recensioni autentiche da ospiti soddisfatti che sperimentano l'eccellenza di GiustoCosì"
|
||||
tag="Recensioni a Cinque Stelle"
|
||||
tagIcon={Star}
|
||||
tagAnimation="slide-up"
|
||||
testimonials={[
|
||||
{
|
||||
id: "1", name: "Elena Rossi", role: "Food Enthusiast", testimonial: "An absolute gem in Treviglio! The Gyrozoncelli was innovative and delicious. Niccolò's attention to detail and warmth made the evening unforgettable.", imageSrc: "http://img.b2bpic.net/free-photo/young-woman-walks-through-autumn-city-happy-body-female-with-curly-hair-raincoat_1321-4545.jpg", imageAlt: "Elena Rossi", icon: Quote
|
||||
id: "1", name: "Elena Rossi", role: "Appassionata di Gastronomia", testimonial: "Una vera gemma a Treviglio! Il Gyrozoncelli era innovativo e delizioso. L'attenzione al dettaglio di Niccolò e il suo calore hanno reso la serata indimenticabile.", imageSrc: "http://img.b2bpic.net/free-photo/young-woman-walks-through-autumn-city-happy-body-female-with-curly-hair-raincoat_1321-4545.jpg", imageAlt: "Elena Rossi", icon: Quote
|
||||
},
|
||||
{
|
||||
id: "2", name: "Marco Bianchi", role: "Regular Guest", testimonial: "The historic setting combined with modern cuisine is perfect. The slow-cooked beef cheek is exceptional. We bring all our guests here now.", imageSrc: "http://img.b2bpic.net/free-photo/confident-handsome-man-looking-into-distance_1262-3510.jpg", imageAlt: "Marco Bianchi", icon: Quote
|
||||
id: "2", name: "Marco Bianchi", role: "Ospite Abituale", testimonial: "L'ambientazione storica combinata con la cucina moderna è perfetta. La guancia di manzo cotta a fuoco lento è straordinaria. Portiamo tutti i nostri ospiti qui adesso.", imageSrc: "http://img.b2bpic.net/free-photo/confident-handsome-man-looking-into-distance_1262-3510.jpg", imageAlt: "Marco Bianchi", icon: Quote
|
||||
},
|
||||
{
|
||||
id: "3", name: "Giulia Ferrari", role: "Local Resident", testimonial: "Intimate, elegant, and dog-friendly! The staff is incredibly attentive without being intrusive. Niccolò truly cares about his guests. Highly recommend!", imageSrc: "http://img.b2bpic.net/free-photo/beautiful-woman-cafe_273609-12688.jpg", imageAlt: "Giulia Ferrari", icon: Quote
|
||||
id: "3", name: "Giulia Ferrari", role: "Residente Locale", testimonial: "Intimo, elegante e dog-friendly! Lo staff è incredibilmente attento senza essere invadente. Niccolò si prende veramente cura dei suoi ospiti. Altamente consigliato!", imageSrc: "http://img.b2bpic.net/free-photo/beautiful-woman-cafe_273609-12688.jpg", imageAlt: "Giulia Ferrari", icon: Quote
|
||||
},
|
||||
{
|
||||
id: "4", name: "Antonio Moretti", role: "Corporate Guest", testimonial: "Perfect for business dinners and romantic evenings alike. The wine selection is impressive and the service is impeccable. Best restaurant in Treviglio.", imageSrc: "http://img.b2bpic.net/free-photo/concentrated-young-businessman-walking-near-business-center_171337-19782.jpg", imageAlt: "Antonio Moretti", icon: Quote
|
||||
id: "4", name: "Antonio Moretti", role: "Ospite Aziendale", testimonial: "Perfetto per cene d'affari e serate romantiche. La selezione di vini è impressionante e il servizio è impeccabile. Il miglior ristorante a Treviglio.", imageSrc: "http://img.b2bpic.net/free-photo/concentrated-young-businessman-walking-near-business-center_171337-19782.jpg", imageAlt: "Antonio Moretti", icon: Quote
|
||||
},
|
||||
{
|
||||
id: "5", name: "Simona De Luca", role: "Culinary Writer", testimonial: "GiustoCosì showcases what modern Italian dining should be. Innovative without losing tradition, premium without pretension. Niccolò is a true hospitality master.", imageSrc: "http://img.b2bpic.net/free-photo/student-holding-coffee-taking-notes_23-2148552304.jpg", imageAlt: "Simona De Luca", icon: Quote
|
||||
id: "5", name: "Simona De Luca", role: "Critica Gastronomica", testimonial: "GiustoCosì mostra come dovrebbe essere la cucina italiana moderna. Innovativa senza perdere la tradizione, premium senza presunzione. Niccolò è un vero maestro dell'ospitalità.", imageSrc: "http://img.b2bpic.net/free-photo/student-holding-coffee-taking-notes_23-2148552304.jpg", imageAlt: "Simona De Luca", icon: Quote
|
||||
},
|
||||
{
|
||||
id: "6", name: "Paolo Gallo", role: "Frequent Diner", testimonial: "Every visit is special. The food is consistently excellent, and the ambiance is warm and welcoming. This is where I celebrate my most important moments.", imageSrc: "http://img.b2bpic.net/free-photo/looking-happy-confident-trustworthy-smiling-showing-victory-sign-with-positive-attitude_1194-632593.jpg", imageAlt: "Paolo Gallo", icon: Quote
|
||||
id: "6", name: "Paolo Gallo", role: "Ospite Frequente", testimonial: "Ogni visita è speciale. Il cibo è costantemente eccellente e l'atmosfera è calda e accogliente. Questo è il luogo dove celebro i miei momenti più importanti.", imageSrc: "http://img.b2bpic.net/free-photo/looking-happy-confident-trustworthy-smiling-showing-victory-sign-with-positive-attitude_1194-632593.jpg", imageAlt: "Paolo Gallo", icon: Quote
|
||||
}
|
||||
]}
|
||||
animationType="slide-up"
|
||||
@@ -155,21 +155,21 @@ export default function LandingPage() {
|
||||
|
||||
<div id="contact" data-section="contact">
|
||||
<ContactSplitForm
|
||||
title="Reserve Your Table"
|
||||
description="Book your dining experience at GiustoCosì. Our team will confirm your reservation promptly."
|
||||
title="Prenota il Tuo Tavolo"
|
||||
description="Prenota la tua esperienza culinaria presso GiustoCosì. Il nostro team confermerà la tua prenotazione prontamente."
|
||||
inputs={[
|
||||
{ name: "name", type: "text", placeholder: "Your Name", required: true },
|
||||
{ name: "email", type: "email", placeholder: "Your Email", required: true },
|
||||
{ name: "phone", type: "tel", placeholder: "Phone Number", required: true },
|
||||
{ name: "date", type: "date", placeholder: "Preferred Date", required: true }
|
||||
{ name: "name", type: "text", placeholder: "Il Tuo Nome", required: true },
|
||||
{ name: "email", type: "email", placeholder: "La Tua Email", required: true },
|
||||
{ name: "phone", type: "tel", placeholder: "Numero di Telefono", required: true },
|
||||
{ name: "date", type: "date", placeholder: "Data Preferita", required: true }
|
||||
]}
|
||||
textarea={{ name: "message", placeholder: "Special requests, dietary restrictions, or number of guests", rows: 4, required: true }}
|
||||
textarea={{ name: "message", placeholder: "Richieste speciali, restrizioni dietetiche o numero di ospiti", rows: 4, required: true }}
|
||||
useInvertedBackground={false}
|
||||
imageSrc="http://img.b2bpic.net/free-photo/beautiful-candles-restaurant_8353-9527.jpg"
|
||||
imageAlt="GiustoCosì intimate dining ambiance"
|
||||
imageAlt="Atmosfera intima di GiustoCosì"
|
||||
mediaAnimation="slide-up"
|
||||
mediaPosition="right"
|
||||
buttonText="Confirm Reservation"
|
||||
buttonText="Conferma Prenotazione"
|
||||
onSubmit={handleReservationSubmit}
|
||||
/>
|
||||
</div>
|
||||
@@ -178,31 +178,31 @@ export default function LandingPage() {
|
||||
<FooterBaseReveal
|
||||
columns={[
|
||||
{
|
||||
title: "Restaurant", items: [
|
||||
{ label: "About Us", href: "#about" },
|
||||
{ label: "Our Menu", href: "#features" },
|
||||
{ label: "Reservations", href: "#contact" },
|
||||
{ label: "Reviews", href: "#testimonials" }
|
||||
title: "Ristorante", items: [
|
||||
{ label: "Chi Siamo", href: "#about" },
|
||||
{ label: "Il Nostro Menu", href: "#features" },
|
||||
{ label: "Prenotazioni", href: "#contact" },
|
||||
{ label: "Recensioni", href: "#testimonials" }
|
||||
]
|
||||
},
|
||||
{
|
||||
title: "Connect", items: [
|
||||
{ label: "Call Us", href: "tel:+39XXXXXXXXXX" },
|
||||
title: "Contattaci", items: [
|
||||
{ label: "Chiamaci", href: "tel:+39XXXXXXXXXX" },
|
||||
{ label: "Email", href: "mailto:info@giustocosi.it" },
|
||||
{ label: "Instagram", href: "https://instagram.com" },
|
||||
{ label: "Facebook", href: "https://facebook.com" }
|
||||
]
|
||||
},
|
||||
{
|
||||
title: "Location", items: [
|
||||
title: "Posizione", items: [
|
||||
{ label: "Via Roma", href: "#" },
|
||||
{ label: "Treviglio, Italy", href: "#" },
|
||||
{ label: "Treviglio, Italia", href: "#" },
|
||||
{ label: "Dog-Friendly", href: "#" },
|
||||
{ label: "Street Parking", href: "#" }
|
||||
{ label: "Parcheggio in Strada", href: "#" }
|
||||
]
|
||||
}
|
||||
]}
|
||||
copyrightText="© 2025 GiustoCosì | Fine Dining in Treviglio"
|
||||
copyrightText="© 2025 GiustoCosì | Fine Dining a Treviglio"
|
||||
/>
|
||||
</div>
|
||||
</ThemeProvider>
|
||||
|
||||
Reference in New Issue
Block a user