Merge version_2 into main #2

Merged
bender merged 5 commits from version_2 into main 2026-04-22 13:07:55 +00:00
5 changed files with 184 additions and 15 deletions

40
src/app/about/page.tsx Normal file
View File

@@ -0,0 +1,40 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react";
import TextSplitAbout from '@/components/sections/about/TextSplitAbout';
import FooterCard from '@/components/sections/footer/FooterCard';
import NavbarLayoutFloatingInline from '@/components/navbar/NavbarLayoutFloatingInline';
export default function AboutPage() {
return (
<ThemeProvider>
<ReactLenis root>
<NavbarLayoutFloatingInline
navItems={[
{ name: "Home", id: "/" },
{ name: "Our Story", id: "/about" },
{ name: "Menu", id: "/#menu" },
{ name: "Events", id: "/#events" },
{ name: "Contact", id: "/contact" },
]}
brandName="The Table"
button={{ text: "Order Now", href: "/#menu" }}
/>
<div className="pt-24">
<TextSplitAbout
title="Our Community & Craft"
description={[
"At The Table, we believe that true hospitality is built on community. Our boutique coffee and wine bar serves as a gathering place for locals to connect over thoughtfully sourced flavors.", "Every interaction is designed to make you feel at home, blending the warmth of a local cafe with the refined elegance of a curated wine experience."
]}
useInvertedBackground={false}
/>
</div>
<FooterCard
logoText="The Table"
copyrightText="© 2025 The Table Restaurant"
/>
</ReactLenis>
</ThemeProvider>
);
}

44
src/app/contact/page.tsx Normal file
View File

@@ -0,0 +1,44 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react";
import ContactSplitForm from '@/components/sections/contact/ContactSplitForm';
import FooterCard from '@/components/sections/footer/FooterCard';
import NavbarLayoutFloatingInline from '@/components/navbar/NavbarLayoutFloatingInline';
export default function ContactPage() {
return (
<ThemeProvider>
<ReactLenis root>
<NavbarLayoutFloatingInline
navItems={[
{ name: "Home", id: "/" },
{ name: "Our Story", id: "/about" },
{ name: "Menu", id: "/#menu" },
{ name: "Events", id: "/#events" },
{ name: "Contact", id: "/contact" },
]}
brandName="The Table"
button={{ text: "Order Now", href: "/#menu" }}
/>
<div className="pt-24">
<ContactSplitForm
title="Get in Touch"
description="Whether you're planning an event or just have a question about our menu, we'd love to hear from you."
inputs={[
{ name: "name", type: "text", placeholder: "Full Name", required: true },
{ name: "email", type: "email", placeholder: "Email Address", required: true }
]}
textarea={{ name: "message", placeholder: "Your message here", rows: 4 }}
useInvertedBackground={true}
imageSrc="http://img.b2bpic.net/free-photo/restaurant-hall-with-round-square-tables-some-chairs-plants_140725-8031.jpg"
/>
</div>
<FooterCard
logoText="The Table"
copyrightText="© 2025 The Table Restaurant"
/>
</ReactLenis>
</ThemeProvider>
);
}

42
src/app/events/page.tsx Normal file
View File

@@ -0,0 +1,42 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react";
import MetricCardEleven from '@/components/sections/metrics/MetricCardEleven';
import NavbarLayoutFloatingInline from '@/components/navbar/NavbarLayoutFloatingInline';
import FooterCard from '@/components/sections/footer/FooterCard';
export default function EventsPage() {
return (
<ThemeProvider>
<ReactLenis root>
<NavbarLayoutFloatingInline
navItems={[
{ name: "Home", id: "/" },
{ name: "About", id: "/#about" },
{ name: "Menu", id: "/menu" },
{ name: "Contact", id: "/#contact" },
]}
brandName="The Table"
/>
<div className="pt-32 pb-20">
<MetricCardEleven
title="Our Events"
description="Join us for weekly community gatherings and specialized culinary workshops."
animationType="slide-up"
metrics={[
{
id: "e1", value: "Wednesdays", title: "Wine Down Wednesday", description: "Half off all wine bottles every Wednesday night.", imageSrc: "http://img.b2bpic.net/free-photo/glass-red-wine-table_23-2148443920.jpg"
},
{
id: "e2", value: "Monthly", title: "Cooking Workshop", description: "Master basic techniques with our head chef.", imageSrc: "http://img.b2bpic.net/free-photo/chef-preparing-food-kitchen_23-2148443900.jpg"
}
]}
buttons={[{ text: "RSVP Now", href: "/#contact" }]}
/>
</div>
<FooterCard logoText="The Table" />
</ReactLenis>
</ThemeProvider>
);
}

