Compare commits
7 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 703be72ddd | |||
| 04150bfaf3 | |||
| a5421a0a29 | |||
| 08ca16acf8 | |||
| 43dfd7c254 | |||
| 8630b11648 | |||
| abf356fe57 |
86
src/app/checkout/page.tsx
Normal file
86
src/app/checkout/page.tsx
Normal file
@@ -0,0 +1,86 @@
|
||||
"use client";
|
||||
|
||||
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||
import ReactLenis from "lenis/react";
|
||||
import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay';
|
||||
import FooterLogoReveal from '@/components/sections/footer/FooterLogoReveal';
|
||||
import { useState } from 'react';
|
||||
|
||||
export default function CheckoutPage() {
|
||||
const [cart] = useState([
|
||||
{ id: "p1", name: "Roasted Macadamias", price: 15.00, quantity: 1 },
|
||||
{ id: "p2", name: "Artisan Truffles", price: 22.00, quantity: 2 },
|
||||
]);
|
||||
|
||||
const subtotal = cart.reduce((acc, item) => acc + (item.price * item.quantity), 0);
|
||||
|
||||
return (
|
||||
<ThemeProvider
|
||||
defaultButtonVariant="icon-arrow"
|
||||
defaultTextAnimation="reveal-blur"
|
||||
borderRadius="pill"
|
||||
contentWidth="small"
|
||||
sizing="medium"
|
||||
background="noise"
|
||||
cardStyle="glass-depth"
|
||||
primaryButtonStyle="double-inset"
|
||||
secondaryButtonStyle="glass"
|
||||
headingFontWeight="normal"
|
||||
>
|
||||
<ReactLenis root>
|
||||
<div id="nav" data-section="nav">
|
||||
<NavbarLayoutFloatingOverlay
|
||||
navItems={[
|
||||
{ name: "Home", id: "/" },
|
||||
{ name: "Products", id: "/products" },
|
||||
{ name: "Checkout", id: "/checkout" },
|
||||
]}
|
||||
brandName="Nuts & Sweets"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<main className="container mx-auto py-20 px-6">
|
||||
<h1 className="text-4xl font-bold mb-10">Checkout</h1>
|
||||
<div className="grid md:grid-cols-2 gap-12">
|
||||
<div className="bg-white/5 p-8 rounded-3xl">
|
||||
<h2 className="text-2xl font-semibold mb-6">Your Cart</h2>
|
||||
<div className="space-y-4">
|
||||
{cart.map((item) => (
|
||||
<div key={item.id} className="flex justify-between">
|
||||
<span>{item.name} (x{item.quantity})</span>
|
||||
<span>${(item.price * item.quantity).toFixed(2)}</span>
|
||||
</div>
|
||||
))}
|
||||
<div className="border-t pt-4 mt-4 font-bold text-xl flex justify-between">
|
||||
<span>Total</span>
|
||||
<span>${subtotal.toFixed(2)}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div className="bg-white/5 p-8 rounded-3xl">
|
||||
<h2 className="text-2xl font-semibold mb-6">Shipping & Payment</h2>
|
||||
<form className="space-y-4">
|
||||
<input type="text" placeholder="Full Address" className="w-full p-3 rounded-xl bg-white/10 border border-white/10" />
|
||||
<input type="email" placeholder="Contact Email" className="w-full p-3 rounded-xl bg-white/10 border border-white/10" />
|
||||
<select className="w-full p-3 rounded-xl bg-white/10 border border-white/10">
|
||||
<option>Credit Card</option>
|
||||
<option>PayPal</option>
|
||||
</select>
|
||||
<button type="submit" className="w-full p-4 rounded-xl bg-primary text-white font-bold">Complete Order</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
|
||||
<div id="footer" data-section="footer">
|
||||
<FooterLogoReveal
|
||||
logoText="Nuts & Sweets"
|
||||
leftLink={{ text: "Products", href: "/products" }}
|
||||
rightLink={{ text: "Terms", href: "#" }}
|
||||
/>
|
||||
</div>
|
||||
</ReactLenis>
|
||||
</ThemeProvider>
|
||||
);
|
||||
}
|
||||
159
src/app/page.tsx
159
src/app/page.tsx
@@ -29,13 +29,11 @@ export default function LandingPage() {
|
||||
<NavbarLayoutFloatingOverlay
|
||||
navItems={[
|
||||
{
|
||||
name: "Home",
|
||||
id: "/",
|
||||
},
|
||||
name: "Home", id: "/"},
|
||||
{
|
||||
name: "Products",
|
||||
id: "/products",
|
||||
},
|
||||
name: "Products", id: "/products"},
|
||||
{
|
||||
name: "Checkout", id: "/checkout"},
|
||||
]}
|
||||
brandName="Nuts & Sweets"
|
||||
/>
|
||||
@@ -47,9 +45,7 @@ export default function LandingPage() {
|
||||
description="Premium Nuts & Sweets, Crafted for Every Craving. Discover our curated selection of gourmet savory nuts, artisanal sweets, and delicacies sourced for exceptional taste. From everyday snacking to memorable gifting."
|
||||
buttons={[
|
||||
{
|
||||
text: "Explore All Products",
|
||||
href: "/products",
|
||||
},
|
||||
text: "Explore All Products", href: "/products"},
|
||||
]}
|
||||
imageSrc="http://img.b2bpic.net/free-vector/flat-design-art-deco-story-pack_23-2149145829.jpg"
|
||||
imageAlt="Artisanal nuts and sweets assortment"
|
||||
@@ -63,38 +59,17 @@ export default function LandingPage() {
|
||||
useInvertedBackground={false}
|
||||
features={[
|
||||
{
|
||||
id: "f1",
|
||||
title: "Artisanal Nuts",
|
||||
author: "Selection",
|
||||
description: "Hand-roasted for perfect flavor.",
|
||||
tags: [
|
||||
"Premium",
|
||||
"Savory",
|
||||
],
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/full-frame-red-delicious-fruit-slices_23-2147920854.jpg",
|
||||
},
|
||||
id: "f1", title: "Artisanal Nuts", author: "Selection", description: "Hand-roasted for perfect flavor.", tags: [
|
||||
"Premium", "Savory"],
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/full-frame-red-delicious-fruit-slices_23-2147920854.jpg"},
|
||||
{
|
||||
id: "f2",
|
||||
title: "Sweet Delicacies",
|
||||
author: "Selection",
|
||||
description: "Handcrafted sweets from top makers.",
|
||||
tags: [
|
||||
"Artisanal",
|
||||
"Natural",
|
||||
],
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/high-angle-hand-holding-spoon_23-2149629047.jpg",
|
||||
},
|
||||
id: "f2", title: "Sweet Delicacies", author: "Selection", description: "Handcrafted sweets from top makers.", tags: [
|
||||
"Artisanal", "Natural"],
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/high-angle-hand-holding-spoon_23-2149629047.jpg"},
|
||||
{
|
||||
id: "f3",
|
||||
title: "Gift-Ready",
|
||||
author: "Selection",
|
||||
description: "Beautiful packaging for every occasion.",
|
||||
tags: [
|
||||
"Gifting",
|
||||
"Corporate",
|
||||
],
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/eastern-sweets_114579-8905.jpg",
|
||||
},
|
||||
id: "f3", title: "Gift-Ready", author: "Selection", description: "Beautiful packaging for every occasion.", tags: [
|
||||
"Gifting", "Corporate"],
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/eastern-sweets_114579-8905.jpg"},
|
||||
]}
|
||||
title="Crafted with Passion"
|
||||
description="We source only the finest ingredients to create snacks that delight the palate and elevate the moment."
|
||||
@@ -109,41 +84,17 @@ export default function LandingPage() {
|
||||
useInvertedBackground={false}
|
||||
products={[
|
||||
{
|
||||
id: "p1",
|
||||
name: "Roasted Macadamias",
|
||||
price: "$15.00",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/fried-panchitos_1368-8935.jpg",
|
||||
},
|
||||
id: "p1", name: "Roasted Macadamias", price: "$15.00", imageSrc: "http://img.b2bpic.net/free-photo/fried-panchitos_1368-8935.jpg"},
|
||||
{
|
||||
id: "p2",
|
||||
name: "Artisan Truffles",
|
||||
price: "$22.00",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/slice-chocolate-cake-white-plate-with-fruit-crackers_114579-19106.jpg",
|
||||
},
|
||||
id: "p2", name: "Artisan Truffles", price: "$22.00", imageSrc: "http://img.b2bpic.net/free-photo/slice-chocolate-cake-white-plate-with-fruit-crackers_114579-19106.jpg"},
|
||||
{
|
||||
id: "p3",
|
||||
name: "Salted Pistachios",
|
||||
price: "$18.00",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/many-types-nuts-with-space-left_23-2147690256.jpg",
|
||||
},
|
||||
id: "p3", name: "Salted Pistachios", price: "$18.00", imageSrc: "http://img.b2bpic.net/free-photo/many-types-nuts-with-space-left_23-2147690256.jpg"},
|
||||
{
|
||||
id: "p4",
|
||||
name: "Almond Brittle",
|
||||
price: "$12.00",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/nougats-plate-still-life-top-view_23-2149646310.jpg",
|
||||
},
|
||||
id: "p4", name: "Almond Brittle", price: "$12.00", imageSrc: "http://img.b2bpic.net/free-photo/nougats-plate-still-life-top-view_23-2149646310.jpg"},
|
||||
{
|
||||
id: "p5",
|
||||
name: "Walnut Medley",
|
||||
price: "$16.00",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/top-view-mixture-tasty-nuts_23-2148405863.jpg",
|
||||
},
|
||||
id: "p5", name: "Walnut Medley", price: "$16.00", imageSrc: "http://img.b2bpic.net/free-photo/top-view-mixture-tasty-nuts_23-2148405863.jpg"},
|
||||
{
|
||||
id: "p6",
|
||||
name: "Dark Chocolate Delights",
|
||||
price: "$20.00",
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/top-view-golden-cupcakes-wooden-board_23-2148579267.jpg",
|
||||
},
|
||||
id: "p6", name: "Dark Chocolate Delights", price: "$20.00", imageSrc: "http://img.b2bpic.net/free-photo/top-view-golden-cupcakes-wooden-board_23-2148579267.jpg"},
|
||||
]}
|
||||
title="Signature Collection"
|
||||
description="Experience our most loved savory nuts and sweet treats."
|
||||
@@ -158,20 +109,11 @@ export default function LandingPage() {
|
||||
useInvertedBackground={false}
|
||||
metrics={[
|
||||
{
|
||||
id: "m1",
|
||||
value: "50+",
|
||||
description: "Unique Flavor Profiles",
|
||||
},
|
||||
id: "m1", value: "50+", description: "Unique Flavor Profiles"},
|
||||
{
|
||||
id: "m2",
|
||||
value: "10k+",
|
||||
description: "Happy Customers",
|
||||
},
|
||||
id: "m2", value: "10k+", description: "Happy Customers"},
|
||||
{
|
||||
id: "m3",
|
||||
value: "100%",
|
||||
description: "Natural Ingredients",
|
||||
},
|
||||
id: "m3", value: "100%", description: "Natural Ingredients"},
|
||||
]}
|
||||
title="Quality Assured"
|
||||
description="Years of expertise in delivering gourmet happiness."
|
||||
@@ -186,45 +128,20 @@ export default function LandingPage() {
|
||||
useInvertedBackground={false}
|
||||
testimonials={[
|
||||
{
|
||||
id: "t1",
|
||||
name: "Sarah J.",
|
||||
role: "Food Blogger",
|
||||
company: "TastyLife",
|
||||
rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/front-view-young-beautiful-female-green-shirt-holding-plate-full-fruits-white-sign-cream-wall-fruit-model-woman-food-vitamine-color_140725-35829.jpg",
|
||||
},
|
||||
id: "t1", name: "Sarah J.", role: "Food Blogger", company: "TastyLife", rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/front-view-young-beautiful-female-green-shirt-holding-plate-full-fruits-white-sign-cream-wall-fruit-model-woman-food-vitamine-color_140725-35829.jpg"},
|
||||
{
|
||||
id: "t2",
|
||||
name: "Mark D.",
|
||||
role: "Marketing Director",
|
||||
company: "CorpGifts",
|
||||
rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/man-black-suit-unwrapping-gift_23-2148401448.jpg",
|
||||
},
|
||||
id: "t2", name: "Mark D.", role: "Marketing Director", company: "CorpGifts", rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/man-black-suit-unwrapping-gift_23-2148401448.jpg"},
|
||||
{
|
||||
id: "t3",
|
||||
name: "Emily R.",
|
||||
role: "Customer",
|
||||
company: "Home",
|
||||
rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/woman-eating-street-food-outdoors_23-2148952911.jpg",
|
||||
},
|
||||
id: "t3", name: "Emily R.", role: "Customer", company: "Home", rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/woman-eating-street-food-outdoors_23-2148952911.jpg"},
|
||||
{
|
||||
id: "t4",
|
||||
name: "David K.",
|
||||
role: "Culinary Critic",
|
||||
company: "FoodReview",
|
||||
rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/woman-sitting-cafe-drinking-coffee-working-computer_1303-14698.jpg",
|
||||
},
|
||||
id: "t4", name: "David K.", role: "Culinary Critic", company: "FoodReview", rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/woman-sitting-cafe-drinking-coffee-working-computer_1303-14698.jpg"},
|
||||
{
|
||||
id: "t5",
|
||||
name: "Lisa B.",
|
||||
role: "Customer",
|
||||
company: "Home",
|
||||
rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/young-african-american-man-holding-raw-hazelnuts-cereal-bar-relaxed-with-serious-expression-face-simple-natural-looking-camera_839833-11113.jpg",
|
||||
},
|
||||
id: "t5", name: "Lisa B.", role: "Customer", company: "Home", rating: 5,
|
||||
imageSrc: "http://img.b2bpic.net/free-photo/young-african-american-man-holding-raw-hazelnuts-cereal-bar-relaxed-with-serious-expression-face-simple-natural-looking-camera_839833-11113.jpg"},
|
||||
]}
|
||||
title="Loved by Our Fans"
|
||||
description="See why our snacks are the highlight of every gathering."
|
||||
@@ -235,16 +152,12 @@ export default function LandingPage() {
|
||||
<FooterLogoReveal
|
||||
logoText="Nuts & Sweets"
|
||||
leftLink={{
|
||||
text: "Products",
|
||||
href: "/products",
|
||||
}}
|
||||
text: "Products", href: "/products"}}
|
||||
rightLink={{
|
||||
text: "Terms",
|
||||
href: "#",
|
||||
}}
|
||||
text: "Terms", href: "#"}}
|
||||
/>
|
||||
</div>
|
||||
</ReactLenis>
|
||||
</ThemeProvider>
|
||||
);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user