270 lines
14 KiB
TypeScript
270 lines
14 KiB
TypeScript
"use client"
|
|
|
|
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
|
import NavbarLayoutFloatingInline from '@/components/navbar/NavbarLayoutFloatingInline';
|
|
import HeroBillboardCarousel from '@/components/sections/hero/HeroBillboardCarousel';
|
|
import AboutMetric from '@/components/sections/about/AboutMetric';
|
|
import FeatureCardTwentyTwo from '@/components/sections/feature/FeatureCardTwentyTwo';
|
|
import ProductCardFour from '@/components/sections/product/ProductCardFour';
|
|
import TestimonialCardSixteen from '@/components/sections/testimonial/TestimonialCardSixteen';
|
|
import MetricCardTwo from '@/components/sections/metrics/MetricCardTwo';
|
|
import ContactFaq from '@/components/sections/contact/ContactFaq';
|
|
import FooterBase from '@/components/sections/footer/FooterBase';
|
|
import { Award, ChefHat, Globe, Heart, Phone, Sparkles, TrendingUp, UtensilsCrossed, Utensils, Users } from 'lucide-react';
|
|
|
|
export default function LandingPage() {
|
|
return (
|
|
<ThemeProvider
|
|
defaultButtonVariant="shift-hover"
|
|
defaultTextAnimation="entrance-slide"
|
|
borderRadius="pill"
|
|
contentWidth="mediumSmall"
|
|
sizing="largeSizeMediumTitles"
|
|
background="none"
|
|
cardStyle="glass-elevated"
|
|
primaryButtonStyle="diagonal-gradient"
|
|
secondaryButtonStyle="solid"
|
|
headingFontWeight="extrabold"
|
|
>
|
|
<div id="nav" data-section="nav">
|
|
<NavbarLayoutFloatingInline
|
|
brandName="Osteria Bella"
|
|
navItems={[
|
|
{ name: "Home", id: "hero" },
|
|
{ name: "Menu", id: "dishes" },
|
|
{ name: "About", id: "about" },
|
|
{ name: "Contact", id: "contact" }
|
|
]}
|
|
button={{
|
|
text: "Reserve Table", href: "contact"
|
|
}}
|
|
/>
|
|
</div>
|
|
|
|
<div id="hero" data-section="hero">
|
|
<HeroBillboardCarousel
|
|
title="Authentic Italian Dining Experience"
|
|
description="Indulge in the finest Italian cuisine crafted with traditional recipes and the freshest ingredients, bringing the warmth of Italy to your table."
|
|
tag="Authentic Italian"
|
|
tagIcon={Utensils}
|
|
tagAnimation="slide-up"
|
|
background={{ variant: "radial-gradient" }}
|
|
mediaItems={[
|
|
{
|
|
imageSrc: "http://img.b2bpic.net/free-photo/close-up-large-tube-pasta-with-chicken-cherry-tomato-with-chopped-parsley_141793-1840.jpg", imageAlt: "Fresh Italian pasta"
|
|
},
|
|
{
|
|
imageSrc: "http://img.b2bpic.net/free-photo/fettuccine-pasta-chicken-mushroom-parmesan-tomato-mint-sumakh-cocktail-side-view_141793-2362.jpg?_wi=1", imageAlt: "Creamy risotto dish"
|
|
},
|
|
{
|
|
imageSrc: "http://img.b2bpic.net/free-photo/chocolade-eclairs-table_140725-9377.jpg?_wi=1", imageAlt: "Authentic tiramisu"
|
|
},
|
|
{
|
|
imageSrc: "http://img.b2bpic.net/free-photo/top-view-traditional-azerbaijani-buglama-white-plate-with-herbs_140725-10406.jpg?_wi=1", imageAlt: "Braised osso buco"
|
|
},
|
|
{
|
|
imageSrc: "http://img.b2bpic.net/free-photo/pasta-with-grated-cheese-greens_140725-8747.jpg?_wi=1", imageAlt: "Pappardelle with truffle"
|
|
}
|
|
]}
|
|
buttons={[
|
|
{ text: "View Menu", href: "dishes" },
|
|
{ text: "Reserve Table", href: "contact" }
|
|
]}
|
|
buttonAnimation="slide-up"
|
|
/>
|
|
</div>
|
|
|
|
<div id="about" data-section="about">
|
|
<AboutMetric
|
|
title="Celebrating Italian Heritage Since 1995 with Passion, Tradition, and Excellence"
|
|
useInvertedBackground={false}
|
|
metrics={[
|
|
{ icon: ChefHat, label: "Master Chefs", value: "12+" },
|
|
{ icon: Award, label: "Awards Won", value: "28" },
|
|
{ icon: Users, label: "Happy Diners", value: "50K+" },
|
|
{ icon: Globe, label: "Years of Excellence", value: "29" }
|
|
]}
|
|
/>
|
|
</div>
|
|
|
|
<div id="dishes" data-section="dishes">
|
|
<FeatureCardTwentyTwo
|
|
title="Signature Dishes"
|
|
description="Each plate tells a story of Italian culinary tradition, prepared with meticulous attention to detail and the finest seasonal ingredients."
|
|
tag="Menu Highlights"
|
|
tagIcon={Sparkles}
|
|
tagAnimation="slide-up"
|
|
features={[
|
|
{
|
|
id: "risotto", category: ["Risotto", "Main Course"],
|
|
title: "Risotto ai Funghi Porcini", imageSrc: "http://img.b2bpic.net/free-photo/fettuccine-pasta-chicken-mushroom-parmesan-tomato-mint-sumakh-cocktail-side-view_141793-2362.jpg?_wi=2", imageAlt: "Creamy mushroom risotto"
|
|
},
|
|
{
|
|
id: "tiramisu", category: ["Dessert", "Classic"],
|
|
title: "Traditional Tiramisu", imageSrc: "http://img.b2bpic.net/free-photo/chocolade-eclairs-table_140725-9377.jpg?_wi=2", imageAlt: "Classic tiramisu dessert"
|
|
},
|
|
{
|
|
id: "osso-buco", category: ["Osso Buco", "Braised"],
|
|
title: "Osso Buco alla Milanese", imageSrc: "http://img.b2bpic.net/free-photo/top-view-traditional-azerbaijani-buglama-white-plate-with-herbs_140725-10406.jpg?_wi=2", imageAlt: "Braised veal shanks"
|
|
},
|
|
{
|
|
id: "pappardelle", category: ["Pasta", "Premium"],
|
|
title: "Pappardelle al Tartufo", imageSrc: "http://img.b2bpic.net/free-photo/pasta-with-grated-cheese-greens_140725-8747.jpg?_wi=2", imageAlt: "Wide pasta with black truffle"
|
|
}
|
|
]}
|
|
animationType="slide-up"
|
|
textboxLayout="default"
|
|
useInvertedBackground={false}
|
|
/>
|
|
</div>
|
|
|
|
<div id="specialties" data-section="specialties">
|
|
<ProductCardFour
|
|
title="Today's Specialties"
|
|
description="Chef's curated selection of seasonal dishes featuring the freshest ingredients available."
|
|
tag="Today's Selection"
|
|
tagIcon={UtensilsCrossed}
|
|
tagAnimation="slide-up"
|
|
products={[
|
|
{
|
|
id: "specialty-1", name: "Saffron Risotto Milano Style", price: "$28", variant: "Creamy, Yellow Saffron", imageSrc: "http://img.b2bpic.net/free-photo/front-view-yummy-shakh-plov-cooked-rice-dish-with-raisins-inside-plate-white-desk_140725-97751.jpg", imageAlt: "Saffron risotto"
|
|
},
|
|
{
|
|
id: "specialty-2", name: "Tagliatelle Bolognese", price: "$24", variant: "Egg Pasta, Slow-cooked Ragù", imageSrc: "http://img.b2bpic.net/free-photo/pasta-with-grated-cheese-greens_140725-8747.jpg?_wi=3", imageAlt: "Tagliatelle with bolognese"
|
|
},
|
|
{
|
|
id: "specialty-3", name: "Saltimbocca alla Romana", price: "$32", variant: "Veal, Prosciutto, Sage", imageSrc: "http://img.b2bpic.net/free-photo/top-view-traditional-azerbaijani-buglama-white-plate-with-herbs_140725-10406.jpg?_wi=3", imageAlt: "Saltimbocca dish"
|
|
}
|
|
]}
|
|
gridVariant="three-columns-all-equal-width"
|
|
animationType="slide-up"
|
|
textboxLayout="default"
|
|
useInvertedBackground={true}
|
|
/>
|
|
</div>
|
|
|
|
<div id="testimonials" data-section="testimonials">
|
|
<TestimonialCardSixteen
|
|
title="Loved by Our Guests"
|
|
description="Discover what our diners say about their unforgettable experiences at Osteria Bella."
|
|
tag="Guest Reviews"
|
|
tagIcon={Heart}
|
|
tagAnimation="slide-up"
|
|
testimonials={[
|
|
{
|
|
id: "testimonial-1", name: "Maria Rossi", role: "Food Critic", company: "Gourmet Magazine", rating: 5,
|
|
imageSrc: "http://img.b2bpic.net/free-photo/studio-portrait-successful-young-businesswoman_1262-5844.jpg", imageAlt: "Maria Rossi"
|
|
},
|
|
{
|
|
id: "testimonial-2", name: "Giovanni Fontana", role: "Chef", company: "Fine Dining Network", rating: 5,
|
|
imageSrc: "http://img.b2bpic.net/free-photo/smiling-blond-man-with-beer-smartphone-bar_1262-3624.jpg", imageAlt: "Giovanni Fontana"
|
|
},
|
|
{
|
|
id: "testimonial-3", name: "Sofia Marchetti", role: "Restaurant Owner", company: "Italian Restaurant Association", rating: 5,
|
|
imageSrc: "http://img.b2bpic.net/free-photo/young-woman-eating-salad-cafe_1303-25276.jpg", imageAlt: "Sofia Marchetti"
|
|
},
|
|
{
|
|
id: "testimonial-4", name: "Marco Bellini", role: "Regular Guest", company: "10+ Year Member", rating: 5,
|
|
imageSrc: "http://img.b2bpic.net/free-photo/he-is-satisfied-from-his-life_329181-2789.jpg", imageAlt: "Marco Bellini"
|
|
}
|
|
]}
|
|
kpiItems={[
|
|
{ value: "15+", label: "Years Serving Excellence" },
|
|
{ value: "5000+", label: "Happy Guests Annually" },
|
|
{ value: "98%", label: "Guest Satisfaction Rate" }
|
|
]}
|
|
animationType="slide-up"
|
|
textboxLayout="default"
|
|
useInvertedBackground={false}
|
|
/>
|
|
</div>
|
|
|
|
<div id="metrics" data-section="metrics">
|
|
<MetricCardTwo
|
|
title="Our Impact"
|
|
description="Numbers that reflect our commitment to excellence and authenticity."
|
|
tag="By The Numbers"
|
|
tagIcon={TrendingUp}
|
|
tagAnimation="slide-up"
|
|
metrics={[
|
|
{ id: "1", value: "500+", description: "Dishes Created This Year" },
|
|
{ id: "2", value: "100", description: "Wine Selections" },
|
|
{ id: "3", value: "12", description: "Master Chefs" },
|
|
{ id: "4", value: "24/7", description: "Passion for Food" }
|
|
]}
|
|
gridVariant="uniform-all-items-equal"
|
|
animationType="slide-up"
|
|
textboxLayout="default"
|
|
useInvertedBackground={true}
|
|
/>
|
|
</div>
|
|
|
|
<div id="contact" data-section="contact">
|
|
<ContactFaq
|
|
ctaTitle="Reserve Your Table"
|
|
ctaDescription="Experience authentic Italian dining. Call us or book your table online for an unforgettable evening."
|
|
ctaIcon={Phone}
|
|
ctaButton={{
|
|
text: "Call +1 (555) 123-4567", href: "tel:+15551234567"
|
|
}}
|
|
faqs={[
|
|
{
|
|
id: "1", title: "What are your operating hours?", content: "We are open Tuesday through Thursday from 5 PM to 10 PM, Friday and Saturday from 5 PM to 11 PM, and Sunday from 4 PM to 9 PM. We are closed on Mondays."
|
|
},
|
|
{
|
|
id: "2", title: "Do you accommodate dietary restrictions?", content: "Absolutely! We offer vegetarian, vegan, gluten-free, and other dietary accommodations. Please mention your preferences when reserving or speak with our servers upon arrival."
|
|
},
|
|
{
|
|
id: "3", title: "Can we host private events?", content: "Yes, we host private dining events and celebrations. Please contact us directly at +1 (555) 123-4567 to discuss your event requirements."
|
|
},
|
|
{
|
|
id: "4", title: "Is there parking available?", content: "We have a dedicated parking lot for our guests behind the restaurant. Valet parking is available on weekends for parties of 6 or more."
|
|
},
|
|
{
|
|
id: "5", title: "Do you take walk-ins?", content: "While we accept walk-ins based on availability, we strongly recommend making a reservation to ensure your preferred seating and dining time."
|
|
},
|
|
{
|
|
id: "6", title: "What is your cancellation policy?", content: "Reservations must be cancelled at least 24 hours in advance to avoid a $25 per person cancellation fee. We appreciate your understanding."
|
|
}
|
|
]}
|
|
useInvertedBackground={false}
|
|
animationType="slide-up"
|
|
accordionAnimationType="smooth"
|
|
/>
|
|
</div>
|
|
|
|
<div id="footer" data-section="footer">
|
|
<FooterBase
|
|
logoText="Osteria Bella"
|
|
copyrightText="© 2025 Osteria Bella. All rights reserved. Celebrating Italian Heritage."
|
|
columns={[
|
|
{
|
|
title: "Navigate", items: [
|
|
{ label: "Home", href: "#hero" },
|
|
{ label: "Menu", href: "#dishes" },
|
|
{ label: "About Us", href: "#about" },
|
|
{ label: "Contact", href: "#contact" }
|
|
]
|
|
},
|
|
{
|
|
title: "Visit Us", items: [
|
|
{ label: "123 Italian Way, Culinary City", href: "#" },
|
|
{ label: "+1 (555) 123-4567", href: "tel:+15551234567" },
|
|
{ label: "hello@osteriabella.com", href: "mailto:hello@osteriabella.com" },
|
|
{ label: "Open Tue-Thu 5-10 PM", href: "#" }
|
|
]
|
|
},
|
|
{
|
|
title: "Connect", items: [
|
|
{ label: "Instagram", href: "https://instagram.com" },
|
|
{ label: "Facebook", href: "https://facebook.com" },
|
|
{ label: "TripAdvisor", href: "https://tripadvisor.com" },
|
|
{ label: "Newsletter", href: "#" }
|
|
]
|
|
}
|
|
]}
|
|
/>
|
|
</div>
|
|
</ThemeProvider>
|
|
);
|
|
} |