5 Commits

Author SHA1 Message Date
4cf3cd2581 Merge version_3 into main
Merge version_3 into main
2026-03-06 09:28:33 +00:00
b8de90c2f4 Update src/app/styles/base.css 2026-03-06 09:28:29 +00:00
b40b85b821 Update src/app/page.tsx 2026-03-06 09:28:29 +00:00
cfc61b8ba0 Update src/app/layout.tsx 2026-03-06 09:28:28 +00:00
a98cf01b0f Merge version_2 into main
Merge version_2 into main
2026-03-06 09:20:30 +00:00
3 changed files with 40 additions and 60 deletions

View File

@@ -1,13 +1,13 @@
import type { Metadata } from "next";
import { Libre_Baskerville } from "next/font/google";
import { Poppins } from "next/font/google";
import { Inter } from "next/font/google";
import "./globals.css";
import { ServiceWrapper } from "@/components/ServiceWrapper";
import Tag from "@/tag/Tag";
const libreBaskerville = Libre_Baskerville({
variable: "--font-libre-baskerville", subsets: ["latin"],
weight: ["400", "700"],
const poppins = Poppins({
variable: "--font-poppins", subsets: ["latin"],
weight: ["100", "200", "300", "400", "500", "600", "700", "800", "900"],
});
const inter = Inter({
@@ -15,7 +15,7 @@ const inter = Inter({
});
export const metadata: Metadata = {
title: "Eat App - Restaurant Operations Platform | Pain Points & Solutions", description: "Discover how Eat App solves 20+ critical restaurant operational challenges with our integrated reservation and guest management platform.", keywords: "restaurant management, reservations, guest profiles, loyalty, analytics, restaurant software", metadataBase: new URL("https://eatapp.co"),
title: "Eat App - Restaurant Operations Platform | Grow Your Restaurant", description: "Grow your Restaurant with Eat - the end-to-end dining experience solution that solves 20+ operational bottlenecks for restaurant owners.", keywords: "restaurant management, reservations, guest profiles, loyalty, analytics, restaurant software", metadataBase: new URL("https://eatapp.co"),
alternates: {
canonical: "https://eatapp.co"},
robots: {
@@ -23,13 +23,13 @@ export const metadata: Metadata = {
follow: true,
},
openGraph: {
title: "Eat App - Restaurant Operations Solutions", description: "20 Pain Points Solved by Eat App's Integrated Platform", url: "https://eatapp.co", siteName: "Eat App", type: "website", images: [
title: "Eat App - Restaurant Operations Solutions", description: "Grow your Restaurant with Eat - End-to-End Dining Experience Solution", url: "https://eatapp.co", siteName: "Eat App", type: "website", images: [
{
url: "https://eatapp.co/og-image.jpg", alt: "Eat App Platform"},
],
},
twitter: {
card: "summary_large_image", title: "Eat App - Restaurant Operations Platform", description: "Solve 20+ restaurant operational challenges with Eat App", images: ["https://eatapp.co/twitter-image.jpg"],
card: "summary_large_image", title: "Eat App - Restaurant Operations Platform", description: "Grow your Restaurant with Eat - End-to-End Dining Experience Solution", images: ["https://eatapp.co/twitter-image.jpg"],
},
};
@@ -42,7 +42,7 @@ export default function RootLayout({
<html lang="en" suppressHydrationWarning>
<ServiceWrapper>
<body
className={`${libreBaskerville.variable} ${inter.variable} antialiased`}
className={`${poppins.variable} ${inter.variable} antialiased`}
>
<Tag />
{children}

View File

@@ -2,22 +2,19 @@
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import NavbarStyleFullscreen from "@/components/navbar/NavbarStyleFullscreen/NavbarStyleFullscreen";
import FooterCard from "@/components/sections/footer/FooterCard";
import { Instagram, Linkedin, Twitter } from "lucide-react";
export default function LandingPage() {
const navItems = [
{ name: "Home", id: "home" },
{ name: "Features", id: "features" },
{ name: "Pricing", id: "pricing" },
{ name: "Contact", id: "contact" },
{ name: "Sign In", id: "signin" },
{ name: "Home", id: "/" },
{ name: "Features", id: "#features" },
{ name: "Contact", id: "#contact" },
];
const painPointCards = [
{
id: "1", front: {
emoji: "📵", text: "\"We're losing bookings because guests can't find us on Google or Instagram\""},
emoji: "📵", text: "We're losing bookings because guests can't find us on Google or Instagram"},
back: {
feature: "Omnichannel Bookings", featureColor: "#1A6B3A", bullets: [
"Reservations from Google, Instagram, Facebook, TripAdvisor & your website widget", "All in one dashboard", "30% more bookings from online channels"],
@@ -25,7 +22,7 @@ export default function LandingPage() {
},
{
id: "2", front: {
emoji: "📋", text: "\"Our team has no idea who's walking in or what they need before they arrive\""},
emoji: "📋", text: "Our team has no idea who's walking in or what they need before they arrive"},
back: {
feature: "Smart Guest Profiles", featureColor: "#1A6B3A", bullets: [
"See visit history, spend, allergies & preferences before they sit down", "AI auto-tags and enriches every profile", "Personalized guest experience at scale"],
@@ -33,7 +30,7 @@ export default function LandingPage() {
},
{
id: "3", front: {
emoji: "💸", text: "\"We have no prepayments system — people no-show and we lose revenue every week\""},
emoji: "💸", text: "We have no prepayments system — people no-show and we lose revenue every week"},
back: {
feature: "Prepayments & Deposits", featureColor: "#1A6B3A", bullets: [
"Collect deposits at the time of booking", "Reduce no-shows automatically", "Protect your revenue with zero friction"],
@@ -41,7 +38,7 @@ export default function LandingPage() {
},
{
id: "4", front: {
emoji: "🎟️", text: "\"We run events but have no way to sell tickets or manage capacity online\""},
emoji: "🎟️", text: "We run events but have no way to sell tickets or manage capacity online"},
back: {
feature: "Events & Ticketing", featureColor: "#1A6B3A", bullets: [
"Create events, sell tickets, manage capacity", "Collect payment through your booking flow", "Real-time seat and ticket management"],
@@ -49,7 +46,7 @@ export default function LandingPage() {
},
{
id: "5", front: {
emoji: "📱", text: "\"We're juggling WhatsApp, phone calls and emails separately — it's chaos\""},
emoji: "📱", text: "We're juggling WhatsApp, phone calls and emails separately — it's chaos"},
back: {
feature: "Unified Guest Inbox", featureColor: "#1A6B3A", bullets: [
"One inbox for WhatsApp, SMS and Email", "Two-way real-time messaging with templated replies", "All guest communication in one place"],
@@ -57,7 +54,7 @@ export default function LandingPage() {
},
{
id: "6", front: {
emoji: "🔄", text: "\"Guests come once and never return — we have zero loyalty strategy\""},
emoji: "🔄", text: "Guests come once and never return — we have zero loyalty strategy"},
back: {
feature: "Loyalty Engine", featureColor: "#1A6B3A", bullets: [
"Award points for visits and spend", "Send automated re-engagement messages", "Restaurants see 2x returning customer rates"],
@@ -65,7 +62,7 @@ export default function LandingPage() {
},
{
id: "7", front: {
emoji: "📊", text: "\"We have no idea which tables, servers or booking sources are actually profitable\""},
emoji: "📊", text: "We have no idea which tables, servers or booking sources are actually profitable"},
back: {
feature: "Reports Suite", featureColor: "#1A6B3A", bullets: [
"Track revenue by seating area and booking source", "Analyze server performance and cover flow", "Export everything to CSV for deeper analysis"],
@@ -73,7 +70,7 @@ export default function LandingPage() {
},
{
id: "8", front: {
emoji: "🌀", text: "\"Guest data is scattered across systems — we can't segment or target anyone\""},
emoji: "🌀", text: "Guest data is scattered across systems — we can't segment or target anyone"},
back: {
feature: "Smart CRM", featureColor: "#1A6B3A", bullets: [
"Shared guest database across all locations", "Segment by spend, visit frequency, tags or demographics", "Run targeted campaigns instantly"],
@@ -81,7 +78,7 @@ export default function LandingPage() {
},
{
id: "9", front: {
emoji: "⭐", text: "\"We get bad reviews and have no process to respond or fix them\""},
emoji: "⭐", text: "We get bad reviews and have no process to respond or fix them"},
back: {
feature: "AI Review Management", featureColor: "#1A6B3A", bullets: [
"Reply to Google, TripAdvisor and internal reviews from one place", "AI suggests replies based on context", "Track ratings and increase your stars"],
@@ -89,7 +86,7 @@ export default function LandingPage() {
},
{
id: "10", front: {
emoji: "🍽️", text: "\"Our servers don't know guest allergies or preferences until it's too late\""},
emoji: "🍽️", text: "Our servers don't know guest allergies or preferences until it's too late"},
back: {
feature: "Food Preferences & Notes", featureColor: "#1A6B3A", bullets: [
"Guest allergies, preferences and requests visible to staff before seating", "Print notes to kitchen automatically", "Zero missed allergies or special requests"],
@@ -97,7 +94,7 @@ export default function LandingPage() {
},
{
id: "11", front: {
emoji: "🏨", text: "\"We manage multiple venues but have no unified view across locations\""},
emoji: "🏨", text: "We manage multiple venues but have no unified view across locations"},
back: {
feature: "Group-Level Reporting", featureColor: "#1A6B3A", bullets: [
"See performance across all venues in one dashboard", "Shared guest database and group reports", "AI guest merging across locations"],
@@ -105,7 +102,7 @@ export default function LandingPage() {
},
{
id: "12", front: {
emoji: "📞", text: "\"When a VIP calls, we have no idea who they are until we manually search\""},
emoji: "📞", text: "When a VIP calls, we have no idea who they are until we manually search"},
back: {
feature: "Phone Line Integration", featureColor: "#1A6B3A", bullets: [
"Incoming calls auto-surface guest's full profile", "Spend history, tags, and upcoming bookings visible instantly", "Greet VIPs like you know them"],
@@ -113,7 +110,7 @@ export default function LandingPage() {
},
{
id: "13", front: {
emoji: "🗺️", text: "\"Tourists won't book us because they can't visualise our space online\""},
emoji: "🗺️", text: "Tourists won't book us because they can't visualise our space online"},
back: {
feature: "3D Floorplan Tour", featureColor: "#1A6B3A", bullets: [
"Let guests explore your restaurant in 3D before booking", "Fogo De Chao saw major uplift in tourist bookings", "Increase confidence and reduce no-shows"],
@@ -121,7 +118,7 @@ export default function LandingPage() {
},
{
id: "14", front: {
emoji: "💬", text: "\"We send marketing messages but have no idea if anyone opens or acts on them\""},
emoji: "💬", text: "We send marketing messages but have no idea if anyone opens or acts on them"},
back: {
feature: "Email & WhatsApp Analytics", featureColor: "#1A6B3A", bullets: [
"Track sent, delivered, opened and clicked rates", "Know what works and double down on it", "Optimize every campaign with data"],
@@ -129,7 +126,7 @@ export default function LandingPage() {
},
{
id: "15", front: {
emoji: "🪑", text: "\"Table turnovers are slow because staff don't know the real-time status of the floor\""},
emoji: "🪑", text: "Table turnovers are slow because staff don't know the real-time status of the floor"},
back: {
feature: "Live Table Management", featureColor: "#1A6B3A", bullets: [
"Real-time floor view with live table status", "Server assignments and POS bill sync", "Status updates the moment a bill is generated"],
@@ -137,7 +134,7 @@ export default function LandingPage() {
},
{
id: "16", front: {
emoji: "🏷️", text: "\"We upsell nothing at booking — guests don't know about our premium seating or packages\""},
emoji: "🏷️", text: "We upsell nothing at booking — guests don't know about our premium seating or packages"},
back: {
feature: "Reservation Upgrades", featureColor: "#1A6B3A", bullets: [
"Offer beach views, premium packages or room upgrades during booking", "Charge per cover or per experience", "Unlock hidden revenue per reservation"],
@@ -145,7 +142,7 @@ export default function LandingPage() {
},
{
id: "17", front: {
emoji: "⏳", text: "\"Walk-in queues are unmanaged — guests leave before getting a table\""},
emoji: "⏳", text: "Walk-in queues are unmanaged — guests leave before getting a table"},
back: {
feature: "Waitlist Management", featureColor: "#1A6B3A", bullets: [
"Digital waitlists at the door via QR code or online", "Guests get real-time position and wait time updates", "Reduce walk-outs and manage expectations"],
@@ -153,7 +150,7 @@ export default function LandingPage() {
},
{
id: "18", front: {
emoji: "🤖", text: "\"We have duplicate guest records everywhere and no time to clean them up\""},
emoji: "🤖", text: "We have duplicate guest records everywhere and no time to clean them up"},
back: {
feature: "AI Guest Merging", featureColor: "#1A6B3A", bullets: [
"AI identifies and merges duplicate profiles automatically", "Keep your CRM clean without manual work", "Single source of truth for each guest"],
@@ -161,7 +158,7 @@ export default function LandingPage() {
},
{
id: "19", front: {
emoji: "👥", text: "\"Before each shift, our team is scrambling — no one knows the guest mix or special requests\""},
emoji: "👥", text: "Before each shift, our team is scrambling — no one knows the guest mix or special requests"},
back: {
feature: "Pre-Shift Huddle Dashboard", featureColor: "#1A6B3A", bullets: [
"Daily briefing with cover summary, VIP guests, allergies, birthdays", "Server assignments and day comparison", "Everyone starts the shift aligned and ready"],
@@ -169,7 +166,7 @@ export default function LandingPage() {
},
{
id: "20", front: {
emoji: "🔗", text: "\"Our POS and reservation system don't talk to each other — spend data is always wrong\""},
emoji: "🔗", text: "Our POS and reservation system don't talk to each other — spend data is always wrong"},
back: {
feature: "POS Integration", featureColor: "#1A6B3A", bullets: [
"Real-time spend sync with Oracle Micros, Revel, Tevalis, Foodics, Petpooja & 30+", "Zero manual entry, always accurate", "Trust your data for better decisions"],
@@ -177,18 +174,6 @@ export default function LandingPage() {
},
];
const socialLinks = [
{
icon: Twitter,
href: "https://twitter.com/eatapp", ariaLabel: "Twitter"},
{
icon: Linkedin,
href: "https://linkedin.com/company/eatapp", ariaLabel: "LinkedIn"},
{
icon: Instagram,
href: "https://instagram.com/eatapp", ariaLabel: "Instagram"},
];
return (
<ThemeProvider
defaultButtonVariant="expand-hover"
@@ -214,11 +199,14 @@ export default function LandingPage() {
<div id="pain-points" data-section="pain-points">
<div className="mx-auto px-4 md:px-6 py-20">
<div className="text-center mb-16">
<h1 className="text-4xl md:text-5xl font-bold mb-4 text-foreground">
Restaurant Owners: Solve These 20 Operational Bottlenecks Today
<h1 className="text-5xl md:text-6xl lg:text-7xl font-bold mb-6 text-foreground leading-tight">
Grow Your Restaurant with Eat
</h1>
<p className="text-xl text-foreground/70">
Eat App fixes all of it.
<p className="text-2xl md:text-3xl font-semibold mb-4 text-foreground">
End-to-End Dining Experience Solution
</p>
<p className="text-lg md:text-xl text-foreground/70 max-w-3xl mx-auto">
Restaurant Owners: Solve These 20 Operational Bottlenecks Today
</p>
</div>
@@ -277,14 +265,6 @@ export default function LandingPage() {
</div>
</div>
</div>
<div id="footer" data-section="footer">
<FooterCard
logoText="Eat App"
copyrightText="© 2025 Eat App. All rights reserved."
socialLinks={socialLinks}
/>
</div>
</ThemeProvider>
);
}

View File

@@ -11,7 +11,7 @@ html {
body {
background-color: var(--background);
color: var(--foreground);
font-family: var(--font-inter), sans-serif;
font-family: var(--font-poppins), sans-serif;
position: relative;
min-height: 100vh;
overscroll-behavior: none;
@@ -24,5 +24,5 @@ h3,
h4,
h5,
h6 {
font-family: var(--font-libre-baskerville), serif;
font-family: var(--font-poppins), serif;
}