9 Commits

Author SHA1 Message Date
5da9c06841 Update src/app/page.tsx 2026-04-22 15:24:27 +00:00
4be78bf7aa Update src/app/page.tsx 2026-04-22 15:23:58 +00:00
aab5c98211 Update src/app/styles/variables.css 2026-04-22 15:23:32 +00:00
1150cc8de2 Update src/app/styles/base.css 2026-04-22 15:23:31 +00:00
e72cd8878f Update src/app/page.tsx 2026-04-22 15:23:31 +00:00
7043f83007 Merge version_2 into main
Merge version_2 into main
2026-04-21 22:34:18 +00:00
b5a5725117 Merge version_1 into main
Merge version_1 into main
2026-04-21 22:32:29 +00:00
b7fb343d5f Merge version_1 into main
Merge version_1 into main
2026-04-21 22:32:05 +00:00
a1e0b745f4 Merge version_1 into main
Merge version_1 into main
2026-04-21 22:31:36 +00:00
3 changed files with 106 additions and 224 deletions

View File

@@ -9,10 +9,14 @@ import HeroSplitTestimonial from '@/components/sections/hero/HeroSplitTestimonia
import MediaAbout from '@/components/sections/about/MediaAbout';
import NavbarStyleApple from '@/components/navbar/NavbarStyleApple/NavbarStyleApple';
import PricingCardThree from '@/components/sections/pricing/PricingCardThree';
import ProductCardOne from '@/components/sections/product/ProductCardOne';
import ProductCardThree from '@/components/sections/product/ProductCardThree';
import TestimonialCardFive from '@/components/sections/testimonial/TestimonialCardFive';
export default function LandingPage() {
const handleQuantityChange = (id: string, quantity: number) => {
console.log(`Setting product ${id} to ${quantity} lbs`);
};
return (
<ThemeProvider
defaultButtonVariant="elastic-effect"
@@ -27,228 +31,106 @@ export default function LandingPage() {
headingFontWeight="extrabold"
>
<ReactLenis root>
<div id="nav" data-section="nav">
<NavbarStyleApple
navItems={[
{
name: "Home", id: "hero"},
{
name: "About", id: "about"},
{
name: "Products", id: "products"},
{
name: "Catering", id: "pricing"},
{
name: "Contact", id: "contact"},
]}
brandName="Artisanal Bakes"
/>
</div>
<div id="nav" data-section="nav">
<NavbarStyleApple
navItems={[
{ name: "Home", id: "hero" },
{ name: "About", id: "about" },
{ name: "Products", id: "products" },
{ name: "Catering", id: "pricing" },
{ name: "Contact", id: "contact" },
]}
brandName="Artisanal Bakes"
/>
</div>
<div id="hero" data-section="hero">
<HeroSplitTestimonial
useInvertedBackground={true}
background={{
variant: "gradient-bars"}}
title="Artisanal Baking, Elevated Every Day"
description="Handcrafted pastries and custom cakes made from premium ingredients. Order online or visit us for an exceptional tasting experience."
testimonials={[
{
name: "Clara J.", handle: "@foodie", testimonial: "The best sourdough in the city. Truly artisan.", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/delicious-homemade-bread-table_23-2148361967.jpg?_wi=1", imageAlt: "elegant bakery bread display warm"},
{
name: "Mark S.", handle: "@eventpro", testimonial: "Exquisite custom cakes, our event was perfect.", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/chef-using-flour-knead-dough-so-it-won-t-stick-hands_23-2148742217.jpg?_wi=1", imageAlt: "elegant bakery bread display warm"},
{
name: "Elena R.", handle: "@gourmet", testimonial: "The attention to detail in their pastries is unreal.", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/delicious-baked-pastry-bangle-formed-inside-pan-bright-pastry-cookie-biscuit-sweet-sugar_140725-32072.jpg?_wi=1", imageAlt: "elegant bakery bread display warm"},
{
name: "Tom D.", handle: "@local", testimonial: "Always fresh, always beautiful. Highly recommended.", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/baker-holds-homemade-craft-bread-his-hands_166373-749.jpg?_wi=1", imageAlt: "elegant bakery bread display warm"},
{
name: "Sarah P.", handle: "@pastryfan", testimonial: "The almond croissants are life-changing.", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/top-view-french-macarons-with-roses-pink-table-cake-biscuit-sugar-sweet_140725-28587.jpg?_wi=1", imageAlt: "elegant bakery bread display warm"},
]}
imageSrc="http://img.b2bpic.net/free-photo/delicious-homemade-bread-table_23-2148361967.jpg?_wi=2"
mediaAnimation="blur-reveal"
avatars={[
{
src: "http://img.b2bpic.net/free-photo/loaf-bread-female-hands-supermarket_169016-36167.jpg", alt: "Loaf of bread in female hands in a supermarket"},
{
src: "http://img.b2bpic.net/free-photo/bakery_23-2148011503.jpg", alt: "Bakery interior display"},
{
src: "http://img.b2bpic.net/free-photo/girl-offering-bread-tray_23-2147984953.jpg", alt: "Girl offering bread tray"},
{
src: "http://img.b2bpic.net/free-photo/close-up-hands-making-dough_23-2148544734.jpg", alt: "Close-up hands making dough"},
{
src: "http://img.b2bpic.net/free-photo/ethnic-young-woman-holding-cup-white-background_23-2148180704.jpg", alt: "Portrait happy customer cafe"},
]}
avatarText="Join 5,000+ satisfied customers"
marqueeItems={[
{
type: "text", text: "Artisan Sourdough"},
{
type: "text", text: "Premium Ingredients"},
{
type: "text", text: "Handcrafted Daily"},
{
type: "text", text: "Custom Cake Designs"},
{
type: "text", text: "Freshly Baked"},
]}
/>
</div>
<div id="hero" data-section="hero">
<HeroSplitTestimonial
title="Artisanal Baking, Elevated Every Day"
description="Handcrafted pastries and custom cakes made from premium ingredients. Order online or visit us for an exceptional tasting experience."
testimonials={[]}
background={{ variant: "plain" }}
imageSrc="http://img.b2bpic.net/free-photo/delicious-homemade-bread-table_23-2148361967.jpg?_wi=2"
mediaAnimation="blur-reveal"
/>
</div>
<div id="about" data-section="about">
<MediaAbout
useInvertedBackground={false}
title="Craftsmanship at Our Core"
description="We believe that the best baked goods start with patience, quality ingredients, and traditional techniques. Every pastry is a testament to our passion."
imageSrc="http://img.b2bpic.net/free-photo/chef-using-flour-knead-dough-so-it-won-t-stick-hands_23-2148742217.jpg?_wi=2"
/>
</div>
<div id="about" data-section="about">
<MediaAbout
title="Craftsmanship at Our Core"
description="We believe that the best baked goods start with patience, quality ingredients, and traditional techniques. Every pastry is a testament to our passion."
imageSrc="http://img.b2bpic.net/free-photo/chef-using-flour-knead-dough-so-it-won-t-stick-hands_23-2148742217.jpg?_wi=2"
useInvertedBackground={false}
/>
</div>
<div id="products" data-section="products">
<ProductCardOne
textboxLayout="default"
gridVariant="four-items-2x2-equal-grid"
animationType="slide-up"
useInvertedBackground={true}
products={[
{
id: "1", name: "Classic Croissant", price: "$4.50", imageSrc: "http://img.b2bpic.net/free-photo/delicious-baked-pastry-bangle-formed-inside-pan-bright-pastry-cookie-biscuit-sweet-sugar_140725-32072.jpg?_wi=2"},
{
id: "2", name: "Artisan Sourdough", price: "$8.00", imageSrc: "http://img.b2bpic.net/free-photo/baker-holds-homemade-craft-bread-his-hands_166373-749.jpg?_wi=2"},
{
id: "3", name: "Fruit Tart", price: "$6.50", imageSrc: "http://img.b2bpic.net/free-photo/top-view-french-macarons-with-roses-pink-table-cake-biscuit-sugar-sweet_140725-28587.jpg?_wi=2"},
{
id: "4", name: "Almond Pastry", price: "$5.00", imageSrc: "http://img.b2bpic.net/free-photo/top-view-delicious-food-basket_23-2149629043.jpg"},
{
id: "5", name: "Rye Bread", price: "$7.50", imageSrc: "http://img.b2bpic.net/free-photo/top-view-bread-wheat_23-2148288071.jpg"},
{
id: "6", name: "Chocolate Éclair", price: "$5.50", imageSrc: "http://img.b2bpic.net/free-photo/chocolate-vanilla-cheesecake-with-figs-top-view_114579-16295.jpg"},
]}
title="Our Signature Collection"
description="From daily breads to decadent custom desserts, explore our premium selection."
/>
</div>
<div id="products" data-section="products">
<ProductCardThree
title="Custom Order Form"
description="Select your items and weight. Orders are limited to 3lbs max for custom designs."
gridVariant="four-items-2x2-equal-grid"
animationType="slide-up"
useInvertedBackground={true}
textboxLayout="default"
products={[
{ id: "1", name: "Custom Cake Base", price: "$50", imageSrc: "http://img.b2bpic.net/free-photo/delicious-baked-pastry-bangle-formed-inside-pan-bright-pastry-cookie-biscuit-sweet-sugar_140725-32072.jpg?_wi=2", onQuantityChange: (q) => handleQuantityChange("1", q) },
{ id: "2", name: "Specialty Filling", price: "$10", imageSrc: "http://img.b2bpic.net/free-photo/baker-holds-homemade-craft-bread-his-hands_166373-749.jpg?_wi=2", onQuantityChange: (q) => handleQuantityChange("2", q) },
]}
/>
</div>
<div id="testimonials" data-section="testimonials">
<TestimonialCardFive
textboxLayout="split"
useInvertedBackground={false}
testimonials={[
{
id: "1", name: "Clara J.", date: "2024", title: "Regular Visitor", quote: "The best sourdough in the city.", tag: "Artisan", avatarSrc: "http://img.b2bpic.net/free-photo/ethnic-young-woman-holding-cup-white-background_23-2148180704.jpg", imageSrc: "http://img.b2bpic.net/free-photo/delicious-homemade-bread-table_23-2148361967.jpg?_wi=3", imageAlt: "portrait happy customer cafe"},
{
id: "2", name: "Mark S.", date: "2024", title: "Corporate Client", quote: "Exquisite cakes, reliable service.", tag: "Events", avatarSrc: "http://img.b2bpic.net/free-photo/portrait-smiling-woman-office-suit-sitting-outdoors-looking-confident_1258-123395.jpg", imageSrc: "http://img.b2bpic.net/free-photo/chef-using-flour-knead-dough-so-it-won-t-stick-hands_23-2148742217.jpg?_wi=3", imageAlt: "portrait happy customer cafe"},
{
id: "3", name: "Elena R.", date: "2024", title: "Fanatic", quote: "The detail in their pastries is unreal.", tag: "Bakery", avatarSrc: "http://img.b2bpic.net/free-photo/fresh-croissant-front-woman-holding-smart-phone-with-blank-white-screen_23-2148027954.jpg", imageSrc: "http://img.b2bpic.net/free-photo/delicious-baked-pastry-bangle-formed-inside-pan-bright-pastry-cookie-biscuit-sweet-sugar_140725-32072.jpg?_wi=3", imageAlt: "portrait happy customer cafe"},
{
id: "4", name: "Tom D.", date: "2024", title: "Local", quote: "Always fresh, always beautiful.", tag: "Fresh", avatarSrc: "http://img.b2bpic.net/free-photo/smiley-colleagues-work-break-time_23-2149308456.jpg", imageSrc: "http://img.b2bpic.net/free-photo/baker-holds-homemade-craft-bread-his-hands_166373-749.jpg?_wi=3", imageAlt: "portrait happy customer cafe"},
{
id: "5", name: "Sarah P.", date: "2024", title: "Foodie", quote: "The almond croissants are life-changing.", tag: "Treat", avatarSrc: "http://img.b2bpic.net/free-photo/portrait-waitress-holding-tray-muffins-counter_107420-12318.jpg", imageSrc: "http://img.b2bpic.net/free-photo/top-view-french-macarons-with-roses-pink-table-cake-biscuit-sugar-sweet_140725-28587.jpg?_wi=3", imageAlt: "portrait happy customer cafe"},
]}
title="Loved by Our Community"
description="Discover why our patrons choose us for their daily delights."
/>
</div>
<div id="testimonials" data-section="testimonials">
<TestimonialCardFive
textboxLayout="split"
useInvertedBackground={false}
testimonials={[]}
title="Loved by Our Community"
description="Discover why our patrons choose us for their daily delights."
/>
</div>
<div id="faq" data-section="faq">
<FaqSplitMedia
textboxLayout="default"
useInvertedBackground={true}
faqs={[
{
id: "1", title: "Do you accept custom cake orders?", content: "Yes, we require at least 48 hours notice for custom cakes."},
{
id: "2", title: "Are your ingredients organic?", content: "We prioritize organic and locally sourced ingredients whenever possible."},
{
id: "3", title: "Do you offer gluten-free options?", content: "We have a limited selection of gluten-friendly items."},
]}
imageSrc="http://img.b2bpic.net/free-photo/delicious-products-arrangement-bakery_23-2150273131.jpg"
title="Frequently Asked Questions"
description="Have questions about our catering, ingredients, or online orders?"
faqsAnimation="slide-up"
/>
</div>
<div id="faq" data-section="faq">
<FaqSplitMedia
textboxLayout="default"
useInvertedBackground={true}
faqs={[]}
title="Frequently Asked Questions"
description="Have questions about our catering, ingredients, or online orders?"
faqsAnimation="slide-up"
/>
</div>
<div id="pricing" data-section="pricing">
<PricingCardThree
animationType="slide-up"
textboxLayout="default"
useInvertedBackground={false}
plans={[
{
id: "basic", price: "$150", name: "Breakfast Tray", features: [
"12 Assorted Pastries", "Coffee Service"],
buttons: [
{
text: "Inquire"},
],
},
{
id: "pro", price: "$300", name: "Event Package", features: [
"24 Pastries", "Cake Service", "Setup"],
buttons: [
{
text: "Inquire"},
],
},
{
id: "elite", price: "$500", name: "Full Service", features: [
"Unlimited Selection", "Delivery", "Setup"],
buttons: [
{
text: "Inquire"},
],
},
]}
title="Catering Packages"
description="Perfect for office meetings or elegant social events."
/>
</div>
<div id="pricing" data-section="pricing">
<PricingCardThree
animationType="slide-up"
textboxLayout="default"
useInvertedBackground={false}
plans={[]}
title="Catering Packages"
description="Perfect for office meetings or elegant social events."
/>
</div>
<div id="contact" data-section="contact">
<ContactSplitForm
useInvertedBackground={true}
title="Visit or Order With Us"
description="Drop us a note for inquiries or catering requests."
inputs={[
{
name: "name", type: "text", placeholder: "Name"},
{
name: "email", type: "email", placeholder: "Email"},
]}
textarea={{
name: "message", placeholder: "Your message"}}
imageSrc="http://img.b2bpic.net/free-photo/view-beautiful-woman-looking-away-with-coffee_197531-33702.jpg"
/>
</div>
<div id="contact" data-section="contact">
<ContactSplitForm
useInvertedBackground={true}
title="Visit or Order With Us"
description="Drop us a note for inquiries or catering requests."
inputs={[
{ name: "name", type: "text", placeholder: "Name" },
{ name: "email", type: "email", placeholder: "Email" },
]}
textarea={{ name: "message", placeholder: "Your message" }}
imageSrc="http://img.b2bpic.net/free-photo/view-beautiful-woman-looking-away-with-coffee_197531-33702.jpg"
/>
</div>
<div id="footer" data-section="footer">
<FooterBaseCard
logoText="Artisanal Bakes"
columns={[
{
title: "Navigate", items: [
{
label: "Products", href: "#products"},
{
label: "About", href: "#about"},
],
},
{
title: "Legal", items: [
{
label: "Privacy", href: "#"},
{
label: "Terms", href: "#"},
],
},
]}
/>
</div>
<div id="footer" data-section="footer">
<FooterBaseCard
logoText="Artisanal Bakes"
columns={[]}
/>
</div>
</ReactLenis>
</ThemeProvider>
);

View File

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

View File

@@ -10,15 +10,15 @@
--accent: #ffffff;
--background-accent: #ffffff; */
--background: #f5f4ef;
--card: #dad6cd;
--foreground: #2a2928;
--primary-cta: #2a2928;
--background: #fbf7f2;
--card: #f0eade;
--foreground: #3d2b1f;
--primary-cta: #3d2b1f;
--primary-cta-text: #f5f4ef;
--secondary-cta: #ecebea;
--secondary-cta: #d4c5b9;
--secondary-cta-text: #2a2928;
--accent: #ffffff;
--background-accent: #c6b180;
--accent: #c5a059;
--background-accent: #e3d5c8;
/* text sizing - set by ThemeProvider */
/* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem);