16 Commits

Author SHA1 Message Date
94692434e3 Merge version_3 into main
Merge version_3 into main
2026-05-13 11:26:17 +00:00
077d1276ba Update src/app/pricing/page.tsx 2026-05-13 11:26:14 +00:00
3cf02f67aa Update src/app/enrollment/page.tsx 2026-05-13 11:26:13 +00:00
5e919592df Update src/app/courses/page.tsx 2026-05-13 11:26:13 +00:00
0f8e7df6d8 Merge version_3 into main
Merge version_3 into main
2026-05-13 11:25:38 +00:00
0aceac318c Add src/app/profile/page.tsx 2026-05-13 11:25:35 +00:00
1255a7af14 Add src/app/pricing/page.tsx 2026-05-13 11:25:34 +00:00
be559c9dad Update src/app/page.tsx 2026-05-13 11:25:33 +00:00
66fe8814df Add src/app/enrollment/page.tsx 2026-05-13 11:25:33 +00:00
d180b4fe4b Add src/app/courses/page.tsx 2026-05-13 11:25:32 +00:00
5c29a2d210 Add src/app/courses/[id]/page.tsx 2026-05-13 11:25:32 +00:00
35078868ce Merge version_2 into main
Merge version_2 into main
2026-05-13 10:44:09 +00:00
ad0da4a85d Update src/app/page.tsx 2026-05-13 10:44:06 +00:00
e5d68b8be8 Merge version_2 into main
Merge version_2 into main
2026-05-13 10:43:39 +00:00
9727d0ad43 Update src/app/page.tsx 2026-05-13 10:43:33 +00:00
789ccdb637 Merge version_1 into main
Merge version_1 into main
2026-05-12 11:25:44 +00:00
6 changed files with 299 additions and 191 deletions

View File

@@ -0,0 +1,62 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react";
import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay';
import FooterLogoEmphasis from '@/components/sections/footer/FooterLogoEmphasis';
import { useParams } from 'next/navigation';
export default function CourseDetailPage() {
const params = useParams();
return (
<ThemeProvider
defaultButtonVariant="bounce-effect"
defaultTextAnimation="background-highlight"
borderRadius="rounded"
contentWidth="smallMedium"
sizing="largeSmallSizeLargeTitles"
background="blurBottom"
cardStyle="layered-gradient"
primaryButtonStyle="flat"
secondaryButtonStyle="glass"
headingFontWeight="semibold"
>
<ReactLenis root>
<div id="nav" data-section="nav">
<NavbarLayoutFloatingOverlay
brandName="GourmetAgency"
navItems={[
{ name: "Home", id: "/" },
{ name: "Courses", id: "/courses" },
{ name: "About", id: "/#about" },
{ name: "Contact", id: "/#contact" }
]}
/>
</div>
<div className="pt-32 pb-20 px-6 max-w-4xl mx-auto">
<h1 className="text-5xl font-bold mb-6">Course Details for {params.id}</h1>
<p className="text-xl mb-8">Deep dive into professional hospitality strategies and expert culinary techniques.</p>
<div className="bg-gray-100 p-8 rounded-lg mb-8">
<h2 className="text-2xl font-semibold mb-4">Instructor: Chef Marco Rossi</h2>
<p>With over 20 years of experience in Michelin-starred establishments, Chef Rossi brings industry-leading expertise to every lesson.</p>
</div>
<button className="bg-blue-600 text-white px-8 py-3 rounded-full text-lg font-medium hover:bg-blue-700 transition">
Enroll Now
</button>
</div>
<div id="footer" data-section="footer">
<FooterLogoEmphasis
logoText="GourmetAgency"
columns={[
{ items: [{ label: "Home", href: "/" }, { label: "Courses", href: "/courses" }] },
{ items: [{ label: "Privacy Policy", href: "#" }, { label: "Terms of Service", href: "#" }] }
]}
/>
</div>
</ReactLenis>
</ThemeProvider>
);
}

65
src/app/courses/page.tsx Normal file
View File

