A full-featured RESTful E-Commerce API built with Express.js, MongoDB, and Redis, powering the ExpressoCart storefront.
Authentication — JWT access/refresh tokens, Google OAuth, email OTP verification, password reset
Role-Based Access — Customer, Seller, Admin with middleware guards
Product Management — CRUD, search, filtering, pagination, category support
Shopping Cart — Guest & authenticated carts, coupon support, cart merge on login
Order System — Place orders, track status, cancel with atomic stock rollback
Payments — Stripe integration with webhook verification
Reviews — Star ratings with automatic product average calculation
Admin Panel — Dashboard stats, user/order/coupon/seller management
Seller System — Register as seller, admin approval, product management
AI Chatbot — Intelligent assistant for product search and order tracking using Gemini API
Security — Helmet, CORS, rate limiting (Redis-backed), input validation (Joi), NoSQL injection protection, HTTPS enforcement
Structured Logging — Pino with pretty-print in dev, JSON in production
Health Check — GET /health with MongoDB + Redis status monitoring
Testing — 36 integration tests with Vitest + Supertest