50
src/app/menu/page.tsx Normal file
View File

@@ -0,0 +1,50 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react";
import ProductCardOne from '@/components/sections/product/ProductCardOne';
import NavbarLayoutFloatingInline from '@/components/navbar/NavbarLayoutFloatingInline';
import FooterCard from '@/components/sections/footer/FooterCard';
export default function MenuPage() {
return (
<ThemeProvider>
<ReactLenis root>
<NavbarLayoutFloatingInline
navItems={[
{ name: "Home", id: "/" },
{ name: "About", id: "/#about" },
{ name: "Events", id: "/events" },
{ name: "Contact", id: "/#contact" },
]}
brandName="The Table"
/>
<div className="pt-32 pb-20">
<ProductCardOne
title="Coffee & Tea"
gridVariant="three-columns-all-equal-width"
animationType="slide-up"
textboxLayout="default"
products={[
{ id: "c1", name: "Signature Espresso", price: "$4", imageSrc: "http://img.b2bpic.net/free-photo/top-view-coffee-cup-table_23-2148281358.jpg" },
{ id: "c2", name: "Organic Loose Leaf Tea", price: "$5", imageSrc: "http://img.b2bpic.net/free-photo/cup-tea-with-leaves-table_23-2148281370.jpg" }
]}
/>
</div>
<div className="py-20">
<ProductCardOne
title="Pastries & Wine"
gridVariant="three-columns-all-equal-width"
animationType="slide-up"
textboxLayout="default"
products={[
{ id: "p1", name: "Butter Croissant", price: "$6", imageSrc: "http://img.b2bpic.net/free-photo/croissant-plate_23-2148443905.jpg" },
{ id: "w1", name: "House Red Selection", price: "$12", imageSrc: "http://img.b2bpic.net/free-photo/glass-red-wine-table_23-2148443920.jpg" }
]}
/>
</div>
<FooterCard logoText="The Table" />
</ReactLenis>
</ThemeProvider>
);
}

View File

@@ -32,14 +32,10 @@ export default function LandingPage() {
<div id="nav" data-section="nav">
<NavbarLayoutFloatingInline
navItems={[
{
name: "Our Story", id: "about"},
{
name: "Menu", id: "menu"},
{
name: "Events", id: "events"},
{
name: "Contact", id: "contact"},
{ name: "Our Story", id: "/about" },
{ name: "Menu", id: "#menu" },
{ name: "Events", id: "#events" },
{ name: "Contact", id: "/contact" },
]}
brandName="The Table"
button={{
@@ -55,10 +51,8 @@ export default function LandingPage() {
description="Experience fine dining reimagined with fresh local ingredients and a warm, welcoming atmosphere in the heart of the city."
tag="Voted Best in Town"
buttons={[
{
text: "Book Table", href: "#contact"},
{
text: "View Menu", href: "#menu"},
{ text: "Book Table", href: "/contact" },
{ text: "View Menu", href: "#menu" },
]}
mediaItems={[
{
@@ -197,8 +191,7 @@ export default function LandingPage() {
variant: "sparkles-gradient"}}
text="Ready for your next favorite meal? Let us save you a seat."
buttons={[
{
text: "Contact Us", href: "mailto:hello@thetable.com"},
{ text: "Contact Us", href: "/contact" },
]}
/>
</div>
@@ -212,4 +205,4 @@ export default function LandingPage() {
</ReactLenis>
</ThemeProvider>
);
}
}