Compare commits
16 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 1ab0039445 | |||
| b316b8a3df | |||
| e521ebae9a | |||
| d4d640b0f0 | |||
| c1e15afde0 | |||
| af970e6085 | |||
| 179050d070 | |||
| 3a56d5fb1c | |||
| 4b0351f4f6 | |||
| aaca50b3b0 | |||
| fb04c1e967 | |||
| 1269d28c72 | |||
| bf78189f11 | |||
| f378442163 | |||
| 122c55e5eb | |||
| 62316a0686 |
50
src/app/about/page.tsx
Normal file
50
src/app/about/page.tsx
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
"use client";
|
||||||
|
|
||||||
|
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||||
|
import ReactLenis from "lenis/react";
|
||||||
|
import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay';
|
||||||
|
import TestimonialAboutCard from '@/components/sections/about/TestimonialAboutCard';
|
||||||
|
import FooterBaseCard from '@/components/sections/footer/FooterBaseCard';
|
||||||
|
import { Award } from "lucide-react";
|
||||||
|
|
||||||
|
export default function AboutPage() {
|
||||||
|
return (
|
||||||
|
<ThemeProvider defaultButtonVariant="hover-magnetic" defaultTextAnimation="entrance-slide" borderRadius="rounded" contentWidth="medium" sizing="medium" background="circleGradient" cardStyle="glass-elevated" primaryButtonStyle="gradient" secondaryButtonStyle="glass" headingFontWeight="normal">
|
||||||
|
<ReactLenis root>
|
||||||
|
<div id="nav" data-section="nav">
|
||||||
|
<NavbarLayoutFloatingOverlay
|
||||||
|
navItems={[
|
||||||
|
{ name: "Home", id: "/" },
|
||||||
|
{ name: "About", id: "/about" },
|
||||||
|
{ name: "Menu", id: "/menu" },
|
||||||
|
{ name: "Gallery", id: "/gallery" },
|
||||||
|
{ name: "Order", id: "/order" },
|
||||||
|
{ name: "Contact", id: "/contact" },
|
||||||
|
]}
|
||||||
|
brandName="LMB"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
<div id="about" data-section="about">
|
||||||
|
<TestimonialAboutCard
|
||||||
|
tag="Our Story"
|
||||||
|
title="Our History"
|
||||||
|
description="Founded in 1950, LMB started with a small dream of bringing authentic flavors to everyone. Over the decades, we've stayed true to our roots."
|
||||||
|
subdescription="From our family to yours, we believe that tradition is the best ingredient."
|
||||||
|
icon={Award}
|
||||||
|
imageSrc="http://img.b2bpic.net/free-photo/male-cook-cuts-orange-into-pieces-marble-table_2831-7988.jpg?_wi=1"
|
||||||
|
useInvertedBackground={false}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
<div id="footer" data-section="footer">
|
||||||
|
<FooterBaseCard
|
||||||
|
logoText="LMB"
|
||||||
|
columns={[
|
||||||
|
{ title: "Shop", items: [{ label: "Menu", href: "/menu" }, { label: "About", href: "/about" }] },
|
||||||
|
{ title: "Legal", items: [{ label: "Privacy Policy", href: "#" }, { label: "Terms of Service", href: "#" }] },
|
||||||
|
]}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</ReactLenis>
|
||||||
|
</ThemeProvider>
|
||||||
|
);
|
||||||
|
}
|
||||||
76
src/app/contact/page.tsx
Normal file
76
src/app/contact/page.tsx
Normal file
@@ -0,0 +1,76 @@
|
|||||||
|
"use client";
|
||||||
|
|
||||||
|
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||||
|
import ReactLenis from "lenis/react";
|
||||||
|
import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay';
|
||||||
|
import ContactSplitForm from '@/components/sections/contact/ContactSplitForm';
|
||||||
|
import FooterBaseCard from '@/components/sections/footer/FooterBaseCard';
|
||||||
|
|
||||||
|
export default function ContactPage() {
|
||||||
|
return (
|
||||||
|
<ThemeProvider
|
||||||
|
defaultButtonVariant="bounce-effect"
|
||||||
|
defaultTextAnimation="entrance-slide"
|
||||||
|
borderRadius="pill"
|
||||||
|
contentWidth="medium"
|
||||||
|
sizing="medium"
|
||||||
|
background="circleGradient"
|
||||||
|
cardStyle="glass-elevated"
|
||||||
|
primaryButtonStyle="gradient"
|
||||||
|
secondaryButtonStyle="glass"
|
||||||
|
headingFontWeight="normal"
|
||||||
|
>
|
||||||
|
<ReactLenis root>
|
||||||
|
<div id="nav" data-section="nav">
|
||||||
|
<NavbarLayoutFloatingOverlay
|
||||||
|
navItems={[
|
||||||
|
{ name: "Home", id: "/" },
|
||||||
|
{ name: "About", id: "/#about" },
|
||||||
|
{ name: "Menu", id: "/#products" },
|
||||||
|
{ name: "Contact", id: "/contact" },
|
||||||
|
]}
|
||||||
|
brandName="LMB"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="contact" data-section="contact">
|
||||||
|
<ContactSplitForm
|
||||||
|
useInvertedBackground={false}
|
||||||
|
title="Contact Us"
|
||||||
|
description="We would love to hear from you. Reach out for bulk orders, inquiries, or just to say hello!"
|
||||||
|
inputs={[
|
||||||
|
{ name: "name", type: "text", placeholder: "Your Name", required: true },
|
||||||
|
{ name: "email", type: "email", placeholder: "Your Email", required: true },
|
||||||
|
]}
|
||||||
|
textarea={{ name: "message", placeholder: "How can we help you?", rows: 4, required: true }}
|
||||||
|
buttonText="Submit Message"
|
||||||
|
imageSrc="http://img.b2bpic.net/free-photo/front-view-vintage-shop-window_141667-3.jpg"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div className="flex justify-center p-10">
|
||||||
|
<a
|
||||||
|
href="https://wa.me/1234567890"
|
||||||
|
target="_blank"
|
||||||
|
rel="noopener noreferrer"
|
||||||
|
className="bg-green-500 text-white px-8 py-4 rounded-full font-bold shadow-lg hover:bg-green-600 transition-all"
|
||||||
|
>
|
||||||
|
Chat on WhatsApp
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="footer" data-section="footer">
|
||||||
|
<FooterBaseCard
|
||||||
|
logoText="LMB"
|
||||||
|
columns={[
|
||||||
|
{ title: "Shop", items: [{ label: "Menu", href: "/#products" }, { label: "About", href: "/#about" }] },
|
||||||
|
{ title: "Contact", items: [{ label: "Get in Touch", href: "/contact" }] },
|
||||||
|
{ title: "Legal", items: [{ label: "Privacy Policy", href: "#" }, { label: "Terms of Service", href: "#" }] },
|
||||||
|
]}
|
||||||
|
copyrightText="© 2025 | LMB Sweets"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</ReactLenis>
|
||||||
|
</ThemeProvider>
|
||||||
|
);
|
||||||
|
}
|
||||||
54
src/app/gallery/page.tsx
Normal file
54
src/app/gallery/page.tsx
Normal file
@@ -0,0 +1,54 @@
|
|||||||
|
"use client";
|
||||||
|
|
||||||
|
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||||
|
import ReactLenis from "lenis/react";
|
||||||
|
import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay';
|
||||||
|
import FooterBaseCard from '@/components/sections/footer/FooterBaseCard';
|
||||||
|
import ProductCardThree from '@/components/sections/product/ProductCardThree';
|
||||||
|
|
||||||
|
export default function GalleryPage() {
|
||||||
|
return (
|
||||||
|
<ThemeProvider defaultButtonVariant="hover-magnetic" defaultTextAnimation="entrance-slide" borderRadius="rounded" contentWidth="medium" sizing="medium" background="circleGradient" cardStyle="glass-elevated" primaryButtonStyle="gradient" secondaryButtonStyle="glass" headingFontWeight="normal">
|
||||||
|
<ReactLenis root>
|
||||||
|
<div id="nav" data-section="nav">
|
||||||
|
<NavbarLayoutFloatingOverlay
|
||||||
|
navItems={[
|
||||||
|
{ name: "Home", id: "/" },
|
||||||
|
{ name: "About", id: "/about" },
|
||||||
|
{ name: "Menu", id: "/menu" },
|
||||||
|
{ name: "Gallery", id: "/gallery" },
|
||||||
|
{ name: "Order", id: "/order" },
|
||||||
|
{ name: "Contact", id: "/contact" },
|
||||||
|
]}
|
||||||
|
brandName="LMB"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
<div id="products" data-section="products">
|
||||||
|
<ProductCardThree
|
||||||
|
title="Our Sweet Shop Gallery"
|
||||||
|
description="A visual tour of our finest creations and store highlights."
|
||||||
|
gridVariant="four-items-2x2-equal-grid"
|
||||||
|
animationType="slide-up"
|
||||||
|
products={[
|
||||||
|
{ id: "g1", name: "Artisan Sweets", price: "", imageSrc: "http://img.b2bpic.net/free-photo/indian-dessert-presentation-wedding_23-2151994688.jpg" },
|
||||||
|
{ id: "g2", name: "Festive Collection", price: "", imageSrc: "http://img.b2bpic.net/free-photo/colorful-baskets-fresh-spices-sale-generated-by-ai_188544-9016.jpg?_wi=1" },
|
||||||
|
{ id: "g3", name: "Traditional Savories", price: "", imageSrc: "http://img.b2bpic.net/free-photo/variety-salted-crackers-orange-bowl_114579-54041.jpg?_wi=1" },
|
||||||
|
{ id: "g4", name: "Handcrafted Treats", price: "", imageSrc: "http://img.b2bpic.net/free-photo/orange-roll-barfee-barfi-sweet-mitlai_466689-71823.jpg?_wi=1" },
|
||||||
|
]}
|
||||||
|
textboxLayout="default"
|
||||||
|
useInvertedBackground={false}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
<div id="footer" data-section="footer">
|
||||||
|
<FooterBaseCard
|
||||||
|
logoText="LMB"
|
||||||
|
columns={[
|
||||||
|
{ title: "Shop", items: [{ label: "Menu", href: "/menu" }, { label: "Gallery", href: "/gallery" }, { label: "Order", href: "/order" }] },
|
||||||
|
{ title: "Legal", items: [{ label: "Privacy Policy", href: "#" }, { label: "Terms of Service", href: "#" }] },
|
||||||
|
]}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</ReactLenis>
|
||||||
|
</ThemeProvider>
|
||||||
|
);
|
||||||
|
}
|
||||||
55
src/app/menu/page.tsx
Normal file
55
src/app/menu/page.tsx
Normal file
@@ -0,0 +1,55 @@
|
|||||||
|
"use client";
|
||||||
|
|
||||||
|
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||||
|
import ReactLenis from "lenis/react";
|
||||||
|
import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay';
|
||||||
|
import ProductCardThree from '@/components/sections/product/ProductCardThree';
|
||||||
|
import FooterBaseCard from '@/components/sections/footer/FooterBaseCard';
|
||||||
|
|
||||||
|
export default function MenuPage() {
|
||||||
|
return (
|
||||||
|
<ThemeProvider defaultButtonVariant="hover-magnetic" defaultTextAnimation="entrance-slide" borderRadius="rounded" contentWidth="medium" sizing="medium" background="circleGradient" cardStyle="glass-elevated" primaryButtonStyle="gradient" secondaryButtonStyle="glass" headingFontWeight="normal">
|
||||||
|
<ReactLenis root>
|
||||||
|
<div id="nav" data-section="nav">
|
||||||
|
<NavbarLayoutFloatingOverlay
|
||||||
|
navItems={[
|
||||||
|
{ name: "Home", id: "/" },
|
||||||
|
{ name: "About", id: "/about" },
|
||||||
|
{ name: "Menu", id: "/menu" },
|
||||||
|
{ name: "Gallery", id: "/gallery" },
|
||||||
|
{ name: "Order", id: "/order" },
|
||||||
|
{ name: "Contact", id: "/contact" },
|
||||||
|
]}
|
||||||
|
brandName="LMB"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
<div id="products" data-section="products">
|
||||||
|
<ProductCardThree
|
||||||
|
animationType="slide-up"
|
||||||
|
textboxLayout="default"
|
||||||
|
gridVariant="three-columns-all-equal-width"
|
||||||
|
products={[
|
||||||
|
{ id: "1", name: "Classic Laddu", price: "$12.00", imageSrc: "http://img.b2bpic.net/free-photo/top-view-pepernoten-dessert-still-life_23-2149766704.jpg" },
|
||||||
|
{ id: "2", name: "Gulab Jamun", price: "$15.00", imageSrc: "http://img.b2bpic.net/free-photo/baked-red-bean-paste-buns-place-brown-fabric-served-with-coffee_1150-35411.jpg" },
|
||||||
|
{ id: "3", name: "Royal Barfi", price: "$18.00", imageSrc: "http://img.b2bpic.net/free-photo/top-view-delicious-pink-cakes-with-candies-cookies-white-desk-sweet-cake-biscuit-tea-pie-cookies_140725-64520.jpg" },
|
||||||
|
{ id: "4", name: "Crispy Samosa", price: "$8.00", imageSrc: "http://img.b2bpic.net/free-photo/variety-salted-crackers-orange-bowl_114579-54041.jpg?_wi=2" },
|
||||||
|
{ id: "5", name: "Fresh Jalebi", price: "$10.00", imageSrc: "http://img.b2bpic.net/free-photo/orange-roll-barfee-barfi-sweet-mitlai_466689-71823.jpg?_wi=2" },
|
||||||
|
]}
|
||||||
|
title="Our Menu"
|
||||||
|
description="Discover our wide selection of sweets and savory treats."
|
||||||
|
useInvertedBackground={false}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
<div id="footer" data-section="footer">
|
||||||
|
<FooterBaseCard
|
||||||
|
logoText="LMB"
|
||||||
|
columns={[
|
||||||
|
{ title: "Shop", items: [{ label: "Menu", href: "/menu" }, { label: "About", href: "/about" }] },
|
||||||
|
{ title: "Legal", items: [{ label: "Privacy Policy", href: "#" }, { label: "Terms of Service", href: "#" }] },
|
||||||
|
]}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</ReactLenis>
|
||||||
|
</ThemeProvider>
|
||||||
|
);
|
||||||
|
}
|
||||||
53
src/app/order/page.tsx
Normal file
53
src/app/order/page.tsx
Normal file
@@ -0,0 +1,53 @@
|
|||||||
|
"use client";
|
||||||
|
|
||||||
|
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||||
|
import ReactLenis from "lenis/react";
|
||||||
|
import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay';
|
||||||
|
import ContactSplitForm from '@/components/sections/contact/ContactSplitForm';
|
||||||
|
import FooterBaseCard from '@/components/sections/footer/FooterBaseCard';
|
||||||
|
|
||||||
|
export default function OrderPage() {
|
||||||
|
return (
|
||||||
|
<ThemeProvider defaultButtonVariant="hover-magnetic" defaultTextAnimation="entrance-slide" borderRadius="rounded" contentWidth="medium" sizing="medium" background="circleGradient" cardStyle="glass-elevated" primaryButtonStyle="gradient" secondaryButtonStyle="glass" headingFontWeight="normal">
|
||||||
|
<ReactLenis root>
|
||||||
|
<div id="nav" data-section="nav">
|
||||||
|
<NavbarLayoutFloatingOverlay
|
||||||
|
navItems={[
|
||||||
|
{ name: "Home", id: "/" },
|
||||||
|
{ name: "About", id: "/about" },
|
||||||
|
{ name: "Menu", id: "/menu" },
|
||||||
|
{ name: "Gallery", id: "/gallery" },
|
||||||
|
{ name: "Order", id: "/order" },
|
||||||
|
{ name: "Contact", id: "/contact" },
|
||||||
|
]}
|
||||||
|
brandName="LMB"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
<div id="order" data-section="order">
|
||||||
|
<ContactSplitForm
|
||||||
|
title="Place Your Order"
|
||||||
|
description="Order your favorite sweets in bulk or individual portions using the form below."
|
||||||
|
inputs={[
|
||||||
|
{ name: "name", type: "text", placeholder: "Full Name" },
|
||||||
|
{ name: "phone", type: "tel", placeholder: "Phone Number" },
|
||||||
|
{ name: "email", type: "email", placeholder: "Email Address" },
|
||||||
|
{ name: "quantity", type: "number", placeholder: "Quantity (in kgs for bulk)" },
|
||||||
|
]}
|
||||||
|
textarea={{ name: "details", placeholder: "Special instructions or bulk order details", rows: 4 }}
|
||||||
|
buttonText="Send Order Request"
|
||||||
|
useInvertedBackground={false}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
<div id="footer" data-section="footer">
|
||||||
|
<FooterBaseCard
|
||||||
|
logoText="LMB"
|
||||||
|
columns={[
|
||||||
|
{ title: "Shop", items: [{ label: "Menu", href: "/#products" }, { label: "Gallery", href: "/gallery" }, { label: "Order", href: "/order" }] },
|
||||||
|
{ title: "Legal", items: [{ label: "Privacy Policy", href: "#" }, { label: "Terms of Service", href: "#" }] },
|
||||||
|
]}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</ReactLenis>
|
||||||
|
</ThemeProvider>
|
||||||
|
);
|
||||||
|
}
|
||||||
@@ -35,7 +35,7 @@ export default function LandingPage() {
|
|||||||
{ name: "Home", id: "hero" },
|
{ name: "Home", id: "hero" },
|
||||||
{ name: "About", id: "about" },
|
{ name: "About", id: "about" },
|
||||||
{ name: "Menu", id: "products" },
|
{ name: "Menu", id: "products" },
|
||||||
{ name: "Contact", id: "contact" },
|
{ name: "Contact", id: "/contact" },
|
||||||
]}
|
]}
|
||||||
brandName="LMB"
|
brandName="LMB"
|
||||||
/>
|
/>
|
||||||
@@ -146,26 +146,15 @@ export default function LandingPage() {
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="contact" data-section="contact">
|
|
||||||
<ContactSplitForm
|
|
||||||
useInvertedBackground={false}
|
|
||||||
title="Visit or Reach Out"
|
|
||||||
description="Get in touch for orders or inquiries."
|
|
||||||
inputs={[
|
|
||||||
{ name: "name", type: "text", placeholder: "Your Name" },
|
|
||||||
{ name: "email", type: "email", placeholder: "Your Email" },
|
|
||||||
]}
|
|
||||||
imageSrc="http://img.b2bpic.net/free-photo/front-view-vintage-shop-window_141667-3.jpg"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div id="footer" data-section="footer">
|
<div id="footer" data-section="footer">
|
||||||
<FooterBaseCard
|
<FooterBaseCard
|
||||||
logoText="LMB"
|
logoText="LMB"
|
||||||
columns={[
|
columns={[
|
||||||
{ title: "Shop", items: [{ label: "Menu", href: "#products" }, { label: "About", href: "#about" }] },
|
{ title: "Shop", items: [{ label: "Menu", href: "#products" }, { label: "About", href: "#about" }] },
|
||||||
|
{ title: "Contact", items: [{ label: "Get in Touch", href: "/contact" }] },
|
||||||
{ title: "Legal", items: [{ label: "Privacy Policy", href: "#" }, { label: "Terms of Service", href: "#" }] },
|
{ title: "Legal", items: [{ label: "Privacy Policy", href: "#" }, { label: "Terms of Service", href: "#" }] },
|
||||||
]}
|
]}
|
||||||
|
copyrightText="© 2025 | LMB Sweets"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</ReactLenis>
|
</ReactLenis>
|
||||||
|
|||||||
@@ -13,12 +13,12 @@
|
|||||||
--background: #f6f0e9;
|
--background: #f6f0e9;
|
||||||
--card: #efe7dd;
|
--card: #efe7dd;
|
||||||
--foreground: #2b180a;
|
--foreground: #2b180a;
|
||||||
--primary-cta: #2b180a;
|
--primary-cta: #991b1b;
|
||||||
--primary-cta-text: #f6f0e9;
|
--primary-cta-text: #f6f0e9;
|
||||||
--secondary-cta: #efe7dd;
|
--secondary-cta: #efe7dd;
|
||||||
--secondary-cta-text: #2b180a;
|
--secondary-cta-text: #2b180a;
|
||||||
--accent: #94877c;
|
--accent: #b8860b;
|
||||||
--background-accent: #afa094;
|
--background-accent: #efe7dd;
|
||||||
|
|
||||||
/* 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);
|
||||||
|
|||||||
Reference in New Issue
Block a user