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 MediaAbout from '@/components/sections/about/MediaAbout';
import NavbarStyleApple from '@/components/navbar/NavbarStyleApple/NavbarStyleApple'; import NavbarStyleApple from '@/components/navbar/NavbarStyleApple/NavbarStyleApple';
import PricingCardThree from '@/components/sections/pricing/PricingCardThree'; 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'; import TestimonialCardFive from '@/components/sections/testimonial/TestimonialCardFive';
export default function LandingPage() { export default function LandingPage() {
const handleQuantityChange = (id: string, quantity: number) => {
console.log(`Setting product ${id} to ${quantity} lbs`);
};
return ( return (
<ThemeProvider <ThemeProvider
defaultButtonVariant="elastic-effect" defaultButtonVariant="elastic-effect"
@@ -27,228 +31,106 @@ export default function LandingPage() {
headingFontWeight="extrabold" headingFontWeight="extrabold"
> >
<ReactLenis root> <ReactLenis root>
<div id="nav" data-section="nav"> <div id="nav" data-section="nav">
<NavbarStyleApple <NavbarStyleApple
navItems={[ navItems={[
{ { name: "Home", id: "hero" },
name: "Home", id: "hero"}, { name: "About", id: "about" },
{ { name: "Products", id: "products" },
name: "About", id: "about"}, { name: "Catering", id: "pricing" },
{ { name: "Contact", id: "contact" },
name: "Products", id: "products"}, ]}
{ brandName="Artisanal Bakes"
name: "Catering", id: "pricing"}, />
{ </div>
name: "Contact", id: "contact"},
]}
brandName="Artisanal Bakes"
/>
</div>
<div id="hero" data-section="hero"> <div id="hero" data-section="hero">
<HeroSplitTestimonial <HeroSplitTestimonial
useInvertedBackground={true} title="Artisanal Baking, Elevated Every Day"
background={{ description="Handcrafted pastries and custom cakes made from premium ingredients. Order online or visit us for an exceptional tasting experience."
variant: "gradient-bars"}} testimonials={[]}
title="Artisanal Baking, Elevated Every Day" background={{ variant: "plain" }}
description="Handcrafted pastries and custom cakes made from premium ingredients. Order online or visit us for an exceptional tasting experience." imageSrc="http://img.b2bpic.net/free-photo/delicious-homemade-bread-table_23-2148361967.jpg?_wi=2"
testimonials={[ mediaAnimation="blur-reveal"
{ />
name: "Clara J.", handle: "@foodie", testimonial: "The best sourdough in the city. Truly artisan.", rating: 5, </div>
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="about" data-section="about"> <div id="about" data-section="about">
<MediaAbout <MediaAbout
useInvertedBackground={false} title="Craftsmanship at Our Core"
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."
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"
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>
<div id="products" data-section="products"> <div id="products" data-section="products">
<ProductCardOne <ProductCardThree
textboxLayout="default" title="Custom Order Form"
gridVariant="four-items-2x2-equal-grid" description="Select your items and weight. Orders are limited to 3lbs max for custom designs."
animationType="slide-up" gridVariant="four-items-2x2-equal-grid"
useInvertedBackground={true} animationType="slide-up"
products={[ useInvertedBackground={true}
{ textboxLayout="default"
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"}, 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: "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: "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) },
{ ]}
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"}, />
{ </div>
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="testimonials" data-section="testimonials"> <div id="testimonials" data-section="testimonials">
<TestimonialCardFive <TestimonialCardFive
textboxLayout="split" textboxLayout="split"
useInvertedBackground={false} useInvertedBackground={false}
testimonials={[ testimonials={[]}
{ title="Loved by Our Community"
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"}, description="Discover why our patrons choose us for their daily delights."
{ />
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"}, </div>
{
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="faq" data-section="faq"> <div id="faq" data-section="faq">
<FaqSplitMedia <FaqSplitMedia
textboxLayout="default" textboxLayout="default"
useInvertedBackground={true} useInvertedBackground={true}
faqs={[ faqs={[]}
{ title="Frequently Asked Questions"
id: "1", title: "Do you accept custom cake orders?", content: "Yes, we require at least 48 hours notice for custom cakes."}, description="Have questions about our catering, ingredients, or online orders?"
{ faqsAnimation="slide-up"
id: "2", title: "Are your ingredients organic?", content: "We prioritize organic and locally sourced ingredients whenever possible."}, />
{ </div>
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="pricing" data-section="pricing"> <div id="pricing" data-section="pricing">
<PricingCardThree <PricingCardThree
animationType="slide-up" animationType="slide-up"
textboxLayout="default" textboxLayout="default"
useInvertedBackground={false} useInvertedBackground={false}
plans={[ plans={[]}
{ title="Catering Packages"
id: "basic", price: "$150", name: "Breakfast Tray", features: [ description="Perfect for office meetings or elegant social events."
"12 Assorted Pastries", "Coffee Service"], />
buttons: [ </div>
{
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="contact" data-section="contact"> <div id="contact" data-section="contact">
<ContactSplitForm <ContactSplitForm
useInvertedBackground={true} useInvertedBackground={true}
title="Visit or Order With Us" title="Visit or Order With Us"
description="Drop us a note for inquiries or catering requests." description="Drop us a note for inquiries or catering requests."
inputs={[ inputs={[
{ { name: "name", type: "text", placeholder: "Name" },
name: "name", type: "text", placeholder: "Name"}, { name: "email", type: "email", placeholder: "Email" },
{ ]}
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"
textarea={{ />
name: "message", placeholder: "Your message"}} </div>
imageSrc="http://img.b2bpic.net/free-photo/view-beautiful-woman-looking-away-with-coffee_197531-33702.jpg"
/>
</div>
<div id="footer" data-section="footer"> <div id="footer" data-section="footer">
<FooterBaseCard <FooterBaseCard
logoText="Artisanal Bakes" logoText="Artisanal Bakes"
columns={[ columns={[]}
{ />
title: "Navigate", items: [ </div>
{
label: "Products", href: "#products"},
{
label: "About", href: "#about"},
],
},
{
title: "Legal", items: [
{
label: "Privacy", href: "#"},
{
label: "Terms", href: "#"},
],
},
]}
/>
</div>
</ReactLenis> </ReactLenis>
</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-mulish), sans-serif; font-family: var(--font-playfair), sans-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-mulish), sans-serif; font-family: var(--font-playfair), sans-serif;
} }

View File

@@ -10,15 +10,15 @@
--accent: #ffffff; --accent: #ffffff;
--background-accent: #ffffff; */ --background-accent: #ffffff; */
--background: #f5f4ef; --background: #fbf7f2;
--card: #dad6cd; --card: #f0eade;
--foreground: #2a2928; --foreground: #3d2b1f;
--primary-cta: #2a2928; --primary-cta: #3d2b1f;
--primary-cta-text: #f5f4ef; --primary-cta-text: #f5f4ef;
--secondary-cta: #ecebea; --secondary-cta: #d4c5b9;
--secondary-cta-text: #2a2928; --secondary-cta-text: #2a2928;
--accent: #ffffff; --accent: #c5a059;
--background-accent: #c6b180; --background-accent: #e3d5c8;
/* 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);