Compare commits

...

42 Commits

Author SHA1 Message Date
7c00a04db1 Update src/app/page.tsx 2025-12-28 12:46:37 +00:00
eac2c50989 Update src/app/page.tsx 2025-12-28 12:45:10 +00:00
12fb193b1f Update src/app/page.tsx 2025-12-28 12:42:19 +00:00
31ea1eb8ac Update src/app/page.tsx 2025-12-28 12:40:20 +00:00
127150c7a2 Update src/app/page.tsx 2025-12-28 12:39:44 +00:00
cbd07a345c Update src/app/page.tsx 2025-12-28 12:38:09 +00:00
df9809eab2 Update src/app/page.tsx 2025-12-28 12:35:35 +00:00
9f8529944e Update src/app/page.tsx 2025-12-28 12:34:24 +00:00
5588369cf6 Update src/app/page.tsx 2025-12-28 12:33:10 +00:00
4863b2174b Update src/app/page.tsx 2025-12-28 12:32:40 +00:00
51292201bc Update src/app/page.tsx 2025-12-28 12:32:19 +00:00
a08ca02ac6 Update src/app/page.tsx 2025-12-28 12:09:13 +00:00
b8ce5634e5 Update src/app/page.tsx 2025-12-28 12:08:57 +00:00
49e4dcd5cb Update src/app/page.tsx 2025-12-28 12:04:39 +00:00
cfb46c096b Update src/app/page.tsx 2025-12-28 12:02:48 +00:00
2dfb85ba17 Update src/app/page.tsx 2025-12-28 12:02:13 +00:00
a05281adcc Update src/app/page.tsx 2025-12-28 12:01:51 +00:00
0e47bad5c6 Update src/app/page.tsx 2025-12-28 11:59:05 +00:00
d487e49446 Update src/app/page.tsx 2025-12-28 11:58:16 +00:00
71a14baf75 Update src/app/page.tsx 2025-12-28 11:46:38 +00:00
231a01ad8f Update src/app/page.tsx 2025-12-28 11:44:58 +00:00
21d8087eb0 Update src/app/page.tsx 2025-12-28 11:43:29 +00:00
8d37fa641c Update src/app/page.tsx 2025-12-28 11:41:27 +00:00
5d6fd1dbef Update src/app/page.tsx 2025-12-28 11:35:06 +00:00
9215fe1781 Update src/app/page.tsx 2025-12-28 11:34:04 +00:00
e163ad9cf6 Update src/app/page.tsx 2025-12-28 11:26:47 +00:00
ca0e4cd13f Update src/app/page.tsx 2025-12-28 11:25:38 +00:00
0bc4629e74 Update src/app/page.tsx 2025-12-28 11:17:48 +00:00
1bef719879 Update src/app/page.tsx 2025-12-28 11:16:20 +00:00
8cb05bf368 Update src/app/page.tsx 2025-12-28 11:13:56 +00:00
273209bb54 Update src/app/globals.css 2025-12-28 11:13:55 +00:00
3515da8c7a Update src/app/page.tsx 2025-12-28 11:12:51 +00:00
fe1b358b3b Update src/app/page.tsx 2025-12-28 10:58:32 +00:00
e8e0b36c34 Update src/app/page.tsx 2025-12-28 10:36:32 +00:00
c7ce182f71 Update src/app/page.tsx 2025-12-28 10:33:26 +00:00
ea111fc728 Update src/app/page.tsx 2025-12-28 10:30:02 +00:00
f678592612 Update src/app/layout.tsx 2025-12-28 10:23:42 +00:00
e56f56a088 Update src/app/globals.css 2025-12-28 10:23:41 +00:00
d311287469 Update src/app/layout.tsx 2025-12-28 10:15:02 +00:00
d49578d4c2 Update src/app/globals.css 2025-12-28 10:15:01 +00:00
42e986ecf2 Update src/app/page.tsx 2025-12-28 10:13:02 +00:00
5ad00a3494 Update src/app/globals.css 2025-12-28 10:10:36 +00:00
3 changed files with 66 additions and 247 deletions

View File

