Skip to content

Latest commit

Β 

History

45 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

EduCart – Full-Stack E-Commerce Platform

EduCart Banner

Premium Banner

πŸŽ“ Production-oriented full-stack e-commerce platform built with React.js, Node.js, Express, and MongoDB featuring scalable backend architecture, JWT authentication, AI-powered chatbot support, and comprehensive admin management system.


πŸš€ Overview

EduCart is a modern e-commerce platform designed for students and online shoppers with a focus on scalability, modular backend architecture, responsive UI, and production-ready workflows.

The platform includes secure authentication, intelligent product search, order management, AI chatbot assistance, SEO optimization, and an admin dashboard for managing products, users, and orders.

🌐 Live Demo


πŸ“Έ Screenshots

🏠 Homepage

The homepage features a professional, modern design with animated elements and featured products.

EduCart Homepage

πŸ›οΈ Product Catalog

Browse through our extensive product collection with filtering and detailed product information.

Product Page

πŸ›’ Shopping Cart & Checkout

Seamless shopping experience with cart management and secure checkout process.

Checkout Page

πŸ‘¨β€πŸ’Ό Admin Dashboard

Complete management system for products, users, orders, and analytics. Monitor sales and inventory in real-time.

Admin Dashboard

πŸ€– AI Chatbot

Intelligent assistant providing product recommendations, order tracking, and 24/7 customer support.

AI Chatbot


✨ Features

πŸ›’ E-Commerce System

  • Product catalogue and category filtering
  • Smart product search and recommendations
  • Cart and checkout workflows
  • Wishlist functionality
  • Order tracking and purchase history
  • Student-focused shopping experience

πŸ” Authentication & Security

  • JWT-based authentication
  • Protected routes and role-based access
  • Password hashing using bcryptjs
  • Secure API workflows
  • Input validation and error handling

πŸ€– AI Chatbot

  • NLP-powered customer support chatbot
  • Product recommendation system
  • Natural language product queries
  • Order tracking assistance
  • FAQ and support automation

πŸ“Š Admin Dashboard

  • Product management
  • User and order management
  • Sales analytics overview
  • Inventory workflows
  • SEO metadata management

πŸ” SEO Optimization

  • Dynamic SEO metadata generation
  • Schema.org structured data
  • Open Graph and Twitter Cards
  • XML sitemap generation
  • Robots.txt optimization

πŸ—οΈ Engineering Highlights

  • Modular frontend/backend separation
  • REST API-driven architecture
  • JWT-based authentication workflows
  • Optimized database operations
  • SEO-focused rendering system
  • Scalable project organization

πŸ› οΈ Tech Stack

Frontend

  • React.js - UI framework
  • Vite - Build tool & dev server
  • Tailwind CSS - Styling
  • React Helmet - SEO management

Backend

  • Node.js - Runtime
  • Express.js - Web framework
  • MongoDB - Database
  • Mongoose - ODM

Authentication & Security

  • JWT - Token-based auth
  • bcryptjs - Password hashing

Tools & Services

  • Cloudinary - Image storage
  • Nodemailer - Email service
  • Git & GitHub - Version control
  • Postman - API testing

Deployment

  • Vercel - Frontend hosting
  • Render - Backend hosting
  • MongoDB Atlas - Database hosting

πŸ›οΈ Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚     React Frontend (Vite)           β”‚
β”‚  - Components                       β”‚
β”‚  - State Management                 β”‚
β”‚  - UI/UX                            β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
               β”‚
               β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚     REST API Layer                  β”‚
β”‚  - HTTP Endpoints                   β”‚
β”‚  - Request/Response                 β”‚
β”‚  - CORS Policy                      β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
               β”‚
               β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚   Express Backend                   β”‚
β”‚  - Controllers                      β”‚
β”‚  - Middleware                       β”‚
β”‚  - Business Logic                   β”‚
β”‚  - JWT Authentication               β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
               β”‚
               β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚   MongoDB Database                  β”‚
β”‚  - Collections                      β”‚
β”‚  - Indexes                          β”‚
β”‚  - Aggregations                     β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

πŸƒ Quick Start

Prerequisites

  • Node.js (v14+)
  • npm or yarn
  • MongoDB Atlas account
  • Cloudinary account (for image storage)

Clone Repository

git clone https://github.com/syedasjadabbas/EduCart.git
cd EduCart

Backend Setup

cd backend
npm install

Create .env file:

MONGO_URI=your_mongodb_uri
JWT_SECRET=your_secret_key
CLOUDINARY_NAME=your_cloudinary_name
CLOUDINARY_KEY=your_cloudinary_key
CLOUDINARY_SECRET=your_cloudinary_secret
SMTP_USER=your_email
SMTP_PASS=your_password
PORT=5000

Start server:

npm start

Frontend Setup

cd frontend
npm install
npm run dev

Visit: http://localhost:5173


πŸ“¦ Project Structure

EduCart/
β”œβ”€β”€ frontend/                    # React + Vite
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ components/         # Reusable components
β”‚   β”‚   β”œβ”€β”€ pages/              # Page components
β”‚   β”‚   β”œβ”€β”€ context/            # State management
β”‚   β”‚   β”œβ”€β”€ utils/              # Helper functions
β”‚   β”‚   └── assets/             # Images & icons
β”‚   β”œβ”€β”€ package.json
β”‚   └── vite.config.js
β”‚
β”œβ”€β”€ backend/                     # Express + Node.js
β”‚   β”œβ”€β”€ config/                 # Configuration
β”‚   β”œβ”€β”€ controllers/            # Request handlers
β”‚   β”œβ”€β”€ models/                 # MongoDB schemas
β”‚   β”œβ”€β”€ routes/                 # API endpoints
β”‚   β”œβ”€β”€ middleware/             # Custom middleware
β”‚   β”œβ”€β”€ utils/                  # Utilities
β”‚   β”œβ”€β”€ uploads/                # Uploaded files
β”‚   β”œβ”€β”€ server.js               # Entry point
β”‚   └── package.json
β”‚
β”œβ”€β”€ seo-files/                  # SEO Management
β”‚   β”œβ”€β”€ generators/             # SEO generation
β”‚   β”œβ”€β”€ markup/                 # Schema.org markup
β”‚   β”œβ”€β”€ utilities/              # Utilities
β”‚   β”œβ”€β”€ robots.txt              # Robot directives
β”‚   └── index.js                # Entry point
β”‚
β”œβ”€β”€ database/                   # Database Management
β”‚   β”œβ”€β”€ config/                 # DB config
β”‚   β”œβ”€β”€ seeders/                # Data seeders
β”‚   β”œβ”€β”€ migrations/             # DB migrations
β”‚   └── samples/                # Sample data
β”‚
β”œβ”€β”€ screenshots/                # Application Screenshots
β”‚   β”œβ”€β”€ banner.png
β”‚   β”œβ”€β”€ homepage.png
β”‚   β”œβ”€β”€ product-page.png
β”‚   β”œβ”€β”€ checkout.png
β”‚   β”œβ”€β”€ dashboard.png
β”‚   └── chatbot.png
β”‚
└── README.md                   # Documentation

🎨 Components

Banner Component

The homepage features a professional, animated banner showcasing:

  • Gradient animated background
  • EduCart branding
  • Tech stack display
  • Interactive mockups (Admin Dashboard, Products, Architecture, Cart)
  • Call-to-action button

Located at: frontend/src/components/Banner/Banner.jsx


πŸš€ Deployment

Frontend (Vercel)

  1. Push code to GitHub
  2. Connect repo to Vercel
  3. Deploy automatically

Backend (Render)

  1. Connect GitHub repo to Render
  2. Set environment variables
  3. Deploy on push

Database (MongoDB Atlas)

  1. Create M0 cluster
  2. Create database user
  3. Get connection string
  4. Update backend .env

πŸ“š Documentation


πŸ”„ Environment Variables

# Backend
MONGO_URI=mongodb+srv://user:pass@cluster.mongodb.net/educart
JWT_SECRET=your_secret_key
PORT=5000

# Cloudinary
CLOUDINARY_NAME=your_name
CLOUDINARY_KEY=your_key
CLOUDINARY_SECRET=your_secret

# Email
SMTP_USER=your_email@gmail.com
SMTP_PASS=your_app_password

# Frontend
VITE_API_URL=http://localhost:5000/api

πŸ‘¨β€πŸ’» Author

SYED ASJAD ABBAS


πŸ™ Acknowledgments

  • React & Vite communities
  • MongoDB documentation
  • Express.js guides
  • Open source contributors

πŸ“Š Stats

  • Language: JavaScript (98%)
  • Total Commits: Active development
  • Last Updated: June 2026
  • Status: βœ… Production Ready

Made with ❀️ by Syed Asjad Abbas
⭐ Star us on GitHub

About

Production-oriented full-stack e-commerce platform built with React.js, Express, MongoDB, JWT authentication, and AI-powered chatbot workflows.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages