11 Commits

Author SHA1 Message Date
75bb9acf85 Update src/app/page.tsx 2026-03-28 04:58:08 +00:00
fb9690cca2 Update src/app/page.tsx 2026-03-28 04:57:38 +00:00
9bd1331b7f Update src/app/products/page.tsx 2026-03-28 04:57:05 +00:00
4993581306 Update src/app/page.tsx 2026-03-28 04:57:05 +00:00
49d28b4032 Update src/app/checkout/page.tsx 2026-03-28 04:57:05 +00:00
74f70a148d Update src/app/cart/page.tsx 2026-03-28 04:57:04 +00:00
5a79fe047c Update src/app/styles/variables.css 2026-03-28 04:56:19 +00:00
e9f690f3f1 Add src/app/products/page.tsx 2026-03-28 04:56:19 +00:00
9be2cab580 Update src/app/page.tsx 2026-03-28 04:56:18 +00:00
8c991ffabe Add src/app/checkout/page.tsx 2026-03-28 04:56:18 +00:00
cd981f9463 Add src/app/cart/page.tsx 2026-03-28 04:56:17 +00:00
5 changed files with 238 additions and 199 deletions

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

@@ -0,0 +1,40 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react";
import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered';
import ProductCart from '@/components/ecommerce/cart/ProductCart';
export default function CartPage() {
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"
>
<ReactLenis root>
<div id="nav" data-section="nav">
<NavbarStyleCentered
navItems={[
{ name: "Home", id: "/" },
{ name: "Products", id: "/products" },
{ name: "Cart", id: "/cart" },
{ name: "Checkout", id: "/checkout" }
]}
brandName="E-Store"
/>
</div>
<div className="pt-24 pb-12">
<ProductCart isOpen={true} onClose={() => {}} items={[]} total="₹0" buttons={[{ text: "Proceed to Checkout", href: "/checkout" }]} />
</div>
</ReactLenis>
</ThemeProvider>
);
}

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

@@ -0,0 +1,40 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react";
import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered';
export default function CheckoutPage() {
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"
>
<ReactLenis root>
<div id="nav" data-section="nav">
<NavbarStyleCentered
navItems={[
{ name: "Home", id: "/" },
{ name: "Products", id: "/products" },
{ name: "Cart", id: "/cart" },
{ name: "Checkout", id: "/checkout" }
]}
brandName="E-Store"
/>
</div>
<div className="min-h-screen pt-32 px-6 text-center">
<h1 className="text-4xl font-bold mb-4">Checkout</h1>
<p>Secure payment portal under construction.</p>
</div>
</ReactLenis>
</ThemeProvider>
);
}

View File

@@ -9,6 +9,8 @@ import HeroBillboardCarousel from '@/components/sections/hero/HeroBillboardCarou
import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered'; import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered';
import ProductCardThree from '@/components/sections/product/ProductCardThree'; import ProductCardThree from '@/components/sections/product/ProductCardThree';
import TextSplitAbout from '@/components/sections/about/TextSplitAbout'; import TextSplitAbout from '@/components/sections/about/TextSplitAbout';
import TimelineHorizontalCardStack from '@/components/cardStack/layouts/timelines/TimelineHorizontalCardStack';
import FeatureCardEight from '@/components/sections/feature/FeatureCardEight';
export default function LandingPage() { export default function LandingPage() {
return ( return (
@@ -18,206 +20,117 @@ export default function LandingPage() {
borderRadius="rounded" borderRadius="rounded"
contentWidth="mediumLarge" contentWidth="mediumLarge"
sizing="mediumLargeSizeMediumTitles" sizing="mediumLargeSizeMediumTitles"
background="noiseDiagonalGradient" background="circleGradient"
cardStyle="outline" cardStyle="glass-elevated"
primaryButtonStyle="radial-glow" primaryButtonStyle="gradient"
secondaryButtonStyle="layered" secondaryButtonStyle="glass"
headingFontWeight="medium" headingFontWeight="normal"
> >
<ReactLenis root> <ReactLenis root>
<div id="nav" data-section="nav"> <div id="nav" data-section="nav">
<NavbarStyleCentered <NavbarStyleCentered
navItems={[ navItems={[
{ { name: "Home", id: "/" },
name: "Home", { name: "Products", id: "/products" },
id: "hero", { name: "Cart", id: "/cart" },
}, { name: "Checkout", id: "/checkout" },
{ ]}
name: "Products", brandName="E-Store"
id: "products", />
}, </div>
{
name: "About",
id: "about",
},
{
name: "FAQ",
id: "faq",
},
{
name: "Contact",
id: "contact",
},
]}
brandName="E-Store"
/>
</div>
<div id="hero" data-section="hero"> <div id="hero" data-section="hero">
<HeroBillboardCarousel <HeroBillboardCarousel
background={{ background={{ variant: "sparkles-gradient" }}
variant: "sparkles-gradient", title="Style That Speaks Volumes"
}} description="Discover premium quality products curated for your modern lifestyle. Fast delivery across India."
title="Style That Speaks Volumes" mediaItems={[
description="Discover premium quality products curated for your modern lifestyle. Fast delivery across India." { imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3BYkvOiW4e2ve8KGBTgSVIQr79g/premium-clothing-showcase-hero-banner-fo-1774673703512-e98bd6df.png", imageAlt: "Fashion" },
mediaItems={[ { imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3BYkvOiW4e2ve8KGBTgSVIQr79g/professional-tech-gadgets-display-on-a-c-1774673703226-5b5b7faf.png", imageAlt: "Tech" },
{ ]}
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3BYkvOiW4e2ve8KGBTgSVIQr79g/premium-clothing-showcase-hero-banner-fo-1774673703512-e98bd6df.png", />
imageAlt: "Fashion", </div>
},
{
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3BYkvOiW4e2ve8KGBTgSVIQr79g/professional-tech-gadgets-display-on-a-c-1774673703226-5b5b7faf.png",
imageAlt: "Tech",
},
{
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3BYkvOiW4e2ve8KGBTgSVIQr79g/artisanal-handcrafted-goods-on-a-wooden--1774673701932-56720ca7.png",
imageAlt: "Artisan",
},
{
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3BYkvOiW4e2ve8KGBTgSVIQr79g/modern-lifestyle-accessories-displayed-n-1774673701205-3db5b547.png",
imageAlt: "Accessories",
},
{
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3BYkvOiW4e2ve8KGBTgSVIQr79g/luxury-jewelry-or-small-item-focus-on-a--1774673701273-3a5d2eb9.png",
imageAlt: "Jewelry",
},
{
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3BYkvOiW4e2ve8KGBTgSVIQr79g/dynamic-fitness-clothing-and-gear-active-1774673702505-7b766b92.png",
imageAlt: "Fitness",
},
]}
/>
</div>
<div id="products" data-section="products"> <div id="products" data-section="products">
<ProductCardThree <ProductCardThree
animationType="slide-up" animationType="slide-up"
textboxLayout="default" textboxLayout="default"
gridVariant="three-columns-all-equal-width" gridVariant="three-columns-all-equal-width"
useInvertedBackground={false} useInvertedBackground={false}
products={[ products={[
{ { id: "1", name: "Premium Jacket", price: "₹2,999", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3BYkvOiW4e2ve8KGBTgSVIQr79g/high-quality-fashion-jacket-white-backgr-1774673701444-4d77b32f.png" },
id: "1", { id: "2", name: "Wireless Audio", price: "₹4,599", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3BYkvOiW4e2ve8KGBTgSVIQr79g/modern-wireless-headphones-clean-design--1774673701251-3b3d5bf6.png" },
name: "Premium Jacket", { id: "3", name: "Leather Handbag", price: "₹1,899", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3BYkvOiW4e2ve8KGBTgSVIQr79g/handcrafted-leather-bag-high-quality-mat-1774673701846-dcc8cc5a.png" },
price: "₹2,999", ]}
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3BYkvOiW4e2ve8KGBTgSVIQr79g/high-quality-fashion-jacket-white-backgr-1774673701444-4d77b32f.png", title="Trending Now"
}, description="Our most popular picks of the season."
{ />
id: "2", </div>
name: "Wireless Audio",
price: "₹4,599",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3BYkvOiW4e2ve8KGBTgSVIQr79g/modern-wireless-headphones-clean-design--1774673701251-3b3d5bf6.png",
},
{
id: "3",
name: "Leather Handbag",
price: "₹1,899",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3BYkvOiW4e2ve8KGBTgSVIQr79g/handcrafted-leather-bag-high-quality-mat-1774673701846-dcc8cc5a.png",
},
]}
title="Trending Now"
description="Our most popular picks of the season."
/>
</div>
<div id="about" data-section="about"> <div id="tools" data-section="tools">
<TextSplitAbout <FeatureCardEight
useInvertedBackground={false} title="E-commerce Toolset"
title="Why Choose Us?" description="Free and paid tools to streamline operations."
description={[ textboxLayout="default"
"At E-Store, we prioritize quality, authenticity, and customer satisfaction. We connect artisans and brands directly to your doorstep with minimal friction and maximum reliability.", useInvertedBackground={false}
"Whether you are looking for the latest in fashion or essential daily tech, our platform ensures a smooth shopping experience tailored for India.", features={[
]} { id: 1, title: "Marketing Automation", description: "Mailchimp (Free tier available) for email campaigns.", imageSrc: "https://images.unsplash.com/photo-1552664730-d307ca884978?q=80&w=200&h=200" },
/> { id: 2, title: "Advanced Analytics", description: "Google Analytics & Shopify Insights for data-driven decisions.", imageSrc: "https://images.unsplash.com/photo-1551288049-bebda4e38f71?q=80&w=200&h=200" }
</div> ]}
/>
</div>
<div id="faq" data-section="faq"> <div id="strategy" data-section="strategy">
<FaqBase <TimelineHorizontalCardStack
textboxLayout="default" title="Business Growth Roadmap"
useInvertedBackground={false} description="Step-by-step plan for scaling revenue and profit."
faqs={[ textboxLayout="default"
{ >
id: "f1", <div />
title: "What payment methods do you accept?", </TimelineHorizontalCardStack>
content: "We accept UPI, Credit/Debit cards, and all major digital wallets.", </div>
},
{
id: "f2",
title: "How long does shipping take?",
content: "Orders are typically delivered within 3-7 business days across India.",
},
{
id: "f3",
title: "Do you offer returns?",
content: "Yes, we have a 7-day hassle-free return policy on most items.",
},
]}
title="Common Questions"
description="Everything you need to know about shopping with us."
faqsAnimation="slide-up"
/>
</div>
<div id="contact" data-section="contact"> <div id="about" data-section="about">
<ContactText <TextSplitAbout
useInvertedBackground={false} useInvertedBackground={false}
background={{ title="Why Choose Us?"
variant: "sparkles-gradient", description={["At E-Store, we prioritize quality, authenticity, and customer satisfaction.", "Our platform ensures a smooth shopping experience tailored for India."]}
}} />
text="Ready to get started? Reach out to our support team for any queries." </div>
buttons={[
{
text: "Contact Support",
href: "mailto:support@estore.com",
},
]}
/>
</div>
<div id="footer" data-section="footer"> <div id="faq" data-section="faq">
<FooterLogoEmphasis <FaqBase
columns={[ textboxLayout="default"
{ useInvertedBackground={false}
items: [ faqs={[
{ { id: "f1", title: "What payment methods?", content: "UPI, Cards, Wallets." },
label: "Shop", { id: "f2", title: "Shipping?", content: "3-7 business days." },
href: "#products", ]}
}, title="Common Questions"
{ description="Everything you need to know about shopping with us."
label: "About", faqsAnimation="slide-up"
href: "#about", />
}, </div>
],
}, <div id="contact" data-section="contact">
{ <ContactText
items: [ useInvertedBackground={false}
{ background={{ variant: "sparkles-gradient" }}
label: "Support", text="Need consulting on your monetization strategy?"
href: "#faq", buttons={[{ text: "Reach Out", href: "mailto:support@estore.com" }]}
}, />
{ </div>
label: "Contact",
href: "#contact", <div id="footer" data-section="footer">
}, <FooterLogoEmphasis
], columns={[
}, { items: [{ label: "Shop", href: "#products" }, { label: "Tools", href: "#tools" }] },
{ { items: [{ label: "Strategy", href: "#strategy" }, { label: "Contact", href: "#contact" }] },
items: [ ]}
{ logoText="E-Store"
label: "Privacy Policy", />
href: "#", </div>
},
{
label: "Terms of Service",
href: "#",
},
],
},
]}
logoText="E-Store"
/>
</div>
</ReactLenis> </ReactLenis>
</ThemeProvider> </ThemeProvider>
); );
} }

46
src/app/products/page.tsx Normal file
View File

@@ -0,0 +1,46 @@
"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';
export default function ProductListingPage() {
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"
>
<ReactLenis root>
<div id="nav" data-section="nav">
<NavbarStyleCentered
navItems={[
{ name: "Home", id: "/" },
{ name: "Products", id: "/products" },
{ name: "Cart", id: "/cart" },
{ name: "Checkout", id: "/checkout" }
]}
brandName="E-Store"
/>
</div>
<ProductCardThree
animationType="slide-up"
textboxLayout="default"
gridVariant="four-items-2x2-equal-grid"
title="All Products"
description="Browse our full collection."
useInvertedBackground={false}
products={[]}
/>
</ReactLenis>
</ThemeProvider>
);
}

View File

@@ -10,15 +10,15 @@
--accent: #ffffff; --accent: #ffffff;
--background-accent: #ffffff; */ --background-accent: #ffffff; */
--background: #ffffff; --background: #000000;
--card: #f9f9f9; --card: #0c0c0c;
--foreground: #120a00e6; --foreground: #ffffff;
--primary-cta: #E34400; --primary-cta: #106EFB;
--primary-cta-text: #ffffff; --primary-cta-text: #ffffff;
--secondary-cta: #f9f9f9; --secondary-cta: #000000;
--secondary-cta-text: #120a00e6; --secondary-cta-text: #120a00e6;
--accent: #e2e2e2; --accent: #535353;
--background-accent: #E34400; --background-accent: #106EFB;
/* text sizing - set by ThemeProvider */ /* text sizing - set by ThemeProvider */
/* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem); /* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem);