Update src/pages/HomePage.tsx

This commit is contained in:
2026-06-13 11:03:43 +00:00
parent 1c5914b486
commit ef2bc03748

View File

@@ -11,270 +11,143 @@ 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">
<HeroSplitMediaGrid
tag="Since 1984"
title="Where Bergamo Finds Its Heart"
description="Like a silk tablecloth in grandmother's dining room, we serve warmth, memory, and hand-rolled pasta."
primaryButton={{
text: "Reserve a Table",
href: "#contact",
}}
secondaryButton={{
text: "Our Story",
href: "#about",
}}
items={[
{
imageSrc: "https://images.pexels.com/photos/19965097/pexels-photo-19965097.jpeg?auto=compress&cs=tinysrgb&h=650&w=940&_wi=1",
},
{
imageSrc: "https://images.pexels.com/photos/14861070/pexels-photo-14861070.jpeg?auto=compress&cs=tinysrgb&h=650&w=940&_wi=1",
},
]}
/>
</SectionErrorBoundary>
</div>
tag="Since 1984"
title="Where Bergamo Finds Its Heart"
description="Like a silk tablecloth in grandmother's dining room, we serve warmth, memory, and hand-rolled pasta."
primaryButton={{ text: "Reserve a Table", href: "#contact" }}
secondaryButton={{ text: "Our Story", href: "#about" }}
items={[
{ imageSrc: "https://images.pexels.com/photos/19965097/pexels-photo-19965097.jpeg?auto=compress&cs=tinysrgb&h=650&w=940" },
{ imageSrc: "https://images.pexels.com/photos/14861070/pexels-photo-14861070.jpeg?auto=compress&cs=tinysrgb&h=650&w=940" }
]}
/>
</SectionErrorBoundary>
</div>
<div id="about" data-section="about">
<SectionErrorBoundary name="about">
<div id="about" data-section="about">
<SectionErrorBoundary name="about">
<AboutTestimonial
tag="Meet Barbara"
quote="Cooking is not a performance. It is an act of love, a daily conversation with my ancestors in the quiet corners of Bergamo."
author="Barbara Rossi"
role="Founder & Soul of the Trattoria"
imageSrc="https://images.pexels.com/photos/8477058/pexels-photo-8477058.jpeg?auto=compress&cs=tinysrgb&h=650&w=940&_wi=1"
/>
</SectionErrorBoundary>
</div>
tag="Meet Barbara"
quote="Cooking is not a performance. It is an act of love, a daily conversation with my ancestors in the quiet corners of Bergamo."
author="Barbara Rossi"
role="Founder & Soul of the Trattoria"
imageSrc="https://images.pexels.com/photos/8477058/pexels-photo-8477058.jpeg?auto=compress&cs=tinysrgb&h=650&w=940"
/>
</SectionErrorBoundary>
</div>
<div id="features" data-section="features">
<SectionErrorBoundary name="features">
<div id="features" data-section="features">
<SectionErrorBoundary name="features">
<FeaturesBento
tag="Our Craft"
title="The Ingredients of Memory"
description="Every plate tells a story of the mountains, the fields, and the hands that worked them."
features={[
{
title: "Handmade Pasta",
description: "Rollled daily before dawn.",
bentoComponent: "media-stack",
mediaItems: [
{
imageSrc: "https://images.pexels.com/photos/8092492/pexels-photo-8092492.jpeg?auto=compress&cs=tinysrgb&h=650&w=940",
},
{
imageSrc: "https://images.pexels.com/photos/4113886/pexels-photo-4113886.jpeg?auto=compress&cs=tinysrgb&h=650&w=940",
},
{
imageSrc: "https://images.pexels.com/photos/5908170/pexels-photo-5908170.jpeg?auto=compress&cs=tinysrgb&h=650&w=940",
},
],
imageSrc: "https://images.pexels.com/photos/19965097/pexels-photo-19965097.jpeg?auto=compress&cs=tinysrgb&h=650&w=940&_wi=2",
imageAlt: "homemade pasta dough texture",
},
{
title: "Regional Wines",
description: "Curated cellar from Lombardy.",
bentoComponent: "media-stack",
mediaItems: [
{
imageSrc: "https://images.pexels.com/photos/17527498/pexels-photo-17527498.jpeg?auto=compress&cs=tinysrgb&h=650&w=940",
},
{
imageSrc: "https://images.pexels.com/photos/31665647/pexels-photo-31665647.jpeg?auto=compress&cs=tinysrgb&h=650&w=940",
},
{
imageSrc: "https://images.pexels.com/photos/13257037/pexels-photo-13257037.jpeg?auto=compress&cs=tinysrgb&h=650&w=940",
},
],
imageSrc: "https://images.pexels.com/photos/14861070/pexels-photo-14861070.jpeg?auto=compress&cs=tinysrgb&h=650&w=940&_wi=2",
imageAlt: "homemade pasta dough texture",
},
{
title: "Dolce Vita",
description: "Traditional sweet finishes.",
bentoComponent: "media-stack",
mediaItems: [
{
imageSrc: "https://images.pexels.com/photos/5964615/pexels-photo-5964615.jpeg?auto=compress&cs=tinysrgb&h=650&w=940",
},
{
imageSrc: "https://images.pexels.com/photos/29647508/pexels-photo-29647508.jpeg?auto=compress&cs=tinysrgb&h=650&w=940",
},
{
imageSrc: "https://images.pexels.com/photos/30372664/pexels-photo-30372664.jpeg?auto=compress&cs=tinysrgb&h=650&w=940",
},
],
imageSrc: "https://images.pexels.com/photos/8477058/pexels-photo-8477058.jpeg?auto=compress&cs=tinysrgb&h=650&w=940&_wi=2",
imageAlt: "homemade pasta dough texture",
},
]}
/>
</SectionErrorBoundary>
</div>
tag="Our Craft"
title="The Ingredients of Memory"
description="Every plate tells a story of the mountains, the fields, and the hands that worked them."
features={[
{
title: "Handmade Pasta", description: "Rollled daily before dawn.", bentoComponent: "media-stack", mediaItems: [
{ imageSrc: "https://images.pexels.com/photos/8092492/pexels-photo-8092492.jpeg?auto=compress&cs=tinysrgb&h=650&w=940" },
{ imageSrc: "https://images.pexels.com/photos/4113886/pexels-photo-4113886.jpeg?auto=compress&cs=tinysrgb&h=650&w=940" },
{ imageSrc: "https://images.pexels.com/photos/5908170/pexels-photo-5908170.jpeg?auto=compress&cs=tinysrgb&h=650&w=940" }
]
},
{
title: "Regional Wines", description: "Curated cellar from Lombardy.", bentoComponent: "media-stack", mediaItems: [
{ imageSrc: "https://images.pexels.com/photos/17527498/pexels-photo-17527498.jpeg?auto=compress&cs=tinysrgb&h=650&w=940" },
{ imageSrc: "https://images.pexels.com/photos/31665647/pexels-photo-31665647.jpeg?auto=compress&cs=tinysrgb&h=650&w=940" },
{ imageSrc: "https://images.pexels.com/photos/13257037/pexels-photo-13257037.jpeg?auto=compress&cs=tinysrgb&h=650&w=940" }
]
},
{
title: "Dolce Vita", description: "Traditional sweet finishes.", bentoComponent: "media-stack", mediaItems: [
{ imageSrc: "https://images.pexels.com/photos/5964615/pexels-photo-5964615.jpeg?auto=compress&cs=tinysrgb&h=650&w=940" },
{ imageSrc: "https://images.pexels.com/photos/29647508/pexels-photo-29647508.jpeg?auto=compress&cs=tinysrgb&h=650&w=940" },
{ imageSrc: "https://images.pexels.com/photos/30372664/pexels-photo-30372664.jpeg?auto=compress&cs=tinysrgb&h=650&w=940" }
]
}
]}
/>
</SectionErrorBoundary>
</div>
<div id="menu" data-section="menu">
<SectionErrorBoundary name="menu">
<div id="menu" data-section="menu">
<SectionErrorBoundary name="menu">
<FeaturesRevealCardsBento
tag="The Daily Menu"
title="Generous Portions"
description="Simple, honest Italian classics."
items={[
{
title: "Casoncelli",
description: "Bergamasque stuffed pasta.",
href: "#",
imageSrc: "https://images.pexels.com/photos/36903806/pexels-photo-36903806.jpeg?auto=compress&cs=tinysrgb&h=650&w=940",
},
{
title: "Polenta e Osei",
description: "Traditional local heritage.",
href: "#",
imageSrc: "https://images.pexels.com/photos/12991635/pexels-photo-12991635.jpeg?auto=compress&cs=tinysrgb&h=650&w=940",
},
{
title: "Risotto ai Funghi",
description: "Forest-fresh flavors.",
href: "#",
imageSrc: "https://images.pexels.com/photos/31372378/pexels-photo-31372378.jpeg?auto=compress&cs=tinysrgb&h=650&w=940",
},
{
title: "Bollito Misto",
description: "Slow-cooked perfection.",
href: "#",
imageSrc: "https://images.pexels.com/photos/11385964/pexels-photo-11385964.jpeg?auto=compress&cs=tinysrgb&h=650&w=940",
},
{
title: "Torta di Mele",
description: "Warm apple comfort.",
href: "#",
imageSrc: "https://images.pexels.com/photos/27672875/pexels-photo-27672875.jpeg?auto=compress&cs=tinysrgb&h=650&w=940",
},
{
title: "Tagliata",
description: "Seared beef, simple herbs.",
href: "#",
imageSrc: "https://images.pexels.com/photos/5667605/pexels-photo-5667605.jpeg?auto=compress&cs=tinysrgb&h=650&w=940",
},
{
title: "Panna Cotta",
description: "Silky, delicate, light.",
href: "#",
imageSrc: "https://images.pexels.com/photos/32066589/pexels-photo-32066589.jpeg?auto=compress&cs=tinysrgb&h=650&w=940",
},
]}
/>
</SectionErrorBoundary>
</div>
tag="The Daily Menu"
title="Generous Portions"
description="Simple, honest Italian classics."
items={[
{ title: "Casoncelli", description: "Bergamasque stuffed pasta.", href: "#", imageSrc: "https://images.pexels.com/photos/36903806/pexels-photo-36903806.jpeg?auto=compress&cs=tinysrgb&h=650&w=940" },
{ title: "Polenta e Osei", description: "Traditional local heritage.", href: "#", imageSrc: "https://images.pexels.com/photos/12991635/pexels-photo-12991635.jpeg?auto=compress&cs=tinysrgb&h=650&w=940" },
{ title: "Risotto ai Funghi", description: "Forest-fresh flavors.", href: "#", imageSrc: "https://images.pexels.com/photos/31372378/pexels-photo-31372378.jpeg?auto=compress&cs=tinysrgb&h=650&w=940" },
{ title: "Bollito Misto", description: "Slow-cooked perfection.", href: "#", imageSrc: "https://images.pexels.com/photos/11385964/pexels-photo-11385964.jpeg?auto=compress&cs=tinysrgb&h=650&w=940" },
{ title: "Torta di Mele", description: "Warm apple comfort.", href: "#", imageSrc: "https://images.pexels.com/photos/27672875/pexels-photo-27672875.jpeg?auto=compress&cs=tinysrgb&h=650&w=940" },
{ title: "Tagliata", description: "Seared beef, simple herbs.", href: "#", imageSrc: "https://images.pexels.com/photos/5667605/pexels-photo-5667605.jpeg?auto=compress&cs=tinysrgb&h=650&w=940" },
{ title: "Panna Cotta", description: "Silky, delicate, light.", href: "#", imageSrc: "https://images.pexels.com/photos/32066589/pexels-photo-32066589.jpeg?auto=compress&cs=tinysrgb&h=650&w=940" }
]}
/>
</SectionErrorBoundary>
</div>
<div id="testimonials" data-section="testimonials">
<SectionErrorBoundary name="testimonials">
<div id="testimonials" data-section="testimonials">
<SectionErrorBoundary name="testimonials">
<TestimonialColumnMarqueeCards
tag="Kind Words"
title="A Shared Table"
description="What our patrons say about the atmosphere."
testimonials={[
{
name: "Giulia",
role: "Food Critic",
quote: "Barbara's kitchen feels like a warm embrace.",
imageSrc: "https://images.pexels.com/photos/19213399/pexels-photo-19213399.jpeg?auto=compress&cs=tinysrgb&h=650&w=940",
},
{
name: "Marco",
role: "Local Patron",
quote: "The Casoncelli are exactly like my grandmother's.",
imageSrc: "https://images.pexels.com/photos/20369503/pexels-photo-20369503.jpeg?auto=compress&cs=tinysrgb&h=650&w=940",
},
{
name: "Elena",
role: "Visitor",
quote: "Hidden gem. I will come back every year.",
imageSrc: "https://images.pexels.com/photos/19237175/pexels-photo-19237175.jpeg?auto=compress&cs=tinysrgb&h=650&w=940",
},
{
name: "Paolo",
role: "Chef",
quote: "Generosity defined. Beautiful hospitality.",
imageSrc: "https://images.pexels.com/photos/16711344/pexels-photo-16711344.jpeg?auto=compress&cs=tinysrgb&h=650&w=940",
},
{
name: "Sofia",
role: "Neighbor",
quote: "Simply the heart of Bergamo.",
imageSrc: "https://images.pexels.com/photos/14934088/pexels-photo-14934088.jpeg?auto=compress&cs=tinysrgb&h=650&w=940",
},
]}
/>
</SectionErrorBoundary>
</div>
tag="Kind Words"
title="A Shared Table"
description="What our patrons say about the atmosphere."
testimonials={[
{ name: "Giulia", role: "Food Critic", quote: "Barbara's kitchen feels like a warm embrace.", imageSrc: "https://images.pexels.com/photos/19213399/pexels-photo-19213399.jpeg?auto=compress&cs=tinysrgb&h=650&w=940" },
{ name: "Marco", role: "Local Patron", quote: "The Casoncelli are exactly like my grandmother's.", imageSrc: "https://images.pexels.com/photos/20369503/pexels-photo-20369503.jpeg?auto=compress&cs=tinysrgb&h=650&w=940" },
{ name: "Elena", role: "Visitor", quote: "Hidden gem. I will come back every year.", imageSrc: "https://images.pexels.com/photos/19237175/pexels-photo-19237175.jpeg?auto=compress&cs=tinysrgb&h=650&w=940" },
{ name: "Paolo", role: "Chef", quote: "Generosity defined. Beautiful hospitality.", imageSrc: "https://images.pexels.com/photos/16711344/pexels-photo-16711344.jpeg?auto=compress&cs=tinysrgb&h=650&w=940" },
{ name: "Sofia", role: "Neighbor", quote: "Simply the heart of Bergamo.", imageSrc: "https://images.pexels.com/photos/14934088/pexels-photo-14934088.jpeg?auto=compress&cs=tinysrgb&h=650&w=940" }
]}
/>
</SectionErrorBoundary>
</div>
<div id="metrics" data-section="metrics">
<SectionErrorBoundary name="metrics">
<div id="metrics" data-section="metrics">
<SectionErrorBoundary name="metrics">
<MetricsSimpleCards
tag="Our Story in Numbers"
title="Decades of Devotion"
description="Building tradition one meal at a time."
metrics={[
{
value: "40+",
description: "Years of Tradition",
},
{
value: "500+",
description: "Recipes Mastered",
},
{
value: "100%",
description: "Handmade Passion",
},
]}
/>
</SectionErrorBoundary>
</div>
tag="Our Story in Numbers"
title="Decades of Devotion"
description="Building tradition one meal at a time."
metrics={[
{ value: "40+", description: "Years of Tradition" },
{ value: "500+", description: "Recipes Mastered" },
{ value: "100%", description: "Handmade Passion" }
]}
/>
</SectionErrorBoundary>
</div>
<div id="faq" data-section="faq">
<SectionErrorBoundary name="faq">
<div id="faq" data-section="faq">
<SectionErrorBoundary name="faq">
<FaqSimple
tag="Information"
title="The Common Questions"
description="Everything you need to know about your dining visit."
items={[
{
question: "Do I need a reservation?",
answer: "Highly recommended, especially on weekends.",
},
{
question: "Are vegetarian options available?",
answer: "Yes, we always have fresh seasonal dishes.",
},
{
question: "Is the restaurant wheelchair accessible?",
answer: "Yes, we strive to make everyone comfortable.",
},
]}
/>
</SectionErrorBoundary>
</div>
tag="Information"
title="The Common Questions"
description="Everything you need to know about your dining visit."
items={[
{ question: "Do I need a reservation?", answer: "Highly recommended, especially on weekends." },
{ question: "Are vegetarian options available?", answer: "Yes, we always have fresh seasonal dishes." },
{ question: "Is the restaurant wheelchair accessible?", answer: "Yes, we strive to make everyone comfortable." }
]}
/>
</SectionErrorBoundary>
</div>
<div id="contact" data-section="contact">
<SectionErrorBoundary name="contact">
<div id="contact" data-section="contact">
<SectionErrorBoundary name="contact">
<ContactCta
tag="Visit Us"
text="Join Barbara at the table tonight. Reservations recommended."
primaryButton={{
text: "Book Now",
href: "#contact-form",
}}
secondaryButton={{
text: "Get Directions",
href: "#map",
}}
/>
</SectionErrorBoundary>
</div>
tag="Visit Us"
text="Join Barbara at the table tonight. Reservations recommended."
primaryButton={{ text: "Book Now", href: "#contact-form" }}
secondaryButton={{ text: "Get Directions", href: "#map" }}
/>
</SectionErrorBoundary>
</div>
</>
);
}