@@ -0,0 +1,65 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react";
import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay';
import FooterLogoEmphasis from '@/components/sections/footer/FooterLogoEmphasis';
import ProductCardThree from '@/components/sections/product/ProductCardThree';
export default function CoursesCatalogPage() {
return (
<ThemeProvider
defaultButtonVariant="bounce-effect"
defaultTextAnimation="background-highlight"
borderRadius="rounded"
contentWidth="smallMedium"
sizing="largeSmallSizeLargeTitles"
background="blurBottom"
cardStyle="layered-gradient"
primaryButtonStyle="flat"
secondaryButtonStyle="glass"
headingFontWeight="semibold"
>
<ReactLenis root>
<div id="nav" data-section="nav">
<NavbarLayoutFloatingOverlay
navItems={[
{ name: "Home", id: "/" },
{ name: "Courses", id: "/courses" },
{ name: "Enrollment", id: "/enrollment" },
{ name: "Pricing", id: "/pricing" }
]}
brandName="GourmetAgency"
/>
</div>
<div id="catalog" data-section="catalog" className="pt-32">
<ProductCardThree
title="Our Course Catalog"
description="Expertly crafted courses for culinary professionals."
useInvertedBackground={false}
animationType="slide-up"
gridVariant="four-items-2x2-equal-grid"
textboxLayout="default"
products={[
{ id: "c1", name: "Advanced Culinary Techniques", price: "$299", imageSrc: "http://img.b2bpic.net/free-photo/chef-preparing-dish_23-2148734604.jpg" },
{ id: "c2", name: "Restaurant Strategy Mastery", price: "$399", imageSrc: "http://img.b2bpic.net/free-photo/professional-architectural-designer-configures-floor-plan-dual-monitors_482257-120253.jpg" },
{ id: "c3", name: "Digital Menu Engineering", price: "$199", imageSrc: "http://img.b2bpic.net/free-photo/close-up-utensil-around-digital-tablet-beige-background_23-2148041733.jpg" },
{ id: "c4", name: "Luxury Hospitality Leadership", price: "$499", imageSrc: "http://img.b2bpic.net/free-photo/medium-shot-plus-size-man-working-as-barista_23-2150754672.jpg" }
]}
/>
</div>
<div id="footer" data-section="footer">
<FooterLogoEmphasis
logoText="GourmetAgency"
columns={[
{ items: [{ label: "Home", href: "/" }, { label: "Courses", href: "/courses" }] },
{ items: [{ label: "Privacy Policy", href: "#" }, { label: "Terms of Service", href: "#" }] }
]}
/>
</div>
</ReactLenis>
</ThemeProvider>
);
}

View File

@@ -0,0 +1,42 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react";
import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay';
import ContactText from '@/components/sections/contact/ContactText';
import FooterLogoEmphasis from '@/components/sections/footer/FooterLogoEmphasis';
export default function EnrollmentPage() {
return (
<ThemeProvider defaultButtonVariant="bounce-effect" 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
brandName="GourmetAgency"
navItems={[
{ name: "Home", id: "/" },
{ name: "Courses", id: "/courses" },
{ name: "Pricing", id: "/pricing" },
{ name: "Enrollment", id: "/enrollment" }
]}
/>
</div>
<div id="contact" data-section="contact">
<ContactText
text="Secure Your Spot - Complete the form to start your journey."
background={{ variant: "plain" }}
useInvertedBackground={false}
/>
</div>
<div id="footer" data-section="footer">
<FooterLogoEmphasis
logoText="GourmetAgency"
columns={[
{ items: [{ label: "Home", href: "/" }, { label: "Pricing", href: "/pricing" }] }
]}
/>
</div>
</ReactLenis>
</ThemeProvider>
);
}

View File

