14 Commits

Author SHA1 Message Date
d2e7a62768 Merge version_4 into main
Merge version_4 into main
2026-05-13 15:20:28 +00:00
88abdca5de Update src/app/reserve/page.tsx 2026-05-13 15:20:25 +00:00
f7e079d7df Merge version_4 into main
Merge version_4 into main
2026-05-13 15:19:58 +00:00
71d58b8227 Add src/app/reserve/page.tsx 2026-05-13 15:19:51 +00:00
5ac4d62ee3 Update src/app/page.tsx 2026-05-13 15:19:51 +00:00
fd6faf3498 Merge version_3 into main
Merge version_3 into main
2026-05-13 15:18:23 +00:00
299aeb3a0f Update src/app/page.tsx 2026-05-13 15:18:20 +00:00
7f1b335b5d Merge version_3 into main
Merge version_3 into main
2026-05-13 15:15:40 +00:00
cb042e2b4a Update theme fonts 2026-05-13 15:15:37 +00:00
28a607b06e Update theme fonts 2026-05-13 15:15:37 +00:00
ea1d07f73e Merge version_3 into main
Merge version_3 into main
2026-05-13 15:14:43 +00:00
c77106f8d2 Update src/app/page.tsx 2026-05-13 15:14:40 +00:00
8e2f7df429 Merge version_2 into main
Merge version_2 into main
2026-05-13 15:11:39 +00:00
1e2ca43ad8 Update src/app/page.tsx 2026-05-13 15:11:36 +00:00
4 changed files with 123 additions and 152 deletions

View File

