Merge version_1 into main #2
@@ -38,9 +38,7 @@ export default function AboutPage() {
|
||||
brandName="Food Fest"
|
||||
navItems={navItems}
|
||||
button={{
|
||||
text: "Order Now",
|
||||
href: "#contact",
|
||||
}}
|
||||
text: "Order Now", href: "#contact"}}
|
||||
animateOnLoad={true}
|
||||
/>
|
||||
</div>
|
||||
@@ -52,17 +50,14 @@ export default function AboutPage() {
|
||||
description="Food Fest Cafeteria is a beloved neighborhood spot in Dubai where residents, workers, and visitors gather for authentic flavors and genuine hospitality. Since opening our doors, we've been dedicated to serving fresh, delicious food and beverages that bring people together. From morning karak tea and aromatic coffee to satisfying sandwiches, burgers, and traditional shawarma, we've got something for everyone. Our commitment to quality, affordability, and quick service makes us the go-to destination for a quick bite or a relaxed café experience. We believe in creating a welcoming space where community matters. Visit us today!"
|
||||
metrics={[
|
||||
{
|
||||
value: "10+ Years",
|
||||
title: "Trusted Service",
|
||||
},
|
||||
value: "10+ Years", title: "Trusted Service"},
|
||||
{
|
||||
value: "5000+",
|
||||
title: "Happy Customers",
|
||||
},
|
||||
value: "5000+", title: "Happy Customers"},
|
||||
]}
|
||||
imageSrc="http://img.b2bpic.net/free-photo/two-men-cafe_23-2147775893.jpg"
|
||||
imageAlt="Food Fest Cafeteria interior"
|
||||
mediaAnimation="slide-up"
|
||||
metricsAnimation="slide-up"
|
||||
useInvertedBackground={false}
|
||||
/>
|
||||
</div>
|
||||
@@ -71,13 +66,9 @@ export default function AboutPage() {
|
||||
<FooterLogoReveal
|
||||
logoText="Food Fest"
|
||||
leftLink={{
|
||||
text: "Privacy Policy",
|
||||
href: "#",
|
||||
}}
|
||||
text: "Privacy Policy", href: "#"}}
|
||||
rightLink={{
|
||||
text: "Terms of Service",
|
||||
href: "#",
|
||||
}}
|
||||
text: "Terms of Service", href: "#"}}
|
||||
/>
|
||||
</div>
|
||||
</ThemeProvider>
|
||||
|
||||
137
src/app/page.tsx
137
src/app/page.tsx
@@ -6,7 +6,9 @@ import HeroLogoBillboard from "@/components/sections/hero/HeroLogoBillboard";
|
||||
import FeatureCardNineteen from "@/components/sections/feature/FeatureCardNineteen";
|
||||
import ProductCardThree from "@/components/sections/product/ProductCardThree";
|
||||
import TestimonialCardTwelve from "@/components/sections/testimonial/TestimonialCardTwelve";
|
||||
import ContactFaq from "@/components/sections/contact/ContactFaq";
|
||||
import FooterLogoReveal from "@/components/sections/footer/FooterLogoReveal";
|
||||
import { Phone } from "lucide-react";
|
||||
import Link from "next/link";
|
||||
|
||||
export default function HomePage() {
|
||||
@@ -33,9 +35,7 @@ export default function HomePage() {
|
||||
{ name: "Contact", id: "/contact" },
|
||||
]}
|
||||
button={{
|
||||
text: "Order Now",
|
||||
href: "#contact",
|
||||
}}
|
||||
text: "Order Now", href: "#contact"}}
|
||||
animateOnLoad={true}
|
||||
/>
|
||||
</div>
|
||||
@@ -48,7 +48,7 @@ export default function HomePage() {
|
||||
{ text: "View Menu", href: "/menu" },
|
||||
{ text: "Contact Us", href: "#contact" },
|
||||
]}
|
||||
background={{ variant: "circleGradient" }}
|
||||
background={{ variant: "canvas-reveal" }}
|
||||
imageSrc="http://img.b2bpic.net/free-photo/top-view-people-toasting-party_23-2148232023.jpg"
|
||||
imageAlt="Food Fest Cafeteria welcomes you"
|
||||
mediaAnimation="slide-up"
|
||||
@@ -65,31 +65,18 @@ export default function HomePage() {
|
||||
features={[
|
||||
{
|
||||
id: 1,
|
||||
tag: "Premium Quality",
|
||||
title: "Fresh Ingredients",
|
||||
subtitle: "Always Fresh, Always Delicious",
|
||||
description: "We source only the finest fresh ingredients daily. From hand-picked vegetables to premium coffee beans, quality is our promise. Every sandwich, burger, and drink is made with care and freshness.",
|
||||
},
|
||||
tag: "Premium Quality", title: "Fresh Ingredients", subtitle: "Always Fresh, Always Delicious", description: "We source only the finest fresh ingredients daily. From hand-picked vegetables to premium coffee beans, quality is our promise. Every sandwich, burger, and drink is made with care and freshness."},
|
||||
{
|
||||
id: 2,
|
||||
tag: "Speed & Efficiency",
|
||||
title: "Quick Service",
|
||||
subtitle: "Your Order Ready in Minutes",
|
||||
description: "Perfect for busy professionals and workers. We understand your time is valuable. Our efficient team ensures your order is prepared quickly without compromising on quality or taste.",
|
||||
},
|
||||
tag: "Speed & Efficiency", title: "Quick Service", subtitle: "Your Order Ready in Minutes", description: "Perfect for busy professionals and workers. We understand your time is valuable. Our efficient team ensures your order is prepared quickly without compromising on quality or taste."},
|
||||
{
|
||||
id: 3,
|
||||
tag: "Value for Money",
|
||||
title: "Affordable Prices",
|
||||
subtitle: "Great Quality, Best Prices",
|
||||
description: "Enjoy premium café fare at neighborhood prices. We believe great food shouldn't break the bank. Quality refreshments and meals designed for every budget in Dubai.",
|
||||
},
|
||||
tag: "Value for Money", title: "Affordable Prices", subtitle: "Great Quality, Best Prices", description: "Enjoy premium café fare at neighborhood prices. We believe great food shouldn't break the bank. Quality refreshments and meals designed for every budget in Dubai."},
|
||||
]}
|
||||
textboxLayout="default"
|
||||
useInvertedBackground={false}
|
||||
tagAnimation="slide-up"
|
||||
buttonAnimation="slide-up"
|
||||
mediaAnimation="none"
|
||||
/>
|
||||
</div>
|
||||
|
||||
@@ -99,47 +86,17 @@ export default function HomePage() {
|
||||
description="Explore our delicious selection of hot drinks, cold beverages, sandwiches, burgers, and snacks."
|
||||
products={[
|
||||
{
|
||||
id: "1",
|
||||
name: "Karak Tea",
|
||||
price: "5 AED",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/cup-tea-with-cinnamons-cookies-white-table_114579-30485.jpg?_wi=1",
|
||||
imageAlt: "Karak Tea",
|
||||
},
|
||||
id: "1", name: "Karak Tea", price: "5 AED", imageSrc: "http://img.b2bpic.net/free-photo/cup-tea-with-cinnamons-cookies-white-table_114579-30485.jpg", imageAlt: "Karak Tea"},
|
||||
{
|
||||
id: "2",
|
||||
name: "Fresh Coffee",
|
||||
price: "8 AED",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/coffee-beans-black-background-with-drink-burlap_114579-16644.jpg?_wi=1",
|
||||
imageAlt: "Fresh Coffee",
|
||||
},
|
||||
id: "2", name: "Fresh Coffee", price: "8 AED", imageSrc: "http://img.b2bpic.net/free-photo/coffee-beans-black-background-with-drink-burlap_114579-16644.jpg", imageAlt: "Fresh Coffee"},
|
||||
{
|
||||
id: "3",
|
||||
name: "Fresh Juice",
|
||||
price: "7 AED",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/glasses-juice-with-apple-peach_114579-21877.jpg?_wi=1",
|
||||
imageAlt: "Fresh Juice",
|
||||
},
|
||||
id: "3", name: "Fresh Juice", price: "7 AED", imageSrc: "http://img.b2bpic.net/free-photo/glasses-juice-with-apple-peach_114579-21877.jpg", imageAlt: "Fresh Juice"},
|
||||
{
|
||||
id: "4",
|
||||
name: "Chicken Sandwich",
|
||||
price: "12 AED",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/front-close-view-tasty-toast-sandwiches-with-cheese-ham-inside-plate-white-surface_140725-20016.jpg?_wi=1",
|
||||
imageAlt: "Chicken Sandwich",
|
||||
},
|
||||
id: "4", name: "Chicken Sandwich", price: "12 AED", imageSrc: "http://img.b2bpic.net/free-photo/front-close-view-tasty-toast-sandwiches-with-cheese-ham-inside-plate-white-surface_140725-20016.jpg", imageAlt: "Chicken Sandwich"},
|
||||
{
|
||||
id: "5",
|
||||
name: "Juicy Burger",
|
||||
price: "15 AED",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/top-view-burger-ingredients-frame_23-2148235102.jpg?_wi=1",
|
||||
imageAlt: "Juicy Burger",
|
||||
},
|
||||
id: "5", name: "Juicy Burger", price: "15 AED", imageSrc: "http://img.b2bpic.net/free-photo/top-view-burger-ingredients-frame_23-2148235102.jpg", imageAlt: "Juicy Burger"},
|
||||
{
|
||||
id: "6",
|
||||
name: "Delicious Shawarma",
|
||||
price: "14 AED",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/assortment-with-delicious-high-protein-vegan-meal_23-2149039399.jpg?_wi=1",
|
||||
imageAlt: "Delicious Shawarma",
|
||||
},
|
||||
id: "6", name: "Delicious Shawarma", price: "14 AED", imageSrc: "http://img.b2bpic.net/free-photo/assortment-with-delicious-high-protein-vegan-meal_23-2149039399.jpg", imageAlt: "Delicious Shawarma"},
|
||||
]}
|
||||
gridVariant="three-columns-all-equal-width"
|
||||
animationType="slide-up"
|
||||
@@ -154,41 +111,17 @@ export default function HomePage() {
|
||||
<TestimonialCardTwelve
|
||||
testimonials={[
|
||||
{
|
||||
id: "1",
|
||||
name: "Ahmed Hassan",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/handsome-man-smiling-with-copy-space_23-2148435784.jpg",
|
||||
imageAlt: "Ahmed Hassan",
|
||||
},
|
||||
id: "1", name: "Ahmed Hassan", imageSrc: "http://img.b2bpic.net/free-photo/handsome-man-smiling-with-copy-space_23-2148435784.jpg", imageAlt: "Ahmed Hassan"},
|
||||
{
|
||||
id: "2",
|
||||
name: "Fatima Al-Mansouri",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/closeup-stylish-feminine-curlyhaired-africanamerican-woman-blue-fashionable-blouse-stretch-hand-hold-smartphone-taking-selfie-laughing-smiling-white-background_176420-55433.jpg",
|
||||
imageAlt: "Fatima Al-Mansouri",
|
||||
},
|
||||
id: "2", name: "Fatima Al-Mansouri", imageSrc: "http://img.b2bpic.net/free-photo/closeup-stylish-feminine-curlyhaired-africanamerican-woman-blue-fashionable-blouse-stretch-hand-hold-smartphone-taking-selfie-laughing-smiling-white-background_176420-55433.jpg", imageAlt: "Fatima Al-Mansouri"},
|
||||
{
|
||||
id: "3",
|
||||
name: "Mohammad Al-Ketbi",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/man-having-short-break_329181-14568.jpg",
|
||||
imageAlt: "Mohammad Al-Ketbi",
|
||||
},
|
||||
id: "3", name: "Mohammad Al-Ketbi", imageSrc: "http://img.b2bpic.net/free-photo/man-having-short-break_329181-14568.jpg", imageAlt: "Mohammad Al-Ketbi"},
|
||||
{
|
||||
id: "4",
|
||||
name: "Lina Khalil",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/beautiful-hispanic-woman-with-short-hair-wearing-summer-dress-smiling-happy-positive-thumb-up-doing-excellent-approval-sign_839833-13161.jpg",
|
||||
imageAlt: "Lina Khalil",
|
||||
},
|
||||
id: "4", name: "Lina Khalil", imageSrc: "http://img.b2bpic.net/free-photo/beautiful-hispanic-woman-with-short-hair-wearing-summer-dress-smiling-happy-positive-thumb-up-doing-excellent-approval-sign_839833-13161.jpg", imageAlt: "Lina Khalil"},
|
||||
{
|
||||
id: "5",
|
||||
name: "Ibrahim Rahman",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/medium-shot-man-characterizing-painter_23-2149529892.jpg",
|
||||
imageAlt: "Ibrahim Rahman",
|
||||
},
|
||||
id: "5", name: "Ibrahim Rahman", imageSrc: "http://img.b2bpic.net/free-photo/medium-shot-man-characterizing-painter_23-2149529892.jpg", imageAlt: "Ibrahim Rahman"},
|
||||
{
|
||||
id: "6",
|
||||
name: "Sara Al-Naqbi",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/woman-having-video-call-her-phone_23-2148990156.jpg",
|
||||
imageAlt: "Sara Al-Naqbi",
|
||||
},
|
||||
id: "6", name: "Sara Al-Naqbi", imageSrc: "http://img.b2bpic.net/free-photo/woman-having-video-call-her-phone_23-2148990156.jpg", imageAlt: "Sara Al-Naqbi"},
|
||||
]}
|
||||
cardTitle="Over 5,000 satisfied customers trust Food Fest Cafeteria for fresh food and quality service every day"
|
||||
cardTag="Customer Reviews"
|
||||
@@ -197,17 +130,37 @@ export default function HomePage() {
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="contact" data-section="contact">
|
||||
<ContactFaq
|
||||
ctaTitle="Get in Touch"
|
||||
ctaDescription="Order now via WhatsApp or call us to place your order. We're here to serve you from early morning to midnight."
|
||||
ctaIcon={Phone}
|
||||
ctaButton={{
|
||||
text: "WhatsApp Order", href: "https://wa.me/971XXXXXXXXX"}}
|
||||
faqs={[
|
||||
{
|
||||
id: "1", title: "What are your opening hours?", content: "Food Fest Cafeteria is open daily from 6:00 AM to 12:00 AM (midnight). We serve breakfast, lunch, and dinner throughout the day."},
|
||||
{
|
||||
id: "2", title: "Do you offer delivery service?", content: "Yes! You can order via WhatsApp or phone for quick pickup or delivery within Dubai. Place your order and we'll prepare it fresh for you."},
|
||||
{
|
||||
id: "3", title: "Are your ingredients fresh?", content: "Absolutely. We pride ourselves on using fresh, quality ingredients daily. All our drinks are made fresh to order, and all food items are prepared with the freshest ingredients available."},
|
||||
{
|
||||
id: "4", title: "What payment methods do you accept?", content: "We accept cash and all major payment methods. You can also pay via WhatsApp or upon delivery/pickup."},
|
||||
{
|
||||
id: "5", title: "Do you have a location map?", content: "Yes! We're located in Dubai, UAE. Check our contact page for our exact address and Google Maps link for directions."},
|
||||
]}
|
||||
animationType="slide-up"
|
||||
useInvertedBackground={false}
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div id="footer" data-section="footer">
|
||||
<FooterLogoReveal
|
||||
logoText="Food Fest"
|
||||
leftLink={{
|
||||
text: "Privacy Policy",
|
||||
href: "#",
|
||||
}}
|
||||
text: "Privacy Policy", href: "#"}}
|
||||
rightLink={{
|
||||
text: "Terms of Service",
|
||||
href: "#",
|
||||
}}
|
||||
text: "Terms of Service", href: "#"}}
|
||||
/>
|
||||
</div>
|
||||
</ThemeProvider>
|
||||
|
||||
@@ -1,51 +1,39 @@
|
||||
"use client";
|
||||
|
||||
import { memo } from "react";
|
||||
import useSvgTextLogo from "./useSvgTextLogo";
|
||||
import { cls } from "@/lib/utils";
|
||||
import React from "react";
|
||||
|
||||
interface SvgTextLogoProps {
|
||||
logoText: string;
|
||||
adjustHeightFactor?: number;
|
||||
verticalAlign?: "top" | "center";
|
||||
text: string;
|
||||
className?: string;
|
||||
fontSize?: number;
|
||||
fontWeight?: string | number;
|
||||
fontFamily?: string;
|
||||
textAnchor?: "start" | "middle" | "end";
|
||||
dominantBaseline?: "auto" | "middle" | "hanging";
|
||||
}
|
||||
|
||||
const SvgTextLogo = memo<SvgTextLogoProps>(function SvgTextLogo({
|
||||
logoText,
|
||||
adjustHeightFactor,
|
||||
verticalAlign = "top",
|
||||
className = "",
|
||||
}) {
|
||||
const { svgRef, textRef, viewBox, aspectRatio } = useSvgTextLogo(logoText, false, adjustHeightFactor);
|
||||
|
||||
const SvgTextLogo: React.FC<SvgTextLogoProps> = ({
|
||||
text,
|
||||
className = "", fontSize = 48,
|
||||
fontWeight = "bold", fontFamily = "system-ui, -apple-system, sans-serif", textAnchor = "middle", dominantBaseline = "middle"}) => {
|
||||
return (
|
||||
<svg
|
||||
ref={svgRef}
|
||||
viewBox={viewBox}
|
||||
className={cls("w-full", className)}
|
||||
style={{ aspectRatio: aspectRatio }}
|
||||
preserveAspectRatio="none"
|
||||
role="img"
|
||||
aria-label={`${logoText} logo`}
|
||||
viewBox={`0 0 ${text.length * fontSize * 0.6} ${fontSize * 1.5}`}
|
||||
className={className}
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
>
|
||||
<text
|
||||
ref={textRef}
|
||||
x="0"
|
||||
y={verticalAlign === "center" ? "50%" : "0"}
|
||||
className="font-bold fill-current"
|
||||
style={{
|
||||
fontSize: "20px",
|
||||
letterSpacing: "-0.02em",
|
||||
dominantBaseline: verticalAlign === "center" ? "middle" : "text-before-edge"
|
||||
}}
|
||||
x="50%"
|
||||
y="50%"
|
||||
fontSize={fontSize}
|
||||
fontWeight={fontWeight}
|
||||
fontFamily={fontFamily}
|
||||
textAnchor={textAnchor}
|
||||
dominantBaseline={dominantBaseline}
|
||||
fill="currentColor"
|
||||
>
|
||||
{logoText}
|
||||
{text}
|
||||
</text>
|
||||
</svg>
|
||||
);
|
||||
});
|
||||
};
|
||||
|
||||
SvgTextLogo.displayName = "SvgTextLogo";
|
||||
|
||||
export default SvgTextLogo;
|
||||
export default SvgTextLogo;
|
||||
Reference in New Issue
Block a user