@@ -2,17 +2,9 @@
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react";
import ContactCenter from '@/components/sections/contact/ContactCenter';
import FaqSplitMedia from '@/components/sections/faq/FaqSplitMedia';
import FeatureCardNine from '@/components/sections/feature/FeatureCardNine';
import FooterLogoReveal from '@/components/sections/footer/FooterLogoReveal';
import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay';
import HeroCentered from '@/components/sections/hero/HeroCentered';
import MetricCardThree from '@/components/sections/metrics/MetricCardThree';
import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered';
import SocialProofOne from '@/components/sections/socialProof/SocialProofOne';
import TestimonialCardOne from '@/components/sections/testimonial/TestimonialCardOne';
import TextSplitAbout from '@/components/sections/about/TextSplitAbout';
import { Award, TrendingUp, Users } from "lucide-react";
import FooterLogoEmphasis from '@/components/sections/footer/FooterLogoEmphasis';
export default function LandingPage() {
return (
@@ -30,18 +22,14 @@ export default function LandingPage() {
>
<ReactLenis root>
<div id="nav" data-section="nav">
<NavbarStyleCentered
navItems={[
{
name: "Home", id: "hero"},
{
name: "About", id: "about"},
{
name: "Services", id: "features"},
{
name: "Contact", id: "contact"},
]}
<NavbarLayoutFloatingOverlay
brandName="GourmetAgency"
navItems={[
{ name: "Home", id: "hero" },
{ name: "Pricing", id: "/pricing" },
{ name: "Enroll", id: "/enrollment" },
{ name: "Contact", id: "contact" }
]}
/>
</div>
@@ -52,188 +40,28 @@ export default function LandingPage() {
title="Defining Premium Hospitality Excellence"
description="We craft bespoke identities, strategies, and digital experiences for the world's most prestigious culinary brands."
avatars={[
{
src: "http://img.b2bpic.net/free-photo/vertical-shot-smiling-cute-barista-girl-pouring-filter-coffee-making-order-cafe-client_1258-203375.jpg", alt: "Client"},
{
src: "http://img.b2bpic.net/free-photo/medium-shot-plus-size-man-working-as-barista_23-2150754672.jpg", alt: "Client"},
{
src: "http://img.b2bpic.net/free-photo/smiling-asian-girl-barista-giving-order-client-holding-takeaway-coffee-cup-wearing-apron-working_1258-199319.jpg", alt: "Client"},
{
src: "http://img.b2bpic.net/free-photo/vertical-shot-barista-asian-girl-steaming-milk-cappuccino-prepare-latte-client-wearing_1258-203419.jpg", alt: "Client"},
{
src: "http://img.b2bpic.net/free-photo/event-hall-furniture-brown-white-colors_114579-2230.jpg", alt: "Client"},
{ src: "http://img.b2bpic.net/free-photo/vertical-shot-smiling-cute-barista-girl-pouring-filter-coffee-making-order-cafe-client_1258-203375.jpg", alt: "Client" },
{ src: "http://img.b2bpic.net/free-photo/medium-shot-plus-size-man-working-as-barista_23-2150754672.jpg", alt: "Client" },
{ src: "http://img.b2bpic.net/free-photo/smiling-asian-girl-barista-giving-order-client-holding-takeaway-coffee-cup-wearing-apron-working_1258-199319.jpg", alt: "Client" },
]}
avatarText="Trusted by 50+ world-class restaurants"
buttons={[
{
text: "Explore Our Work", href: "#features"},
{
text: "Contact Us", href: "#contact"},
{ text: "View Pricing", href: "/pricing" },
]}
buttonAnimation="slide-up"
marqueeItems={[
{
type: "text", text: "Michelin-Starred Strategy"},
{
type: "text", text: "Luxury Branding"},
{
type: "text", text: "Digital Operations"},
{
type: "text", text: "Hospitality Excellence"},
{
type: "text", text: "Culinary Innovation"},
]}
/>
</div>
<div id="about" data-section="about">
<TextSplitAbout
useInvertedBackground={true}
title="Our Approach to Hospitality"
description={[
"For over a decade, we have been at the forefront of restaurant branding and operations. We bridge the gap between culinary artistry and commercial success.", "Our methodology combines data-driven insights with human-centric design to create enduring guest experiences that define the new standard of premium dining."]}
buttons={[
{
text: "Learn More", href: "#"},
]}
/>
</div>
<div id="features" data-section="features">
<FeatureCardNine
animationType="slide-up"
textboxLayout="default"
useInvertedBackground={false}
features={[
{
title: "Brand Identity", description: "Crafting unique visual languages that resonate with premium audiences.", phoneOne: {
imageSrc: "http://img.b2bpic.net/free-photo/close-up-utensil-around-digital-tablet-beige-background_23-2148041733.jpg", imageAlt: "restaurant menu design screen"},
phoneTwo: {
imageSrc: "http://img.b2bpic.net/free-photo/traditional-french-food-world-tourism-day_23-2149114052.jpg", imageAlt: "restaurant booking app UI"},
},
{
title: "Operational Design", description: "Streamlining service workflows for efficiency and guest satisfaction.", phoneOne: {
imageSrc: "http://img.b2bpic.net/free-photo/professional-architectural-designer-configures-floor-plan-dual-monitors_482257-120253.jpg", imageAlt: "interior design software rendering"},
phoneTwo: {
imageSrc: "http://img.b2bpic.net/free-photo/traditional-spanish-food-world-tourism-day_23-2149114027.jpg", imageAlt: "food photography editing screen"},
},
{
title: "Digital Growth", description: "Leveraging technology to boost bookings and engagement effortlessly.", phoneOne: {
imageSrc: "http://img.b2bpic.net/free-photo/medium-shot-woman-with-vaccination-passport_23-2149340934.jpg", imageAlt: "restaurant staff training mobile app"},
phoneTwo: {
imageSrc: "http://img.b2bpic.net/free-photo/worker-checking-greenscreen-display_482257-86784.jpg", imageAlt: "customer feedback dashboard app"},
},
]}
showStepNumbers={true}
title="Comprehensive Culinary Services"
description="Tailored strategies for restaurants aiming for greatness."
/>
</div>
<div id="testimonials" data-section="testimonials">
<TestimonialCardOne
animationType="slide-up"
textboxLayout="split"
gridVariant="uniform-all-items-equal"
useInvertedBackground={true}
testimonials={[
{
id: "1", name: "Elena Rossi", role: "Owner", company: "L'Etoile", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/smiling-beautiful-middle-aged-business-woman_1262-3085.jpg"},
{
id: "2", name: "Marcello Conti", role: "Executive Chef", company: "Conti Fine Dining", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/portrait-barista-boy-cafe_23-2148436241.jpg"},
{
id: "3", name: "Sarah Jenkins", role: "CEO", company: "Urban Kitchen Group", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/medium-shot-smiley-business-owner_23-2149434511.jpg"},
{
id: "4", name: "Julian Vane", role: "Director", company: "Vane Hospitality", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/female-baker-taking-notes-while-pastry-shop_23-2150379559.jpg"},
{
id: "5", name: "Chloe Dupont", role: "Founder", company: "Dupont Bistro", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/smiling-businessman-standing-airport-terminal_107420-85070.jpg"},
{
id: "6", name: "Robert Stone", role: "Owner", company: "The Stone Grill", rating: 5,
imageSrc: "http://img.b2bpic.net/free-photo/senior-business-woman-smiling_1187-1564.jpg"},
]}
title="Partners in Excellence"
description="What our clients say about our impact."
/>
</div>
<div id="metrics" data-section="metrics">
<MetricCardThree
animationType="slide-up"
textboxLayout="split"
useInvertedBackground={false}
metrics={[
{
id: "m1", icon: TrendingUp,
title: "Avg. Revenue Growth", value: "42%"},
{
id: "m2", icon: Users,
title: "Guest Satisfaction", value: "98%"},
{
id: "m3", icon: Award,
title: "Projects Awarded", value: "150+"},
]}
title="Proven Results"
description="Measurable growth across every client portfolio."
/>
</div>
<div id="socialproof" data-section="socialproof">
<SocialProofOne
textboxLayout="split"
useInvertedBackground={true}
names={[
"L'Etoile", "Conti Fine Dining", "Urban Kitchen Group", "Vane Hospitality", "Dupont Bistro", "The Stone Grill", "Epicurean Collective"]}
title="Prestigious Collaborations"
description="Partnering with industry leaders to shape the future of dining."
/>
</div>
<div id="faq" data-section="faq">
<FaqSplitMedia
textboxLayout="split"
useInvertedBackground={false}
faqs={[
{
id: "q1", title: "How long does a branding project take?", content: "Typically 8-12 weeks depending on the scope and complexity."},
{
id: "q2", title: "Do you work with startups?", content: "Yes, we specialize in helping culinary startups define their market presence."},
{
id: "q3", title: "Can you handle operational audit?", content: "Absolutely, our operational audit is a core part of our service offering."},
]}
imageSrc="http://img.b2bpic.net/free-photo/medium-shot-friends-sitting-coffee-shop_23-2150183730.jpg"
mediaAnimation="slide-up"
title="Common Questions"
description="Everything you need to know about starting your project."
faqsAnimation="blur-reveal"
/>
</div>
<div id="contact" data-section="contact">
<ContactCenter
useInvertedBackground={true}
background={{
variant: "sparkles-gradient"}}
tag="Get Started"
title="Ready to Transform Your Restaurant?"
description="Let's discuss how we can elevate your culinary brand to the next level."
/>
</div>
<div id="footer" data-section="footer">
<FooterLogoReveal
<FooterLogoEmphasis
logoText="GourmetAgency"
leftLink={{
text: "Privacy Policy", href: "#"}}
rightLink={{
text: "Terms of Service", href: "#"}}
columns={[
{ items: [{ label: "Home", href: "/" }, { label: "Pricing", href: "/pricing" }] },
{ items: [{ label: "Enrollment", href: "/enrollment" }] }
]}
/>
</div>
</ReactLenis>
</ThemeProvider>
);
}
}

48
src/app/pricing/page.tsx Normal file
View File

@@ -0,0 +1,48 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react";
import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay';
import PricingCardThree from '@/components/sections/pricing/PricingCardThree';
import FooterLogoEmphasis from '@/components/sections/footer/FooterLogoEmphasis';
export default function PricingPage() {
return (
<ThemeProvider defaultButtonVariant="bounce-effect" 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
brandName="GourmetAgency"
navItems={[
{ name: "Home", id: "/" },
{ name: "Courses", id: "/courses" },
{ name: "Pricing", id: "/pricing" },
{ name: "Enrollment", id: "/enrollment" }
]}
/>
</div>
<div id="pricing" data-section="pricing">
<PricingCardThree
title="Flexible Learning Plans"
description="Choose the perfect path for your hospitality career advancement."
animationType="slide-up"
textboxLayout="split"
useInvertedBackground={false}
plans={[
{ id: "starter", price: "$299", name: "Essential Course", features: ["Access to basic modules", "Community support", "PDF resources"], buttons: [{ text: "Select Plan", href: "/enrollment" }] },
{ id: "pro", price: "$599", name: "Professional Certification", features: ["Everything in Starter", "1-on-1 Mentorship", "Certification Exam", "Lifetime access"], buttons: [{ text: "Select Plan", href: "/enrollment" }] }
]}
/>
</div>
<div id="footer" data-section="footer">
<FooterLogoEmphasis
logoText="GourmetAgency"
columns={[
{ items: [{ label: "Home", href: "/" }, { label: "Pricing", href: "/pricing" }] }
]}
/>
</div>
</ReactLenis>
</ThemeProvider>
);
}

63
src/app/profile/page.tsx Normal file
View File

@@ -0,0 +1,63 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react";
import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay';
import FooterLogoEmphasis from '@/components/sections/footer/FooterLogoEmphasis';
export default function ProfilePage() {
return (
<ThemeProvider
defaultButtonVariant="bounce-effect"
defaultTextAnimation="background-highlight"
borderRadius="rounded"
contentWidth="smallMedium"
sizing="largeSmallSizeLargeTitles"
background="blurBottom"
cardStyle="layered-gradient"
primaryButtonStyle="flat"
secondaryButtonStyle="glass"
headingFontWeight="semibold"
>
<ReactLenis root>
<div id="nav" data-section="nav">
<NavbarLayoutFloatingOverlay
brandName="GourmetAgency"
navItems={[
{ name: "Home", id: "/" },
{ name: "Dashboard", id: "/dashboard" },
{ name: "Profile", id: "/profile" }
]}
/>
</div>
<main className="container mx-auto px-6 py-24 min-h-screen">
<h1 className="text-4xl font-bold mb-8">Account Settings</h1>
<div className="max-w-2xl bg-card p-8 rounded-2xl border border-border">
<div className="space-y-6">
<div>
<label className="block text-sm font-medium mb-2">Display Name</label>
<input type="text" className="w-full p-3 rounded-lg border border-border bg-background" defaultValue="John Doe" />
</div>
<div>
<label className="block text-sm font-medium mb-2">Email Address</label>
<input type="email" className="w-full p-3 rounded-lg border border-border bg-background" defaultValue="john@example.com" />
</div>
<button className="px-6 py-3 bg-primary text-white rounded-lg">Save Changes</button>
</div>
</div>
</main>
<div id="footer" data-section="footer">
<FooterLogoEmphasis
logoText="GourmetAgency"
columns={[
{ items: [{ label: "Dashboard" }, { label: "Settings" }, { label: "Support" }] },
{ items: [{ label: "Privacy Policy" }, { label: "Terms of Service" }] }
]}
/>
</div>
</ReactLenis>
</ThemeProvider>
);
}