@@ -7,6 +7,7 @@ import { ServiceWrapper } from "@/components/ServiceWrapper";
import Tag from "@/tag/Tag";
import { getVisualEditScript } from "@/utils/visual-edit-script";
import { Cormorant_Garamond, Jost } from "next/font/google";
import { Libre_Baskerville } from "next/font/google";
@@ -21,8 +22,16 @@ export const metadata: Metadata = {
},
};
const cormorant = Cormorant_Garamond({ variable: "--font-cormorant", subsets: ["latin"], weight: ["400", "500", "600", "700"] });
const jost = Jost({ variable: "--font-jost", subsets: ["latin"] });
const libreBaskerville = Libre_Baskerville({
variable: "--font-libre-baskerville",
subsets: ["latin"],
weight: ["400", "700"],
});
const inter = Inter({
variable: "--font-inter",
subsets: ["latin"],
});
export default function RootLayout({
children,
@@ -32,7 +41,7 @@ export default function RootLayout({
return (
<html lang="en" suppressHydrationWarning>
<ServiceWrapper>
<body className={`${cormorant.variable} ${jost.variable} antialiased`}>
<body className={`${libreBaskerville.variable} ${inter.variable} antialiased`}>
<Tag />
{children}
<script

View File

@@ -31,70 +31,41 @@ export default function LandingPage() {
<NavbarStyleApple
navItems={[
{
name: "About",
id: "about",
},
name: "About", id: "about"},
{
name: "Menu",
id: "menu",
},
name: "Menu", id: "menu"},
{
name: "Reviews",
id: "reviews",
},
name: "Reviews", id: "reviews"},
{
name: "Reserve",
id: "reserve",
},
name: "Reserve", id: "/reserve"},
]}
brandName="Saffron & Silk"
brandName=""
/>
</div>
<div id="hero" data-section="hero">
<HeroBillboardRotatedCarousel
background={{
variant: "gradient-bars",
}}
title="A Symphony of Saffron & Silk"
variant: "gradient-bars"}}
title="Super Kitchen Corner"
description="Experience the timeless elegance of traditional Indian cuisine, reimagined for the modern palate."
buttons={[
{
text: "Reserve a Table",
href: "#contact",
},
text: "Reserve a Table", href: "/reserve"},
]}
carouselItems={[
{
id: "1",
imageSrc: "http://img.b2bpic.net/free-photo/elegant-dessert-dark-plate-with-decorative-flowers_23-2151973716.jpg",
imageAlt: "Luxurious dining",
},
id: "1", imageSrc: "http://img.b2bpic.net/free-photo/elegant-dessert-dark-plate-with-decorative-flowers_23-2151973716.jpg", imageAlt: "Luxurious dining"},
{
id: "2",
imageSrc: "http://img.b2bpic.net/free-photo/cooking-pav-bhaji-street-food-stall_23-2151996245.jpg",
imageAlt: "Culinary art",
},
id: "2", imageSrc: "http://img.b2bpic.net/free-photo/cooking-pav-bhaji-street-food-stall_23-2151996245.jpg", imageAlt: "Culinary art"},
{
id: "3",
imageSrc: "http://img.b2bpic.net/free-photo/restaurant-private-room-with-table-14-persons-wooden-ceiling-brick-walls-fireplace_140725-8452.jpg",
imageAlt: "Ambience",
},
id: "3", imageSrc: "http://img.b2bpic.net/free-photo/restaurant-private-room-with-table-14-persons-wooden-ceiling-brick-walls-fireplace_140725-8452.jpg", imageAlt: "Ambience"},
{
id: "4",
imageSrc: "http://img.b2bpic.net/free-photo/massaman-curry-frying-pan-with-spices-cement-floor_1150-20782.jpg",
imageAlt: "Cuisine detail",
},
id: "4", imageSrc: "http://img.b2bpic.net/free-photo/massaman-curry-frying-pan-with-spices-cement-floor_1150-20782.jpg", imageAlt: "Cuisine detail"},
{
id: "5",
imageSrc: "http://img.b2bpic.net/free-photo/plate-pickles-cabbage-tomatoes-eggplant_140725-2177.jpg",
imageAlt: "Atmosphere",
},
id: "5", imageSrc: "http://img.b2bpic.net/free-photo/plate-pickles-cabbage-tomatoes-eggplant_140725-2177.jpg", imageAlt: "Atmosphere"},
{
id: "6",
imageSrc: "http://img.b2bpic.net/free-photo/teddy-bear-made-out-lights-building_181624-13564.jpg",
imageAlt: "Entrance",
},
id: "6", imageSrc: "http://img.b2bpic.net/free-photo/teddy-bear-made-out-lights-building_181624-13564.jpg", imageAlt: "Entrance"},
]}
/>
</div>
@@ -120,47 +91,17 @@ export default function LandingPage() {
useInvertedBackground={true}
products={[
{
id: "p1",
name: "Royal Saffron Biryani",
price: "$28",
imageSrc: "http://img.b2bpic.net/free-photo/high-angle-pakistan-meal-assortment_23-2148821516.jpg",
imageAlt: "Signature Biryani",
},
id: "p1", name: "Royal Saffron Biryani", price: "$28", imageSrc: "http://img.b2bpic.net/free-photo/high-angle-pakistan-meal-assortment_23-2148821516.jpg", imageAlt: "Signature Biryani"},
{
id: "p2",
name: "Tandoori Medley",
price: "$32",
imageSrc: "http://img.b2bpic.net/free-photo/top-view-cooked-rice-with-seasonings-dark-surface-meal-dark-dish-east_140725-82272.jpg",
imageAlt: "Tandoori",
},
id: "p2", name: "Tandoori Medley", price: "$32", imageSrc: "http://img.b2bpic.net/free-photo/top-view-cooked-rice-with-seasonings-dark-surface-meal-dark-dish-east_140725-82272.jpg", imageAlt: "Tandoori"},
{
id: "p3",
name: "Butter Chicken Bliss",
price: "$26",
imageSrc: "http://img.b2bpic.net/free-photo/anise-board-near-rice-dish_23-2147894745.jpg",
imageAlt: "Chicken",
},
id: "p3", name: "Butter Chicken Bliss", price: "$26", imageSrc: "http://img.b2bpic.net/free-photo/anise-board-near-rice-dish_23-2147894745.jpg", imageAlt: "Chicken"},
{
id: "p4",
name: "Lamb Rogan Josh",
price: "$30",
imageSrc: "http://img.b2bpic.net/free-photo/top-view-delicious-cooked-plov-rice-with-different-raisins-inside-plate-dark-grey-surface_140725-90295.jpg",
imageAlt: "Lamb",
},
id: "p4", name: "Lamb Rogan Josh", price: "$30", imageSrc: "http://img.b2bpic.net/free-photo/top-view-delicious-cooked-plov-rice-with-different-raisins-inside-plate-dark-grey-surface_140725-90295.jpg", imageAlt: "Lamb"},
{
id: "p5",
name: "Paneer Tikka Royale",
price: "$24",
imageSrc: "http://img.b2bpic.net/free-photo/top-view-tasty-famous-eastern-meal-consists-cooked-rice-different-raisins-dark_140725-36002.jpg",
imageAlt: "Paneer",
},
id: "p5", name: "Paneer Tikka Royale", price: "$24", imageSrc: "http://img.b2bpic.net/free-photo/top-view-tasty-famous-eastern-meal-consists-cooked-rice-different-raisins-dark_140725-36002.jpg", imageAlt: "Paneer"},
{
id: "p6",
name: "Dal Makhani Heritage",
price: "$20",
imageSrc: "http://img.b2bpic.net/free-photo/lime-near-rice-potatoes_23-2147894951.jpg",
imageAlt: "Dal",
},
id: "p6", name: "Dal Makhani Heritage", price: "$20", imageSrc: "http://img.b2bpic.net/free-photo/lime-near-rice-potatoes_23-2147894951.jpg", imageAlt: "Dal"},
]}
title="Chef's Pride Selection"
description="A curated journey through our most celebrated kitchen masterpieces."
@@ -174,25 +115,13 @@ export default function LandingPage() {
description="What makes our table the most sought-after in the city."
accordionItems={[
{
id: "f1",
title: "Farm-Fresh Ingredients",
content: "We source the finest seasonal produce and exotic spices directly from local farmers.",
},
id: "f1", title: "Farm-Fresh Ingredients", content: "We source the finest seasonal produce and exotic spices directly from local farmers."},
{
id: "f2",
title: "Rooftop Dining Views",
content: "Enjoy panoramic city vistas while you dine in our tranquil rooftop garden setting.",
},
id: "f2", title: "Rooftop Dining Views", content: "Enjoy panoramic city vistas while you dine in our tranquil rooftop garden setting."},
{
id: "f3",
title: "Family Style Service",
content: "Warmth, generosity, and hospitality that makes you feel like an honored guest at home.",
},
id: "f3", title: "Family Style Service", content: "Warmth, generosity, and hospitality that makes you feel like an honored guest at home."},
{
id: "f4",
title: "Traditional Methods",
content: "Cooking over open flames and ancient clay ovens to preserve ancestral cooking techniques.",
},
id: "f4", title: "Traditional Methods", content: "Cooking over open flames and ancient clay ovens to preserve ancestral cooking techniques."},
]}
mediaAnimation="slide-up"
imageSrc="http://img.b2bpic.net/free-photo/restaurant-table-private-room-with-fireplace-wooden-ceilings-brick-walls_140725-8458.jpg"
@@ -208,25 +137,15 @@ export default function LandingPage() {
author="Divyanshu Sharma"
avatars={[
{
src: "http://img.b2bpic.net/free-photo/indian-man-mountains-male-traditional-turban-hinduist-with-special-things-rituals_1157-41085.jpg",
alt: "Divyanshu",
},
src: "http://img.b2bpic.net/free-photo/indian-man-mountains-male-traditional-turban-hinduist-with-special-things-rituals_1157-41085.jpg", alt: "Divyanshu"},
{
src: "http://img.b2bpic.net/free-photo/meat-cutting-glass-champagne_140725-2149.jpg",
alt: "KD Singh",
},
src: "http://img.b2bpic.net/free-photo/meat-cutting-glass-champagne_140725-2149.jpg", alt: "KD Singh"},
{
src: "http://img.b2bpic.net/free-photo/indian-man-mountains-male-traditional-turban-hinduist-with-special-things-rituals_1157-41086.jpg",
alt: "Sweta Tomar",
},
src: "http://img.b2bpic.net/free-photo/indian-man-mountains-male-traditional-turban-hinduist-with-special-things-rituals_1157-41086.jpg", alt: "Sweta Tomar"},
{
src: "http://img.b2bpic.net/free-photo/man-wearing-chef-attire_23-2151217163.jpg",
alt: "Guest 4",
},
src: "http://img.b2bpic.net/free-photo/man-wearing-chef-attire_23-2151217163.jpg", alt: "Guest 4"},
{
src: "http://img.b2bpic.net/free-photo/high-angle-dining-table-assortment_23-2150312228.jpg",
alt: "Guest 5",
},
src: "http://img.b2bpic.net/free-photo/high-angle-dining-table-assortment_23-2150312228.jpg", alt: "Guest 5"},
]}
ratingAnimation="slide-up"
avatarsAnimation="slide-up"
@@ -237,18 +156,13 @@ export default function LandingPage() {
<ContactText
useInvertedBackground={false}
background={{
variant: "gradient-bars",
}}
text="Join us for an unforgettable evening. Located at 123 Culinary Way. Open 5pm-11pm."
variant: "gradient-bars"}}
text="Join us for an unforgettable evening. Located at Jatheri Rd, Sector 35, Sonipat, Haryana 131001. Open 5pm-11pm."
buttons={[
{
text: "Reserve Now",
href: "tel:+1234567890",
},
text: "Reserve Now", href: "/reserve"},
{
text: "Order via Swiggy",
href: "https://swiggy.com",
},
text: "Order via Swiggy", href: "https://swiggy.com"},
]}
/>
</div>
@@ -258,46 +172,29 @@ export default function LandingPage() {
logoText="Saffron & Silk"
columns={[
{
title: "Navigation",
items: [
title: "Navigation", items: [
{
label: "About",
href: "#about",
},
label: "About", href: "/#about"},
{
label: "Menu",
href: "#menu",
},
label: "Menu", href: "/#menu"},
{
label: "Contact",
href: "#contact",
},
label: "Contact", href: "/#contact"},
],
},
{
title: "Social",
items: [
title: "Social", items: [
{
label: "Instagram",
href: "#",
},
label: "Instagram", href: "#"},
{
label: "Facebook",
href: "#",
},
label: "Facebook", href: "#"},
],
},
{
title: "Legal",
items: [
title: "Legal", items: [
{
label: "Privacy Policy",
href: "#",
},
label: "Privacy Policy", href: "#"},
{
label: "Terms of Service",
href: "#",
},
label: "Terms of Service", href: "#"},
],
},
]}
@@ -306,4 +203,4 @@ export default function LandingPage() {
</ReactLenis>
</ThemeProvider>
);
}
}

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

@@ -0,0 +1,65 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import { useState } from "react";
import ContactText from '@/components/sections/contact/ContactText';
import NavbarStyleApple from '@/components/navbar/NavbarStyleApple/NavbarStyleApple';
import FooterBaseCard from '@/components/sections/footer/FooterBaseCard';
export default function ReservePage() {
const [name, setName] = useState("");
const [date, setDate] = useState("");
return (
<ThemeProvider
defaultButtonVariant="text-stagger"
defaultTextAnimation="entrance-slide"
borderRadius="rounded"
contentWidth="medium"
sizing="medium"
background="circleGradient"
cardStyle="glass-elevated"
primaryButtonStyle="gradient"
secondaryButtonStyle="glass"
headingFontWeight="normal"
>
<div id="nav" data-section="nav">
<NavbarStyleApple
navItems={[
{ name: "Home", id: "/" },
{ name: "Reserve", id: "/reserve" }
]}
brandName="Saffron & Silk"
/>
</div>
<main className="min-h-screen py-20 flex flex-col items-center justify-center">
<div className="max-w-md w-full p-8 bg-card rounded-lg shadow-lg">
<h1 className="text-3xl font-bold mb-6 text-foreground">Reserve a Table</h1>
<form className="flex flex-col gap-4" onSubmit={(e) => { e.preventDefault(); alert("Reservation requested!"); }}>
<input
className="p-3 rounded border bg-background text-foreground"
placeholder="Your Name"
value={name}
onChange={(e) => setName(e.target.value)}
required
/>
<input
type="date"
className="p-3 rounded border bg-background text-foreground"
value={date}
onChange={(e) => setDate(e.target.value)}
required
/>
<button type="submit" className="p-3 bg-primary-cta text-white rounded font-bold hover:opacity-90">Confirm Reservation</button>
</form>
</div>
</main>
<div id="footer" data-section="footer">
<FooterBaseCard
logoText="Saffron & Silk"
columns={[]}
/>
</div>
</ThemeProvider>
);
}

View File

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