A premium, full-stack e-commerce solution built with React, Node.js, Firebase, and Socket.io. This platform features a sophisticated split-order system, integrated digital wallet with cashback, and real-time administration capabilities.
- Dynamic Product Catalog: Browse products with categories and detailed views.
- Hybrid Cart System: Seamlessly switch between Guest and Logged-in states with automatic cart merging.
- Wishlist: Save favorite items for later.
- Smart Checkout: Integrated with Stripe for secure payments and support for Cash on Delivery (COD).
- Digital Wallet: Add funds, withdraw, and track transactions.
- Cashback Logic: Earn 2% cashback automatically on every order.
- Smart Refunds: Automatic wallet refunds on cancellations (98% refund policy).
- Split-Order System: Orders are intelligently split per item for granular status tracking.
- Live Notifications: Real-time updates for order status and wallet balances via Socket.io.
- Coupon System: Redeem discount codes with minimum order value validation.
- Analytics Visualization: Interactive charts for revenue, category distribution, and order status using Recharts.
- Inventory Management: Full CRUD for products with name-based document migration.
- Order Management: Process returns, cancellations, and status updates.
- Export Reports: Generate PDF and Excel reports for sales and inventory.
- Framework: React 19 + Vite
- Styling: Tailwind CSS + Framer Motion
- State: React Context API
- Icons: Lucide React + React Icons
- Runtime: Node.js + Express
- Database: Firebase Firestore
- Auth: JWT (Access & Refresh Tokens)
- Real-time: Socket.io
- Payments: Stripe API
- Images: Cloudinary
git clone <repository-url>
cd ecommerce- Navigate to
ecommerce_backend/. - Install dependencies:
npm install. - Create a
.envfile with:PORT=5000 JWT_SECRET=your_secret STRIPE_SECRET_KEY=your_stripe_key
- Place your Firebase
serviceAccountKey.jsonin theecommerce_backend/root. - Start the server:
npm run dev.
- Navigate to
ecommerce_frontend/. - Install dependencies:
npm install. - Start the dev server:
npm run dev.
ecommerce/
βββ ecommerce_backend/ # Express API & Firebase Logic
β βββ config/ # Firebase & Stripe Init
β βββ controllers/ # Domain-specific logic
β βββ middleware/ # Auth & RBAC
β βββ routes/ # API Endpoints
βββ ecommerce_frontend/ # React SPA
βββ src/pages/ # Admin, User, & Guest Pages
βββ src/context/ # Global state (Cart, Wallet, Wishlist)
βββ src/components/ # Reusable UI Elements
This project is licensed under the MIT License.
Developed by Antigravity