3 Commits

2 changed files with 54 additions and 9 deletions

View File

@@ -1,7 +1,7 @@
"use client"
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import NavbarStyleFullscreen from '@/components/navbar/NavbarStyleFullscreen/NavbarStyleFullscreen';
import HeroLogo from '@/components/sections/hero/HeroLogo';
import HeroBillboard from '@/components/sections/hero/HeroBillboard';
import MediaAbout from '@/components/sections/about/MediaAbout';
import FeatureCardMedia from '@/components/sections/feature/FeatureCardMedia';
import ProductCardOne from '@/components/sections/product/ProductCardOne';
@@ -43,17 +43,49 @@ export default function LandingPage() {
</div>
<div id="hero-section" data-section="hero-section">
<HeroLogo
logoText="Warm & Crumb"
description="Artisan Baked Goods Delivered to Your Doorstep"
<HeroBillboard
title="Artisanal Baked Goods"
description="Handcrafted with passion and premium ingredients for an unforgettable taste experience"
background={{ variant: "radial-gradient" }}
tag="Fresh Daily"
tagIcon={null}
tagAnimation="fade-in"
buttons={[
{ text: "View Our Menu", href: "products-section" },
{ text: "Visit Us", href: "contact-section" }
{ text: "View Our Menu", href: "#menu", dataWebildId: "btn-1" },
{ text: "Order Online", href: "#order", dataWebildId: "btn-2" }
]}
buttonAnimation="slide-up"
imageSrc="https://img.b2bpic.net/free-photo/view-delicious-baked-bread-pastry-shop_23-2150379551.jpg"
imageAlt="Warm and inviting bakery interior with fresh pastries on display"
showDimOverlay={true}
avatars={[]}
avatarText=""
videoSrc="https://storage.googleapis.com/gtv-videos-bucket/sample/BigBuckBunny.mp4"
videoAriaLabel="Baking process demonstration video"
mediaAnimation="zoom-in"
marqueeItems={[
{ text: "Organic Ingredients", icon: null, dataWebildId: "marquee-1" },
{ text: "Fresh Daily", icon: null, dataWebildId: "marquee-2" },
{ text: "Handcrafted", icon: null, dataWebildId: "marquee-3" }
]}
marqueeSpeed={1}
showMarqueeCard={true}
ariaLabel="Welcome to Warm & Crumb Bakery"
className=""
containerClassName=""
textBoxClassName=""
titleClassName=""
descriptionClassName=""
tagClassName=""
avatarGroupClassName=""
buttonContainerClassName=""
buttonClassName=""
buttonTextClassName=""
mediaWrapperClassName=""
imageClassName=""
marqueeClassName=""
marqueeItemClassName=""
marqueeCardClassName=""
marqueeImageClassName=""
marqueeTextClassName=""
marqueeIconClassName=""
/>
</div>
@@ -151,6 +183,14 @@ export default function LandingPage() {
/>
</div>
<div className="flex justify-center gap-4 py-8">
<span className="text-4xl"></span>
<span className="text-4xl"></span>
<span className="text-4xl"></span>
<span className="text-4xl"></span>
<span className="text-4xl"></span>
</div>
<div id="faq-section" data-section="faq-section">
<FaqBase
title="Frequently Asked Questions"

View File

@@ -9,6 +9,7 @@ import { useButtonAnimation } from "@/components/hooks/useButtonAnimation";
import type { LucideIcon } from "lucide-react";
import type { ButtonConfig, ButtonAnimationType } from "@/types/button";
import type { Avatar } from "@/components/shared/AvatarGroup";
import { useRef, useEffect } from "react";
type HeroBillboardBackgroundProps = Extract<
HeroBackgroundVariantProps,
@@ -67,9 +68,13 @@ interface HeroBillboardProps {
marqueeImageClassName?: string;
marqueeTextClassName?: string;
marqueeIconClassName?: string;
backgroundVideoSrc?: string;
backgroundVideoFallbackSrc?: string;
}
const HeroBillboard = ({
backgroundVideoSrc,
backgroundVideoFallbackSrc = "https://img.b2bpic.net/free-photo/abstract-luxury-gradient-blue-background_53876-120942.jpg",
title,
description,
background,