Compare commits
11 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 9212be9063 | |||
| 7434c1ce3e | |||
| 1e8f26b377 | |||
| 0a6902cd3a | |||
| 51e0937fa8 | |||
| 7bd56d4f93 | |||
| 1e98688c71 | |||
| 302384c73c | |||
| 63d4649b9a | |||
| 629c2a8641 | |||
| 1439eddea3 |
43
src/app/about/page.tsx
Normal file
43
src/app/about/page.tsx
Normal file
@@ -0,0 +1,43 @@
|
|||||||
|
"use client";
|
||||||
|
|
||||||
|
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||||
|
import ReactLenis from "lenis/react";
|
||||||
|
import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered';
|
||||||
|
import TestimonialAboutCard from '@/components/sections/about/TestimonialAboutCard';
|
||||||
|
import FooterCard from '@/components/sections/footer/FooterCard';
|
||||||
|
import { Star } from "lucide-react";
|
||||||
|
|
||||||
|
export default function AboutPage() {
|
||||||
|
return (
|
||||||
|
<ThemeProvider defaultButtonVariant="hover-bubble" defaultTextAnimation="reveal-blur" 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">
|
||||||
|
<NavbarStyleCentered
|
||||||
|
navItems={[
|
||||||
|
{ name: "Home", id: "/" },
|
||||||
|
{ name: "Shop", id: "/shop" },
|
||||||
|
{ name: "About", id: "/about" },
|
||||||
|
{ name: "Contact", id: "/contact" },
|
||||||
|
]}
|
||||||
|
brandName="Florista de Tires"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
<div id="about" data-section="about" className="pt-32">
|
||||||
|
<TestimonialAboutCard
|
||||||
|
useInvertedBackground={false}
|
||||||
|
tag="About Ms. Ana"
|
||||||
|
title="Passion in Every Petal"
|
||||||
|
description="Welcome to Florista de Tires. I'm Ana, and I believe flowers have the power to tell stories and brighten lives. Every bouquet is crafted with care, inspired by the natural beauty of the garden."
|
||||||
|
subdescription="With years of experience and a deep love for botany, I ensure only the freshest and most vibrant blooms make it into your hands."
|
||||||
|
imageSrc="http://img.b2bpic.net/free-photo/woman-gardner-looking-after-plants-greenhouse_1303-14066.jpg"
|
||||||
|
mediaAnimation="blur-reveal"
|
||||||
|
icon={Star}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
<div id="footer" data-section="footer">
|
||||||
|
<FooterCard logoText="Florista de Tires" />
|
||||||
|
</div>
|
||||||
|
</ReactLenis>
|
||||||
|
</ThemeProvider>
|
||||||
|
);
|
||||||
|
}
|
||||||
50
src/app/admin/dashboard/page.tsx
Normal file
50
src/app/admin/dashboard/page.tsx
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
"use client";
|
||||||
|
|
||||||
|
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||||
|
import { useState } from "react";
|
||||||
|
import Input from "@/components/form/Input";
|
||||||
|
import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered';
|
||||||
|
|
||||||
|
export default function AdminDashboard() {
|
||||||
|
const [product, setProduct] = useState({ name: "", price: "", description: "", image: "" });
|
||||||
|
|
||||||
|
const handleSubmit = (e: React.FormEvent) => {
|
||||||
|
e.preventDefault();
|
||||||
|
console.log("Saving product:", product);
|
||||||
|
alert("Product saved successfully!");
|
||||||
|
};
|
||||||
|
|
||||||
|
return (
|
||||||
|
<ThemeProvider
|
||||||
|
defaultButtonVariant="hover-bubble"
|
||||||
|
defaultTextAnimation="reveal-blur"
|
||||||
|
borderRadius="soft"
|
||||||
|
contentWidth="mediumLarge"
|
||||||
|
sizing="largeSmallSizeLargeTitles"
|
||||||
|
background="blurBottom"
|
||||||
|
cardStyle="gradient-bordered"
|
||||||
|
primaryButtonStyle="flat"
|
||||||
|
secondaryButtonStyle="radial-glow"
|
||||||
|
headingFontWeight="bold"
|
||||||
|
>
|
||||||
|
<div id="nav" data-section="nav">
|
||||||
|
<NavbarStyleCentered
|
||||||
|
navItems={[{ name: "Home", id: "/" }, { name: "Dashboard", id: "/admin/dashboard" }]}
|
||||||
|
brandName="Florista de Tires Admin"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
<div className="min-h-screen pt-32 px-6 max-w-4xl mx-auto">
|
||||||
|
<h1 className="text-4xl font-bold mb-8">Product Management</h1>
|
||||||
|
<form onSubmit={handleSubmit} className="space-y-6 bg-card p-8 rounded-lg shadow-sm border">
|
||||||
|
<Input value={product.name} onChange={(v) => setProduct({ ...product, name: v })} placeholder="Product Name" />
|
||||||
|
<Input value={product.price} onChange={(v) => setProduct({ ...product, price: v })} placeholder="Price (e.g. 25€)" />
|
||||||
|
<Input value={product.description} onChange={(v) => setProduct({ ...product, description: v })} placeholder="Description" />
|
||||||
|
<Input value={product.image} onChange={(v) => setProduct({ ...product, image: v })} placeholder="Image URL" />
|
||||||
|
<button type="submit" className="bg-primary-cta text-white px-6 py-2 rounded-md">
|
||||||
|
Save Product
|
||||||
|
</button>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</ThemeProvider>
|
||||||
|
);
|
||||||
|
}
|
||||||
54
src/app/contact/page.tsx
Normal file
54
src/app/contact/page.tsx
Normal file
@@ -0,0 +1,54 @@
|
|||||||
|
"use client";
|
||||||
|
|
||||||
|
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||||
|
import ReactLenis from "lenis/react";
|
||||||
|
import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered';
|
||||||
|
import ContactSplitForm from '@/components/sections/contact/ContactSplitForm';
|
||||||
|
import FooterCard from '@/components/sections/footer/FooterCard';
|
||||||
|
|
||||||
|
export default function ContactPage() {
|
||||||
|
return (
|
||||||
|
<ThemeProvider
|
||||||
|
defaultButtonVariant="hover-bubble"
|
||||||
|
defaultTextAnimation="reveal-blur"
|
||||||
|
borderRadius="soft"
|
||||||
|
contentWidth="mediumLarge"
|
||||||
|
sizing="largeSmallSizeLargeTitles"
|
||||||
|
background="blurBottom"
|
||||||
|
cardStyle="gradient-bordered"
|
||||||
|
primaryButtonStyle="flat"
|
||||||
|
secondaryButtonStyle="radial-glow"
|
||||||
|
headingFontWeight="bold"
|
||||||
|
>
|
||||||
|
<ReactLenis root>
|
||||||
|
<NavbarStyleCentered
|
||||||
|
navItems={[
|
||||||
|
{ name: "Home", id: "/" },
|
||||||
|
{ name: "Shop", id: "/#shop" },
|
||||||
|
{ name: "About", id: "/#about" },
|
||||||
|
{ name: "Reviews", id: "/reviews" },
|
||||||
|
{ name: "Contact", id: "/contact" },
|
||||||
|
]}
|
||||||
|
brandName="Florista de Tires"
|
||||||
|
/>
|
||||||
|
<div className="pt-32 pb-20">
|
||||||
|
<ContactSplitForm
|
||||||
|
useInvertedBackground={true}
|
||||||
|
title="Get in Touch / Order"
|
||||||
|
description="We are located at Praça Fernando Lopes Graça 25 B, 2785-625 São Domingos de Rana. Call us at +351 927 577 511. Delivery available!"
|
||||||
|
inputs={[
|
||||||
|
{ name: "name", type: "text", placeholder: "Your Name" },
|
||||||
|
{ name: "email", type: "email", placeholder: "Your Email" },
|
||||||
|
]}
|
||||||
|
textarea={{
|
||||||
|
name: "message", placeholder: "Tell us what you're looking for...", rows: 4,
|
||||||
|
}}
|
||||||
|
imageSrc="http://img.b2bpic.net/free-photo/full-shot-woman-sitting-floor_23-2149591584.jpg"
|
||||||
|
mediaAnimation="slide-up"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
<FooterCard logoText="Florista de Tires" copyrightText="© 2025 Florista de Tires. All rights reserved." />
|
||||||
|
</ReactLenis>
|
||||||
|
</ThemeProvider>
|
||||||
|
);
|
||||||
|
}
|
||||||
155
src/app/page.tsx
155
src/app/page.tsx
@@ -29,26 +29,12 @@ export default function LandingPage() {
|
|||||||
<div id="nav" data-section="nav">
|
<div id="nav" data-section="nav">
|
||||||
<NavbarStyleCentered
|
<NavbarStyleCentered
|
||||||
navItems={[
|
navItems={[
|
||||||
{
|
{ name: "Home", id: "hero" },
|
||||||
name: "Home",
|
{ name: "Shop", id: "shop" },
|
||||||
id: "hero",
|
{ name: "About", id: "about" },
|
||||||
},
|
{ name: "Reviews", id: "reviews" },
|
||||||
{
|
{ name: "Contact", id: "contact" },
|
||||||
name: "Shop",
|
{ name: "Admin", id: "/admin/dashboard" }
|
||||||
id: "shop",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "About",
|
|
||||||
id: "about",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "Reviews",
|
|
||||||
id: "reviews",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "Contact",
|
|
||||||
id: "contact",
|
|
||||||
},
|
|
||||||
]}
|
]}
|
||||||
brandName="Florista de Tires"
|
brandName="Florista de Tires"
|
||||||
/>
|
/>
|
||||||
@@ -56,65 +42,24 @@ export default function LandingPage() {
|
|||||||
|
|
||||||
<div id="hero" data-section="hero">
|
<div id="hero" data-section="hero">
|
||||||
<HeroCentered
|
<HeroCentered
|
||||||
background={{
|
background={{ variant: "radial-gradient" }}
|
||||||
variant: "radial-gradient",
|
|
||||||
}}
|
|
||||||
title="Bringing Garden Magic to São Domingos de Rana"
|
title="Bringing Garden Magic to São Domingos de Rana"
|
||||||
description="Handpicked, artisanal floral arrangements for your special moments. Discover the beauty of natural, seasonal blooms."
|
description="Handpicked, artisanal floral arrangements for your special moments. Discover the beauty of natural, seasonal blooms."
|
||||||
avatars={[
|
avatars={[
|
||||||
{
|
{ src: "http://img.b2bpic.net/free-photo/blue-white-lavenders-light-pink-wooden-background_24837-622.jpg", alt: "Floral arrangement 1" },
|
||||||
src: "http://img.b2bpic.net/free-photo/blue-white-lavenders-light-pink-wooden-background_24837-622.jpg",
|
{ src: "http://img.b2bpic.net/free-photo/vase-with-fresh-summer-flowers-female-hands-white-background_169016-34804.jpg", alt: "Floral arrangement 2" },
|
||||||
alt: "Floral arrangement 1",
|
{ src: "http://img.b2bpic.net/free-photo/various-blooming-flowers-vases_23-2147761209.jpg", alt: "Floral arrangement 3" },
|
||||||
},
|
{ src: "http://img.b2bpic.net/free-photo/anonymous-florist-holding-bunch-flowers_23-2147761023.jpg", alt: "Floral arrangement 4" },
|
||||||
{
|
{ src: "http://img.b2bpic.net/free-photo/full-shot-woman-sitting-floor_23-2149591584.jpg", alt: "Floral arrangement 5" },
|
||||||
src: "http://img.b2bpic.net/free-photo/vase-with-fresh-summer-flowers-female-hands-white-background_169016-34804.jpg",
|
|
||||||
alt: "Floral arrangement 2",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
src: "http://img.b2bpic.net/free-photo/various-blooming-flowers-vases_23-2147761209.jpg",
|
|
||||||
alt: "Floral arrangement 3",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
src: "http://img.b2bpic.net/free-photo/anonymous-florist-holding-bunch-flowers_23-2147761023.jpg",
|
|
||||||
alt: "Floral arrangement 4",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
src: "http://img.b2bpic.net/free-photo/full-shot-woman-sitting-floor_23-2149591584.jpg",
|
|
||||||
alt: "Floral arrangement 5",
|
|
||||||
},
|
|
||||||
]}
|
|
||||||
buttons={[
|
|
||||||
{
|
|
||||||
text: "Shop Flowers",
|
|
||||||
href: "#shop",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
text: "Contact Us",
|
|
||||||
href: "#contact",
|
|
||||||
},
|
|
||||||
]}
|
]}
|
||||||
|
buttons={[{ text: "Shop Flowers", href: "#shop" }, { text: "Contact Us", href: "#contact" }]}
|
||||||
buttonAnimation="slide-up"
|
buttonAnimation="slide-up"
|
||||||
marqueeItems={[
|
marqueeItems={[
|
||||||
{
|
{ type: "text", text: "Fresh Seasonal Blooms" },
|
||||||
type: "text",
|
{ type: "text", text: "Artisanal Bouquets" },
|
||||||
text: "Fresh Seasonal Blooms",
|
{ type: "text", text: "Local Garden Flowers" },
|
||||||
},
|
{ type: "text", text: "Expert Floristry" },
|
||||||
{
|
{ type: "text", text: "Same-Day Delivery" },
|
||||||
type: "text",
|
|
||||||
text: "Artisanal Bouquets",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
type: "text",
|
|
||||||
text: "Local Garden Flowers",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
type: "text",
|
|
||||||
text: "Expert Floristry",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
type: "text",
|
|
||||||
text: "Same-Day Delivery",
|
|
||||||
},
|
|
||||||
]}
|
]}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
@@ -139,24 +84,9 @@ export default function LandingPage() {
|
|||||||
gridVariant="three-columns-all-equal-width"
|
gridVariant="three-columns-all-equal-width"
|
||||||
useInvertedBackground={true}
|
useInvertedBackground={true}
|
||||||
products={[
|
products={[
|
||||||
{
|
{ id: "1", name: "Spring Meadow Bouquet", price: "25€", imageSrc: "http://img.b2bpic.net/free-photo/vase-with-fresh-summer-flowers-female-hands-white-background_169016-34804.jpg" },
|
||||||
id: "1",
|
{ id: "2", name: "Sunset Garden Arrangement", price: "35€", imageSrc: "http://img.b2bpic.net/free-photo/various-blooming-flowers-vases_23-2147761209.jpg" },
|
||||||
name: "Spring Meadow Bouquet",
|
{ id: "3", name: "Classic White Elegance", price: "30€", imageSrc: "http://img.b2bpic.net/free-photo/anonymous-florist-holding-bunch-flowers_23-2147761023.jpg" },
|
||||||
price: "25€",
|
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/vase-with-fresh-summer-flowers-female-hands-white-background_169016-34804.jpg",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: "2",
|
|
||||||
name: "Sunset Garden Arrangement",
|
|
||||||
price: "35€",
|
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/various-blooming-flowers-vases_23-2147761209.jpg",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: "3",
|
|
||||||
name: "Classic White Elegance",
|
|
||||||
price: "30€",
|
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/anonymous-florist-holding-bunch-flowers_23-2147761023.jpg",
|
|
||||||
},
|
|
||||||
]}
|
]}
|
||||||
title="Our Arrangements"
|
title="Our Arrangements"
|
||||||
description="Browse our latest creations, crafted daily with seasonal wildflowers."
|
description="Browse our latest creations, crafted daily with seasonal wildflowers."
|
||||||
@@ -170,26 +100,11 @@ export default function LandingPage() {
|
|||||||
rating={5}
|
rating={5}
|
||||||
author="Happy Customer"
|
author="Happy Customer"
|
||||||
avatars={[
|
avatars={[
|
||||||
{
|
{ src: "http://img.b2bpic.net/free-photo/woman-gardner-looking-after-plants-greenhouse_1303-14066.jpg", alt: "Client 1" },
|
||||||
src: "http://img.b2bpic.net/free-photo/woman-gardner-looking-after-plants-greenhouse_1303-14066.jpg",
|
{ src: "http://img.b2bpic.net/free-photo/vase-with-fresh-summer-flowers-female-hands-white-background_169016-34804.jpg", alt: "Client 2" },
|
||||||
alt: "Client 1",
|
{ src: "http://img.b2bpic.net/free-photo/various-blooming-flowers-vases_23-2147761209.jpg", alt: "Client 3" },
|
||||||
},
|
{ src: "http://img.b2bpic.net/free-photo/anonymous-florist-holding-bunch-flowers_23-2147761023.jpg", alt: "Client 4" },
|
||||||
{
|
{ src: "http://img.b2bpic.net/free-photo/blue-white-lavenders-light-pink-wooden-background_24837-622.jpg", alt: "Client 5" },
|
||||||
src: "http://img.b2bpic.net/free-photo/vase-with-fresh-summer-flowers-female-hands-white-background_169016-34804.jpg",
|
|
||||||
alt: "Client 2",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
src: "http://img.b2bpic.net/free-photo/various-blooming-flowers-vases_23-2147761209.jpg",
|
|
||||||
alt: "Client 3",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
src: "http://img.b2bpic.net/free-photo/anonymous-florist-holding-bunch-flowers_23-2147761023.jpg",
|
|
||||||
alt: "Client 4",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
src: "http://img.b2bpic.net/free-photo/blue-white-lavenders-light-pink-wooden-background_24837-622.jpg",
|
|
||||||
alt: "Client 5",
|
|
||||||
},
|
|
||||||
]}
|
]}
|
||||||
ratingAnimation="blur-reveal"
|
ratingAnimation="blur-reveal"
|
||||||
avatarsAnimation="blur-reveal"
|
avatarsAnimation="blur-reveal"
|
||||||
@@ -202,22 +117,10 @@ export default function LandingPage() {
|
|||||||
title="Get in Touch / Order"
|
title="Get in Touch / Order"
|
||||||
description="We are located at Praça Fernando Lopes Graça 25 B, 2785-625 São Domingos de Rana. Call us at +351 927 577 511. Delivery available!"
|
description="We are located at Praça Fernando Lopes Graça 25 B, 2785-625 São Domingos de Rana. Call us at +351 927 577 511. Delivery available!"
|
||||||
inputs={[
|
inputs={[
|
||||||
{
|
{ name: "name", type: "text", placeholder: "Your Name" },
|
||||||
name: "name",
|
{ name: "email", type: "email", placeholder: "Your Email" },
|
||||||
type: "text",
|
|
||||||
placeholder: "Your Name",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "email",
|
|
||||||
type: "email",
|
|
||||||
placeholder: "Your Email",
|
|
||||||
},
|
|
||||||
]}
|
]}
|
||||||
textarea={{
|
textarea={{ name: "message", placeholder: "Tell us what you're looking for...", rows: 4 }}
|
||||||
name: "message",
|
|
||||||
placeholder: "Tell us what you're looking for...",
|
|
||||||
rows: 4,
|
|
||||||
}}
|
|
||||||
imageSrc="http://img.b2bpic.net/free-photo/full-shot-woman-sitting-floor_23-2149591584.jpg"
|
imageSrc="http://img.b2bpic.net/free-photo/full-shot-woman-sitting-floor_23-2149591584.jpg"
|
||||||
mediaAnimation="slide-up"
|
mediaAnimation="slide-up"
|
||||||
/>
|
/>
|
||||||
|
|||||||
51
src/app/reviews/page.tsx
Normal file
51
src/app/reviews/page.tsx
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
"use client";
|
||||||
|
|
||||||
|
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||||
|
import ReactLenis from "lenis/react";
|
||||||
|
import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered';
|
||||||
|
import TestimonialCardFifteen from '@/components/sections/testimonial/TestimonialCardFifteen';
|
||||||
|
import FooterCard from '@/components/sections/footer/FooterCard';
|
||||||
|
|
||||||
|
export default function ReviewsPage() {
|
||||||
|
return (
|
||||||
|
<ThemeProvider
|
||||||
|
defaultButtonVariant="hover-bubble"
|
||||||
|
defaultTextAnimation="reveal-blur"
|
||||||
|
borderRadius="soft"
|
||||||
|
contentWidth="mediumLarge"
|
||||||
|
sizing="largeSmallSizeLargeTitles"
|
||||||
|
background="blurBottom"
|
||||||
|
cardStyle="gradient-bordered"
|
||||||
|
primaryButtonStyle="flat"
|
||||||
|
secondaryButtonStyle="radial-glow"
|
||||||
|
headingFontWeight="bold"
|
||||||
|
>
|
||||||
|
<ReactLenis root>
|
||||||
|
<NavbarStyleCentered
|
||||||
|
navItems={[
|
||||||
|
{ name: "Home", id: "/" },
|
||||||
|
{ name: "Shop", id: "/#shop" },
|
||||||
|
{ name: "About", id: "/#about" },
|
||||||
|
{ name: "Reviews", id: "/reviews" },
|
||||||
|
{ name: "Contact", id: "/contact" },
|
||||||
|
]}
|
||||||
|
brandName="Florista de Tires"
|
||||||
|
/>
|
||||||
|
<div className="pt-32 pb-20">
|
||||||
|
<TestimonialCardFifteen
|
||||||
|
useInvertedBackground={false}
|
||||||
|
testimonial="Best service! Beautiful flowers and plenty of variety. Very friendly, professional, always ready to help."
|
||||||
|
rating={5}
|
||||||
|
author="Happy Customer"
|
||||||
|
avatars={[
|
||||||
|
{ src: "http://img.b2bpic.net/free-photo/woman-gardner-looking-after-plants-greenhouse_1303-14066.jpg", alt: "Client 1" },
|
||||||
|
]}
|
||||||
|
ratingAnimation="blur-reveal"
|
||||||
|
avatarsAnimation="blur-reveal"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
<FooterCard logoText="Florista de Tires" copyrightText="© 2025 Florista de Tires. All rights reserved." />
|
||||||
|
</ReactLenis>
|
||||||
|
</ThemeProvider>
|
||||||
|
);
|
||||||
|
}
|
||||||
45
src/app/shop/page.tsx
Normal file
45
src/app/shop/page.tsx
Normal file
@@ -0,0 +1,45 @@
|
|||||||
|
"use client";
|
||||||
|
|
||||||
|
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
|
||||||
|
import ReactLenis from "lenis/react";
|
||||||
|
import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered';
|
||||||
|
import ProductCardThree from '@/components/sections/product/ProductCardThree';
|
||||||
|
import FooterCard from '@/components/sections/footer/FooterCard';
|
||||||
|
|
||||||
|
export default function ShopPage() {
|
||||||
|
return (
|
||||||
|
<ThemeProvider defaultButtonVariant="hover-bubble" defaultTextAnimation="reveal-blur" 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">
|
||||||
|
<NavbarStyleCentered
|
||||||
|
navItems={[
|
||||||
|
{ name: "Home", id: "/" },
|
||||||
|
{ name: "Shop", id: "/shop" },
|
||||||
|
{ name: "About", id: "/about" },
|
||||||
|
{ name: "Contact", id: "/contact" },
|
||||||
|
]}
|
||||||
|
brandName="Florista de Tires"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
<div id="shop" data-section="shop" className="pt-32">
|
||||||
|
<ProductCardThree
|
||||||
|
animationType="slide-up"
|
||||||
|
textboxLayout="default"
|
||||||
|
gridVariant="three-columns-all-equal-width"
|
||||||
|
useInvertedBackground={true}
|
||||||
|
products={[
|
||||||
|
{ id: "1", name: "Spring Meadow Bouquet", price: "25€", imageSrc: "http://img.b2bpic.net/free-photo/vase-with-fresh-summer-flowers-female-hands-white-background_169016-34804.jpg" },
|
||||||
|
{ id: "2", name: "Sunset Garden Arrangement", price: "35€", imageSrc: "http://img.b2bpic.net/free-photo/various-blooming-flowers-vases_23-2147761209.jpg" },
|
||||||
|
{ id: "3", name: "Classic White Elegance", price: "30€", imageSrc: "http://img.b2bpic.net/free-photo/anonymous-florist-holding-bunch-flowers_23-2147761023.jpg" },
|
||||||
|
]}
|
||||||
|
title="Our Arrangements"
|
||||||
|
description="Browse our latest creations, crafted daily with seasonal wildflowers."
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
<div id="footer" data-section="footer">
|
||||||
|
<FooterCard logoText="Florista de Tires" />
|
||||||
|
</div>
|
||||||
|
</ReactLenis>
|
||||||
|
</ThemeProvider>
|
||||||
|
);
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user