@@ -4,13 +4,13 @@
/* Base units */
/* --vw is set by ThemeProvider */
--background: #fbfaff;;
--card: #f7f5ff;;
--foreground: #0f0022;;
--primary-cta: #8b5cf6;;
--secondary-cta: #ffffff;;
--accent: #d8cef5;;
--background-accent: #c4a8f9;;
--background: #fff5f8;
--card: #ffebf0;
--foreground: #3d2930;
--primary-cta: #e890a8;
--secondary-cta: #ffffff;
--accent: #f5ccd5;
--background-accent: #f0b8c4;
/* 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-plus-jakarta-sans), sans-serif;
font-family: var(--font-inter-tight), sans-serif;
position: relative;
min-height: 100vh;
overscroll-behavior: none;
@@ -508,5 +508,5 @@ h3,
h4,
h5,
h6 {
font-family: var(--font-plus-jakarta-sans), sans-serif;
font-family: var(--font-inter-tight), sans-serif;
}

View File

@@ -1,12 +1,13 @@
import type { Metadata } from "next";
import { Plus_Jakarta_Sans } from "next/font/google";
import { Lato } from "next/font/google";
import "./globals.css";
import { ServiceWrapper } from "@/components/ServiceWrapper";
import Tag from "@/tag/Tag";
const plusJakartaSans = Plus_Jakarta_Sans({
variable: "--font-plus-jakarta-sans",
const lato = Lato({
variable: "--font-lato",
subsets: ["latin"],
weight: ["100", "300", "400", "700", "900"],
});
export const metadata: Metadata = {
@@ -44,7 +45,7 @@ export default function RootLayout({
<html lang="en" suppressHydrationWarning>
<ServiceWrapper>
<body
className={`${plusJakartaSans.variable} antialiased`}
className={`${lato.variable} antialiased`}
>
<Tag />
{children}

View File

@@ -1,15 +1,7 @@
"use client"
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import NavbarStyleFullscreen from '@/components/navbar/NavbarStyleFullscreen/NavbarStyleFullscreen';
import HeroBillboard from '@/components/sections/hero/HeroBillboard';
import TestimonialAboutCard from '@/components/sections/about/TestimonialAboutCard';
import ProductCardFive from '@/components/sections/product/ProductCardFive';
import TestimonialCardThirteen from '@/components/sections/testimonial/TestimonialCardThirteen';
import ContactCenterForm from '@/components/sections/contact/ContactCenterForm';
import FooterSocial from '@/components/sections/footer/FooterSocial';
import MetricCardSeven from '@/components/sections/metrics/MetricCardSeven';
import { Heart, Star, Quote, Instagram, Facebook, MapPin, Phone, Clock } from "lucide-react";
import { Heart, Star, Quote, Instagram, Facebook, MapPin, Phone, Clock, CheckCircle2, Check, Sparkles } from "lucide-react";
export default function LandingPage() {
return (
@@ -25,230 +17,56 @@ export default function LandingPage() {
secondaryButtonStyle="layered"
headingFontWeight="bold"
>
<div id="nav" data-section="nav">
<NavbarStyleFullscreen
navItems={[
{ name: "Home", id: "home" },
{ name: "About", id: "about" },
{ name: "Products", id: "products" },
{ name: "Locations", id: "locations" },
{ name: "Contact", id: "contact" }
]}
brandName="Sweet Bakes"
bottomLeftText="Freshly Baked Daily"
bottomRightText="hello@sweetbakes.com"
/>
</div>
<div id="hero" data-section="hero">
<HeroBillboard
title="Welcome to Sweet Bakes"
description="Handcrafted pastries and fresh-baked goods made with love every morning. Order now for same-day delivery."
tag="Artisan Bakery"
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766823074689-81v54jo8.jpg"
imageAlt="Fresh bakery display with pastries and bread"
frameStyle="card"
buttons={[
{ text: "Order Now", href: "products" },
{ text: "Learn More", href: "about" }
]}
/>
</div>
<div id="about" data-section="about">
<TestimonialAboutCard
tag="Our Story"
title="Started in a small kitchen, now serving hundreds of happy customers daily. Every pastry is made with the finest ingredients."
description="Maria Santos"
subdescription="Owner & Head Baker"
icon={Heart}
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766140152452-p4x3ah4p.jpg"
imageAlt="Maria Santos, bakery owner"
useInvertedBackground="noInvert"
/>
</div>
<div id="products" data-section="products">
<ProductCardFive
title="Our Signature Collection"
description="Explore our best-selling bakery items made fresh daily with premium ingredients"
tag="Best Sellers"
tagIcon={Star}
textboxLayout="default"
gridVariant="uniform-all-items-equal"
animationType="slide-up"
useInvertedBackground="noInvert"
products={[
{
id: "1",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766245914004-rta09f98.jpg",
imageAlt: "Buttery croissant",
button: { text: "Add to Order", href: "contact" },
isFavorited: false
},
{
id: "2",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766815285364-7q7e9roz.jpg",
imageAlt: "Artisan sourdough bread",
button: { text: "Add to Order", href: "contact" },
isFavorited: false
},
{
id: "3",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766849870204-lmbcrr56.jpg",
imageAlt: "Decadent chocolate cake",
button: { text: "Add to Order", href: "contact" },
isFavorited: false
},
{
id: "4",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766915699751-fy2shocj.jpg",
imageAlt: "Glazed donuts",
button: { text: "Add to Order", href: "contact" },
isFavorited: false
}
]}
/>
</div>
<div id="locations" data-section="locations">
<MetricCardSeven
title="Our Bakery Locations"
description="Visit one of our fresh bakeries in your neighborhood. Open daily for your favorite treats."
tag="Find Us"
tagIcon={MapPin}
textboxLayout="default"
gridVariant="uniform-all-items-equal"
animationType="slide-up"
useInvertedBackground="noInvert"
metrics={[
{
id: "1",
value: "123 Bread St",
title: "Downtown Main Store",
items: ["6am - 8pm Daily", "Phone: (555) 123-4567", "Prime Location"]
},
{
id: "2",
value: "456 Pastry Ln",
title: "Riverside North Branch",
items: ["7am - 7pm Daily", "Phone: (555) 234-5678", "Spacious Seating"]
},
{
id: "3",
value: "789 Croissant Ave",
title: "Uptown Premium Location",
items: ["6:30am - 9pm Daily", "Phone: (555) 345-6789", "Extended Hours"]
},
{
id: "4",
value: "321 Sourdough St",
title: "West End Community Hub",
items: ["7am - 6pm Daily", "Phone: (555) 456-7890", "Community Events"]
}
]}
/>
</div>
<div id="testimonials" data-section="testimonials">
<TestimonialCardThirteen
title="What Our Customers Say"
description="Join hundreds of satisfied customers who love our fresh-baked treats"
tag="Reviews"
tagIcon={Quote}
textboxLayout="default"
animationType="slide-up"
useInvertedBackground="noInvert"
showRating={true}
testimonials={[
{
id: "1",
name: "Sarah Mitchell",
handle: "@sarahmitchell",
testimonial: "The croissants here are absolutely incredible! Perfectly buttery and fresh every single time. My go-to spot for breakfast.",
rating: 5,
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766154635301-vse33sxl.jpg",
imageAlt: "Sarah Mitchell"
},
{
id: "2",
name: "James Chen",
handle: "@jameschen92",
testimonial: "Best sourdough in town! The flavor is incredible and they use only natural ingredients. Worth every penny.",
rating: 5,
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766183842429-uezzjpov.jpg",
imageAlt: "James Chen"
},
{
id: "3",
name: "Emma Rodriguez",
handle: "@emmarod",
testimonial: "I order their birthday cakes for all my celebrations. Beautiful designs and absolutely delicious. Highly recommended!",
rating: 5,
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766184309647-aqbmmuiq.jpg",
imageAlt: "Emma Rodriguez"
},
{
id: "4",
name: "David Thompson",
handle: "@davidthompson",
testimonial: "Sweet Bakes has become my daily ritual. Their pastries are made with such care and attention to detail. Love this place!",
rating: 5,
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/gallery/uploaded-1766849444575-td00y2fe.jpg",
imageAlt: "David Thompson"
}
]}
/>
</div>
<div id="contact" data-section="contact">
<ContactCenterForm
title="Place Your Order"
description="Fill out the form below to order your favorite fresh-baked items. We'll confirm your order within 2 hours."
useInvertedBackground="noInvert"
buttonText="Send Order"
inputs={[
{ name: "name", type: "text", placeholder: "Your Name", required: true },
{ name: "email", type: "email", placeholder: "Email Address", required: true },
{ name: "phone", type: "tel", placeholder: "Phone Number", required: true }
]}
textarea={{ name: "order", placeholder: "What would you like to order? Include quantities and any special requests...", rows: 5, required: true }}
/>
</div>
<div id="footer" data-section="footer">
<FooterSocial
logoText="Sweet Bakes"
columns={[
{
title: "Company",
items: [
{ label: "About Us", href: "about" },
{ label: "Locations", href: "locations" },
{ label: "Contact", href: "contact" }
]
},
{
title: "Products",
items: [
{ label: "Pastries", href: "products" },
{ label: "Custom Orders", href: "contact" }
]
},
{
title: "Legal",
items: [
{ label: "Privacy Policy", href: "#" },
{ label: "Terms of Service", href: "#" }
]
}
]}
socialLinks={[
{ icon: Instagram, href: "https://instagram.com", ariaLabel: "Instagram" },
{ icon: Facebook, href: "https://facebook.com", ariaLabel: "Facebook" }
]}
copyrightText="© Sweet Bakes, 2025. All rights reserved."
/>
<div className="min-h-screen bg-white text-black">
<div className="container mx-auto px-4">
<h1 className="text-4xl font-bold text-center py-12">Sweet Bakes</h1>
<div className="text-center py-8">
<p className="text-xl text-gray-600 mb-8">Handcrafted pastries and fresh-baked goods made daily</p>
<div className="grid grid-cols-1 md:grid-cols-3 gap-8 mb-12">
<div className="p-6 border rounded-lg">
<Star className="w-8 h-8 text-yellow-500 mx-auto mb-4" />
<h3 className="text-lg font-semibold mb-2">Fresh Daily</h3>
<p className="text-gray-600">Baked fresh every morning with premium ingredients</p>
</div>
<div className="p-6 border rounded-lg">
<Heart className="w-8 h-8 text-red-500 mx-auto mb-4" />
<h3 className="text-lg font-semibold mb-2">Made with Love</h3>
<p className="text-gray-600">Every item crafted with care and attention to detail</p>
</div>
<div className="p-6 border rounded-lg">
<Sparkles className="w-8 h-8 text-purple-500 mx-auto mb-4" />
<h3 className="text-lg font-semibold mb-2">Signature Collection</h3>
<p className="text-gray-600">Unique recipes passed down through generations</p>
</div>
</div>
<div className="bg-gray-50 p-8 rounded-lg mb-12">
<h2 className="text-2xl font-bold mb-4">Visit Our Bakery</h2>
<div className="flex items-center justify-center space-x-4 text-gray-600">
<MapPin className="w-5 h-5" />
<span>123 Sweet Street, Bakery Town</span>
</div>
<div className="flex items-center justify-center space-x-4 text-gray-600 mt-2">
<Phone className="w-5 h-5" />
<span>(555) 123-BAKE</span>
</div>
<div className="flex items-center justify-center space-x-4 text-gray-600 mt-2">
<Clock className="w-5 h-5" />
<span>Open 6AM - 6PM Daily</span>
</div>
</div>
<div className="text-center">
<h3 className="text-xl font-semibold mb-4">Follow Us</h3>
<div className="flex justify-center space-x-4">
<a href="https://instagram.com" className="text-gray-600 hover:text-pink-500">
<Instagram className="w-6 h-6" />
</a>
<a href="https://facebook.com" className="text-gray-600 hover:text-blue-500">
<Facebook className="w-6 h-6" />
</a>
</div>
</div>
</div>
</div>
</div>
</ThemeProvider>
);