A modern, responsive, and feature-rich full-stack e-commerce platform built using Node.js, Express.js, MySQL, JWT, HTML, CSS, and Vanilla JavaScript.
This project includes:
- User authentication system
- Product browsing & filtering
- Shopping cart & checkout flow
- Wishlist system
- Admin dashboard
- Order management
- Responsive modern UI
- Open source contribution support
π Live Website:
https://e-commerce-git-main-bhuvanshs-projects.vercel.app
- User Signup & Login
- JWT Authentication
- Refresh Token System
- Protected Routes
- Admin Role Support
- Product Listing
- Product Detail Page
- Search & Filtering
- Category Filtering
- Sorting System
- Recently Viewed Products
- Wishlist System
- Cart Drawer
- Full Cart Management
- Checkout Validation
- Order Placement
- Order History
- Address Management
- Shipping Calculation
- Tax Calculation
- Add Products
- Edit Products
- Deletee Products
- Dashboard Overview
- User Management
- Order Monitoring
- Fully Responsive Design
- Modern Product Cards
- Toast Notifications
- Ripple Effects
- Smooth Animations
- Mobile Navigation
- Lazy Loaded Images
- Helmet Security Middleware
- Request Rate Limiting
- Input Validation
- JWT Authentication
- Secure Cart & Checkout Flow
- Backend Total Verification
| Technology | Usage |
|---|---|
| Node.js | Backend Runtime |
| Express.js | API Framework |
| MySQL | Database |
| JWT | Authentication |
| HTML5 | Frontend Structure |
| CSS3 | Styling |
| JavaScript | Frontend Logic |
| Vercel | Frontend Deployment |
E-commerce/
β
βββ .agents/skills/
β βββ accessibility-compliance/
β βββ css/
β βββ modern-javascript-patterns/
β βββ responsive-design/
β βββ semantic-html/
β βββ wcag-audit-patterns/
β
βββ .github/
β βββ ISSUE_TEMPLATE/
β βββ hiero-bot.yml
β
βββ backend/
β βββ config/
β β βββ db.js
β β
β βββ controllers/
β β βββ admin.controller.js
β β βββ authController.js
β β βββ cartController.js
β β βββ chat.controller.js
β β βββ orderController.js
β β βββ pincodeController.js
β β βββ productController.js
β β βββ promo.controller.js
β β βββ recommendationController.js
β β βββ wishlistController.js
β β
β βββ middleware/
| | βββ validators/
β β βββ adminMiddleware.js
β β βββ authMiddleware.js
β β βββ rateLimiter.js
β β βββ rbacMiddleware.js
β β
β βββ models/
β β βββ Order.js
β β βββ Pincode.js
β β βββ Product.js
β β βββ User.js
β β
β βββ routes/
β β βββ adminRoutes.js
β β βββ authRoutes.js
β β βββ cartRoutes.js
β β βββ chatRoutes.js
β β βββ index.js
β β βββ orderRoutes.js
β β βββ pincodeRoutes.js
β β βββ productRoutes.js
β β βββ promoRoutes.js
β β βββ recommendationRoutes.js
β β βββ wishlistRoutes.js
β β
β βββ scripts/
β β βββ seedProducts.js
β β
β βββ services/
β β βββ admin.service.js
β β βββ chat.service.js
β β βββ interactionService.js
β β βββ order.service.js
β β βββ promo.service.js
β β βββ recommendationService.js
β β
β βββ sql/
β β βββ admin_dashboard_schema.sql
β β βββ chat.schema.sql
β β βββ promo_schema.sql
β β
β βββ utils/
β β βββ helpers.js
β β βββ socketManager.js
β β
β βββ .env.example
β βββ docker-compose.yml
β βββ package-lock.json
β βββ package.json
β βββ schema.sql
β βββ server.js
β
βββ frontend/
β βββ assets/
β β βββ data/
β β βββ images/
β β βββ videos/
β β
β βββ components/
β β βββ cart-drawer.html
β β βββ footer.html
β β βββ navbar.html
β β
β βββ scripts/
β β βββ Buy1Get1.js
β β βββ about.js
β β βββ admin.js
β β βββ animations.js
β β βββ auth.js
β β βββ back-to-top.js
β β βββ blog.js
β β βββ cart-drawer.js
β β βββ cart.js
β β βββ chat-widget.js
β β βββ checkout.js
β β βββ compare.js
β β βββ components.js
β β βββ config.js
β β βββ contact.js
β β βββ dashboard-orders.js
β β βββ dashboard-overview.js
β β βββ dashboard-settings.js
β β βββ dashboard-wishlist.js
β β βββ dashboard.js
β β βββ delivery.js
β β βββ early_summer.js
β β βββ help.js
β β βββ hero.js
β β βββ home-init.js
β β βββ mens.js
β β βββ order.js
β β βββ ordersHistory.js
β β βββ pincode.js
β β βββ privacy.js
β β βββ product-actions-home.js
β β βββ product-actions.js
β β βββ product-cards-home.js
β β βββ product-render.js
β β βββ product-reviews.js
β β βββ product-variants.js
β β βββ product.js
β β βββ profile.js
β β βββ recentlyViewed.js
β β βββ recommendations.js
β β βββ related-products.js
β β βββ script.js
β β βββ seasonal.js
β β βββ shop-controls.js
β β βββ shop.js
β β βββ success.js
β β βββ terms.js
β β βββ toast.js
β β βββ tshirt.js
β β βββ ui.js
β β βββ utils.js
β β βββ wishlist.js
β β βββ womens.js
β β
β βββ styles/
β β βββ about.css
β β βββ admin.css
β β βββ animations.css
β β βββ auth.css
β β βββ back-to-top.css
β β βββ base.css
β β βββ blog.css
β β βββ cart.css
β β βββ chat-widget.css
β β βββ checkout.css
β β βββ components.css
β β βββ contact.css
β β βββ dashboard.css
β β βββ delivery.css
β β βββ early_summer.css
β β βββ help.css
β β βββ hero.css
β β βββ layout.css
β β βββ order.css
β β βββ privacy.css
β β βββ product-card.css
β β βββ product.css
β β βββ profile.css
β β βββ seasonal.css
β β βββ shop.css
β β βββ style.css
β β βββ success.css
β β βββ terms.css
β β βββ tshirt.css
β β βββ wishlist.css
β β
β βββ Buy1Get1.html
β βββ about.html
β βββ admin.html
β βββ blog.html
β βββ cart.html
β βββ checkout.html
β βββ compare.html
β βββ contact.html
β βββ dashboard.html
β βββ delivery.html
β βββ early_summer.html
β βββ help.html
β βββ index.html
β βββ mens.html
β βββ order.html
β βββ privacy.html
β βββ product.html
β βββ profile.html
β βββ robots.html
β βββ seasonal.html
β βββ shop.html
β βββ signin.html
β βββ signup.html
β βββ sitemap.xml
β βββ success.html
β βββ terms.html
β βββ tshirt.html
β βββ vercel.html
β βββ wishlist.html
β βββ womens.html
β
βββ .env.example
βββ .gitattributes
βββ .gitignore
βββ AGENTS.md
βββ CHANGELOG.md
βββ CODE_OF_CONDUCT.md
βββ CONTRIBUTING.md
βββ LICENSE
βββ README.md
βββ SECURITY.md
βββ TODO.md
βββ ecommerce.sql
βββ package-lock.json
βββ package.json
βββ skills-lock.json
βββ test.js
Before starting, make sure you have the following installed:
- Node.js (v18 or higher recommended)
- npm
- MySQL Server
- Git
- VS Code (recommended)
Verify installation:
node -v
npm -v
mysql --version
git --versiongit clone https://github.com/AnthropicBots/E-commerce.git
cd E-commercecd backendnpm installWait for all packages to install successfully.
Login to MySQL:
mysql -u root -pEnter your MySQL password when prompted.
Create the database:
CREATE DATABASE ecommerce;Verify database creation:
SHOW DATABASES;You should see:
ecommerce
Inside the backend folder run:
mysql -u root -p ecommerce < schema.sqlThis command creates all required tables.
Create a .env file inside the backend/ folder.
Copy values from .env.example.
Example:
DB_HOST=localhost
DB_USER=root
DB_PASSWORD=your_mysql_password
DB_NAME=ecommerce
JWT_SECRET=your_secret_key
PORT=5000
FRONTEND_URL=http://127.0.0.1:5500If your MySQL root account has a password:
DB_PASSWORD=your_mysql_passwordIf your MySQL root account has no password:
DB_PASSWORD=Run:
npm run devIf the above command is unavailable:
npm startBackend will run at:
http://localhost:5000
A successful startup should show messages similar to:
Database connected successfully
Server running on port 5000
If you see these messages, your backend setup is complete.
Open the project in VS Code.
Navigate to:
frontend/
Using VS Code Live Server:
- Open
index.html - Right Click
- Select Open with Live Server
Frontend will run at:
http://127.0.0.1:5500
Error:
Access denied for user 'root'@'localhost'
Solution:
- Verify MySQL is running
- Check
DB_USER - Check
DB_PASSWORD - Test login manually:
mysql -u root -pError:
Unknown database 'ecommerce'
Solution:
CREATE DATABASE ecommerce;Then import:
mysql -u root -p ecommerce < schema.sqlError:
Cannot find module ...
Solution:
npm installinside the backend folder.
Error:
EADDRINUSE
Solution:
Change:
PORT=5001inside .env.
Please create a GitHub issue and include:
- Operating System
- Node.js version
- npm version
- Screenshot of terminal
- Full error message
- Steps already tried
Maintainers will help you resolve the issue.
This project demonstrates:
- Full-stack web development fundamentals
- REST API development using Node.js & Express
- MySQL database integration and query handling
- JWT-based authentication & authorization
- Frontend UI/UX design and responsive layouts
- DOM manipulation and dynamic rendering
- Cart, checkout, and order management systems
- Admin dashboard development
- Real-world e-commerce application architecture
- API integration between frontend and backend
- Open-source project structuring and collaboration
- Debugging, validation, and error handling
This project is developed under the Anthropic Bots organization.
- Founder & Owner of Anthropic Bots
- Passionate about Full-Stack Development & Software Engineering
- Focused on building scalable real-world applications
- Active maintainer of this E-Commerce project
- Responsible for feature development, backend integration, bug fixes, and open-source improvements
- Contributing towards improving project structure, security, and overall user experience
π‘ This project is actively maintained and improved through open-source collaboration.
Contributions, suggestions, and improvements are always welcome.
This project is licensed under the MIT License and is free to use for learning and educational purposes.
β If you like this project, consider giving it a star on GitHub and supporting the repository!