24 Commits

Author SHA1 Message Date
76b78c6f74 Merge version_10 into main
Merge version_10 into main
2025-12-19 23:21:44 +00:00
a3e9ee2574 Update src/app/page.tsx 2025-12-19 23:21:40 +00:00
728ca8a1a2 Update src/app/layout.tsx 2025-12-19 23:21:39 +00:00
f124761c6f Merge version_9 into main
Merge version_9 into main
2025-12-19 23:09:43 +00:00
7b2cc2668a Update src/app/page.tsx 2025-12-19 23:09:38 +00:00
62fa6508e4 Merge version_9 into main
Merge version_9 into main
2025-12-19 23:08:08 +00:00
eac05b2648 Update src/app/page.tsx 2025-12-19 23:08:04 +00:00
59b629ee33 Update src/app/layout.tsx 2025-12-19 23:08:03 +00:00
4783e15ab6 Merge version_9 into main
Merge version_9 into main
2025-12-19 23:06:15 +00:00
8c78393b1a Update src/app/page.tsx 2025-12-19 23:06:10 +00:00
4dc6b517b1 Merge version_9 into main
Merge version_9 into main
2025-12-19 23:03:37 +00:00
0982a5c612 Update src/app/page.tsx 2025-12-19 23:03:33 +00:00
df849cf62e Merge version_7 into main
Merge version_7 into main
2025-12-19 22:51:40 +00:00
451c1af105 Update src/app/layout.tsx 2025-12-19 22:51:35 +00:00
8a4acfa136 Update src/app/globals.css 2025-12-19 22:51:35 +00:00
179ff91b72 Merge version_6 into main
Merge version_6 into main
2025-12-19 22:49:12 +00:00
954d406124 Update src/app/page.tsx 2025-12-19 22:49:07 +00:00
bba325f4ef Update src/app/layout.tsx 2025-12-19 22:49:06 +00:00
8d63e7a3d2 Update src/app/globals.css 2025-12-19 22:49:06 +00:00
697e22179b Merge version_5 into main
Merge version_5 into main
2025-12-19 22:44:06 +00:00
0f79cf10e1 Update src/app/page.tsx 2025-12-19 22:44:02 +00:00
a71d71918a Merge version_4 into main
Merge version_4 into main
2025-12-19 22:42:00 +00:00
b603ae9176 Merge version_3 into main
Merge version_3 into main
2025-12-19 22:39:47 +00:00
48c52bf3d4 Merge version_2 into main
Merge version_2 into main
2025-12-19 22:35:47 +00:00
3 changed files with 126 additions and 216 deletions

View File

@@ -4,13 +4,13 @@
/* Base units */
/* --vw is set by ThemeProvider */
--background: #1a0d1d;
--card: #2a1a35;
--foreground: #f0e6ff;
--primary-cta: #b366ff;
--secondary-cta: #1a0d1d;
--accent: #b58cff;
--background-accent: #6b28d9;
--background: #faf5f2;
--card: #f5ede8;
--foreground: #3d2417;
--primary-cta: #d4704c;
--secondary-cta: #ffffff;
--accent: #f5d4c8;
--background-accent: #d9a18f;
/* text sizing - set by ThemeProvider */
/* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem);
@@ -495,7 +495,7 @@ html {
body {
background-color: var(--background);
color: var(--foreground);
font-family: var(--font-inter-tight), sans-serif;
font-family: var(--font-inter), sans-serif;
position: relative;
min-height: 100vh;
overscroll-behavior: none;
@@ -508,5 +508,5 @@ h3,
h4,
h5,
h6 {
font-family: var(--font-inter-tight), sans-serif;
font-family: var(--font-inter), sans-serif;
}

View File

@@ -1,11 +1,11 @@
import type { Metadata } from "next";
import { Fraunces } from "next/font/google";
import { Inter } from "next/font/google";
import "./globals.css";
import { ServiceWrapper } from "@/components/ServiceWrapper";
import Tag from "@/tag/Tag";
const fraunces = Fraunces({
variable: "--font-fraunces",
const inter = Inter({
variable: "--font-inter",
subsets: ["latin"],
});
@@ -48,7 +48,7 @@ export default function RootLayout({
<html lang="en" suppressHydrationWarning>
<ServiceWrapper>
<body
className={fraunces.variable}
className={inter.variable}
>
<Tag />
{children}

View File

@@ -1,231 +1,141 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import NavbarStyleFullscreen from '@/components/navbar/NavbarStyleFullscreen/NavbarStyleFullscreen';
import HeroOverlayBottomSplit from '@/components/sections/hero/HeroOverlayBottomSplit';
import TextAbout from '@/components/sections/about/TextAbout';
import ProductCardSix from '@/components/sections/product/ProductCardSix';
import TestimonialCardTen from '@/components/sections/testimonial/TestimonialCardTen';
import SocialProofThree from '@/components/sections/socialProof/SocialProofThree';
import ContactSplit from '@/components/sections/contact/ContactSplit';
import FooterBaseCard from '@/components/sections/footer/FooterBaseCard';
export default function LandingPage() {
return (
<ThemeProvider
defaultButtonVariant="hover-magnetic"
defaultTextAnimation="background-highlight"
borderRadius="pill"
contentWidth="small"
sizing="small"
background="dotGrid"
cardStyle="elevated-accent"
defaultButtonVariant="text-stagger"
defaultTextAnimation="entrance-slide"
borderRadius="rounded"
contentWidth="medium"
sizing="medium"
background="circleGradient"
cardStyle="glass-elevated"
primaryButtonStyle="gradient"
secondaryButtonStyle="layered"
headingFontWeight="extrabold"
secondaryButtonStyle="glass"
headingFontWeight="normal"
>
<div id="nav" data-section="nav">
<NavbarStyleFullscreen
navItems={[
{ name: "Home", id: "hero" },
{ name: "Menu", id: "menu" },
{ name: "About", id: "about" },
{ name: "Reviews", id: "testimonials" },
{ name: "Contact", id: "contact" }
]}
logoSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766140108208-9jx2n5py.jpg"
logoAlt="Coffeeshop Logo"
brandName="Brew Haven"
bottomLeftText="Specialty Coffee & More"
bottomRightText="hello@brewhaven.com"
/>
{/* Navigation component will be rendered here when available */}
</div>
<div id="hero" data-section="hero">
<HeroOverlayBottomSplit
title="Craft Coffee, Crafted with Care"
description="Discover specialty coffee roasted fresh daily. We bring the finest beans from around the world to your cup."
buttons={[
{ text: "Explore Menu", href: "menu" },
{ text: "Visit Us Today", href: "contact" }
]}
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766140053900-frhkawzl.jpg"
imageAlt="Specialty coffee in a ceramic cup"
showDimOverlay={true}
ariaLabel="Hero section showcasing specialty coffee"
/>
{/* Hero section will be rendered here when available */}
<div className="min-h-screen flex items-center justify-center bg-gradient-to-br from-amber-50 to-orange-100">
<div className="text-center px-4">
<h1 className="text-5xl font-bold text-gray-900 mb-6">Craft Coffee, Crafted with Care</h1>
<p className="text-xl text-gray-700 mb-8 max-w-2xl mx-auto">Discover specialty coffee roasted fresh daily. We bring the finest beans from around the world to your cup.</p>
<div className="flex gap-4 justify-center">
<button className="px-6 py-3 bg-amber-600 text-white rounded-lg hover:bg-amber-700 transition-colors">Explore Menu</button>
<button className="px-6 py-3 border border-amber-600 text-amber-600 rounded-lg hover:bg-amber-50 transition-colors">Visit Us Today</button>
</div>
</div>
</div>
</div>
<div id="about" data-section="about">
<TextAbout
title="We believe in honest coffee. Every cup tells a story of passion, quality, and connection to the farmers who grew it."
useInvertedBackground="noInvert"
buttons={[
{ text: "Our Story", href: "about" },
{ text: "Learn More", href: "contact" }
]}
/>
{/* About section will be rendered here when available */}
<div className="py-16 px-4">
<div className="max-w-4xl mx-auto text-center">
<h2 className="text-3xl font-bold text-gray-900 mb-6">About Us</h2>
<p className="text-lg text-gray-700">We believe in honest coffee. Every cup tells a story of passion, quality, and connection to the farmers who grew it.</p>
</div>
</div>
</div>
<div id="menu" data-section="menu">
<ProductCardSix
title="Menu"
description="Explore our signature drinks and freshly baked pastries. Each item is crafted with precision and care."
products={[
{
id: "1",
name: "Single Origin Espresso",
price: "$4.50",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766183740051-csjqe6w0.jpg",
imageAlt: "Single origin espresso shot"
},
{
id: "2",
name: "Artisan Cappuccino",
price: "$5.75",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766140052116-ugc31hy1.jpg",
imageAlt: "Cappuccino with latte art"
},
{
id: "3",
name: "Fresh Pastries",
price: "$3.50",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766183584228-m2bixr3w.jpg",
imageAlt: "Assorted fresh baked pastries"
}
]}
gridVariant="uniform-all-items-equal"
animationType="slide-up"
containerStyle="default"
textboxLayout="default"
useInvertedBackground="noInvert"
/>
</div>
<div id="testimonials" data-section="testimonials">
<TestimonialCardTen
title="What Our Customers Say"
description="Join hundreds of satisfied coffee lovers who have made Brew Haven their daily ritual."
variant="card"
textboxLayout="default"
useInvertedBackground="noInvert"
testimonials={[
{
id: "1",
title: "The Perfect Morning Ritual",
quote: "The quality of coffee here is unmatched. Every single cup is perfectly crafted and tastes like pure happiness. This place has become my sanctuary.",
name: "Sarah Martinez",
role: "Designer",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766183586665-q5sajrdt.jpg",
imageAlt: "Sarah Martinez portrait"
},
{
id: "2",
title: "Atmosphere & Excellence Combined",
quote: "What sets Brew Haven apart is their commitment to both quality and warmth. The baristas genuinely care, and it shows in every interaction.",
name: "James Chen",
role: "Entrepreneur",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766183587552-1pqoe5c0.jpg",
imageAlt: "James Chen portrait"
},
{
id: "3",
title: "A Coffee Lover's Dream",
quote: "I've traveled extensively and tasted coffee everywhere. This is genuinely some of the best I've ever had. The single-origin selections are phenomenal.",
name: "Emily Rodriguez",
role: "Travel Writer",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766154634313-y5tjxwwi.jpg",
imageAlt: "Emily Rodriguez portrait"
},
{
id: "4",
title: "More Than Just Coffee",
quote: "It's not just the coffee that brings me back daily. It's the community, the knowledge the team shares, and the genuine care they put into everything.",
name: "Michael Thompson",
role: "Graphic Designer",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766182321167-i4kvpj5f.jpg",
imageAlt: "Michael Thompson portrait"
}
]}
/>
</div>
<div id="social-proof" data-section="social-proof">
<SocialProofThree
title="Trusted by Coffee Enthusiasts"
description="We partner with the finest roasters and certification organizations committed to quality and sustainability."
logos={[
"https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766183580042-1z23mdom.jpg",
"https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766162773520-d3l7c32r.jpg",
"https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766140106374-le5uxrj5.jpg",
"https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766183581068-iklr7ul7.jpg",
"https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766140107205-4bafhl5z.jpg",
"https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766183582037-814qymx8.jpg",
"https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766140109000-ndb7534s.jpg",
"https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766183582950-ea055ote.jpg"
]}
animationType="slide-up"
textboxLayout="default"
useInvertedBackground="noInvert"
speed={40}
topMarqueeDirection="left"
/>
{/* Menu section will be rendered here when available */}
<div className="py-16 px-4 bg-gray-50">
<div className="max-w-6xl mx-auto">
<h2 className="text-3xl font-bold text-gray-900 mb-8 text-center">Menu</h2>
<p className="text-lg text-gray-700 mb-12 text-center">Explore our signature drinks and freshly baked pastries. Each item is crafted with precision and care.</p>
<div className="grid md:grid-cols-3 gap-8">
<div className="bg-white rounded-lg shadow-md overflow-hidden">
<img src="https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766183740051-csjqe6w0.jpg" alt="Single Origin Espresso" className="w-full h-48 object-cover" />
<div className="p-6">
<h3 className="text-xl font-semibold text-gray-900 mb-2">Single Origin Espresso</h3>
<p className="text-amber-600 font-bold text-lg">$4.50</p>
</div>
</div>
<div className="bg-white rounded-lg shadow-md overflow-hidden">
<img src="https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766140052116-ugc31hy1.jpg" alt="Artisan Cappuccino" className="w-full h-48 object-cover" />
<div className="p-6">
<h3 className="text-xl font-semibold text-gray-900 mb-2">Artisan Cappuccino</h3>
<p className="text-amber-600 font-bold text-lg">$5.75</p>
</div>
</div>
<div className="bg-white rounded-lg shadow-md overflow-hidden">
<img src="https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766183584228-m2bixr3w.jpg" alt="Fresh Pastries" className="w-full h-48 object-cover" />
<div className="p-6">
<h3 className="text-xl font-semibold text-gray-900 mb-2">Fresh Pastries</h3>
<p className="text-amber-600 font-bold text-lg">$3.50</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div id="contact" data-section="contact">
<ContactSplit
tag="Stay Connected"
title="Join Our Coffee Community"
description="Subscribe to our newsletter for new roasts, brewing tips, and exclusive member-only events. We share your passion for great coffee."
useInvertedBackground="noInvert"
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766183585667-fud4izge.jpg"
imageAlt="Brew Haven coffeeshop interior"
mediaPosition="right"
inputPlaceholder="Enter your email"
buttonText="Subscribe"
termsText="We respect your inbox. Unsubscribe anytime."
/>
{/* Contact section will be rendered here when available */}
<div className="py-16 px-4">
<div className="max-w-4xl mx-auto text-center">
<h2 className="text-3xl font-bold text-gray-900 mb-6">Join Our Coffee Community</h2>
<p className="text-lg text-gray-700 mb-8">Subscribe to our newsletter for new roasts, brewing tips, and exclusive member-only events. We share your passion for great coffee.</p>
<div className="flex gap-4 justify-center max-w-md mx-auto">
<input type="email" placeholder="Enter your email" className="flex-1 px-4 py-3 border border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-amber-600" />
<button className="px-6 py-3 bg-amber-600 text-white rounded-lg hover:bg-amber-700 transition-colors">Subscribe</button>
</div>
<p className="text-sm text-gray-500 mt-4">We respect your inbox. Unsubscribe anytime.</p>
</div>
</div>
</div>
<div id="footer" data-section="footer">
<FooterBaseCard
logoText="Brew Haven"
columns={[
{
title: "Coffee",
items: [
{ label: "Our Menu", href: "#menu" },
{ label: "Brewing Guide", href: "#" },
{ label: "Single Origins", href: "#" }
]
},
{
title: "Visit Us",
items: [
{ label: "Location & Hours", href: "#contact" },
{ label: "Make a Reservation", href: "#" },
{ label: "Gift Cards", href: "#" }
]
},
{
title: "About",
items: [
{ label: "Our Story", href: "#about" },
{ label: "Sustainability", href: "#" },
{ label: "Careers", href: "#" }
]
},
{
title: "Connect",
items: [
{ label: "Instagram", href: "#" },
{ label: "Facebook", href: "#" },
{ label: "Contact Us", href: "#contact" }
]
}
]}
copyrightText="© 2025 Brew Haven. All rights reserved."
/>
{/* Footer section will be rendered here when available */}
<div className="bg-gray-900 text-white py-12 px-4">
<div className="max-w-6xl mx-auto">
<div className="grid md:grid-cols-4 gap-8">
<div>
<h3 className="text-lg font-semibold mb-4">Coffee</h3>
<ul className="space-y-2">
<li><a href="#menu" className="text-gray-300 hover:text-white transition-colors">Our Menu</a></li>
<li><a href="#" className="text-gray-300 hover:text-white transition-colors">Brewing Guide</a></li>
<li><a href="#" className="text-gray-300 hover:text-white transition-colors">Single Origins</a></li>
</ul>
</div>
<div>
<h3 className="text-lg font-semibold mb-4">Visit Us</h3>
<ul className="space-y-2">
<li><a href="#contact" className="text-gray-300 hover:text-white transition-colors">Location & Hours</a></li>
<li><a href="#" className="text-gray-300 hover:text-white transition-colors">Make a Reservation</a></li>
<li><a href="#" className="text-gray-300 hover:text-white transition-colors">Gift Cards</a></li>
</ul>
</div>
<div>
<h3 className="text-lg font-semibold mb-4">About</h3>
<ul className="space-y-2">
<li><a href="#about" className="text-gray-300 hover:text-white transition-colors">Our Story</a></li>
<li><a href="#" className="text-gray-300 hover:text-white transition-colors">Sustainability</a></li>
<li><a href="#" className="text-gray-300 hover:text-white transition-colors">Careers</a></li>
</ul>
</div>
<div>
<h3 className="text-lg font-semibold mb-4">Connect</h3>
<ul className="space-y-2">
<li><a href="#" className="text-gray-300 hover:text-white transition-colors">Instagram</a></li>
<li><a href="#" className="text-gray-300 hover:text-white transition-colors">Facebook</a></li>
<li><a href="#contact" className="text-gray-300 hover:text-white transition-colors">Contact Us</a></li>
</ul>
</div>
</div>
<div className="border-t border-gray-800 mt-8 pt-8 text-center">
<h2 className="text-2xl font-bold mb-2">Brew Haven</h2>
<p className="text-gray-400">© 2025 Brew Haven. All rights reserved.</p>
</div>
</div>
</div>
</div>
</ThemeProvider>
);