Scalable event-driven eCommerce platform using microservices architecture. Features include Real-Time Chat, AI Agent (Ada) Integration, Semantic Product Search, User Management, Order Wishlist, Order Reviews and Paystack, Flutterwave & Stripe-powered payments. Adopted a Domain Driven Design approach to promote component reusability & guarantee bounded context and low-latency communications between respective microservices as clear domain boundaries eliminate the potential for latency gridlock performance issues that can result from redundant or circular service calls. Optimized for observability with Prometheus, Grafana and Kibana; orchestrated via Kubernetes and deployed to AWS EKS.
Designed and developed to be a rapid deployment eCommerce marketplace platform of its own kind for administrator merchants and their approved affiliates to proffer products/services to target customers with extensible core functionality features.
β¦Ώ NodeJS 20+
β¦Ώ β₯ 16GB RAM
β¦Ώ Hard Drive: β₯ 5GB of available storage
β¦Ώ Docker Desktop (for local container deployment)
β¦Ώ Amazon Web Services
** Private Repositories (Access available upon request) π
- API Gateway Microservice
- Notification Microservice
- Authentication Microservice
- Users Microservice
- ProductService Microservice
- OrderInvoice Microservice
- Reviews Microservice
- Chat Microservice
- ClientUI Microservice
- Object Oriented::Server, Route, Controller methods
- JWT Authenticated Client<->API Gateway connection via HTTP
- Secure API Gateway<->*Microservice(s) connection via HTTP & Socket.IO (WebSockets)
- AMQP (RabbitMQ) Message Broker
- Helmet.js - HTTP Header Security
- HPP.js - Parameter Pollution Prevention
- XSS(Cross Site Scripting) Sanitization
- Elasticsearch & Kibana - Logs Monitoring
- Redis Database for In-Memory Datastore
- Nodemailer SMTP Transport
- Extensible EJS Email Templates
- AMQP (RabbitMQ) Message Broker
- Email Notification Event Message Queue Consumers()
- Elasticsearch & Kibana - Logs Monitoring
// API Gateway Health
fetch('http:localhost:6900/api-gateway-health');
// API Gateway Info
fetch('http:localhost:6900/api-gateway-info');
// Notifications Microservice Health
fetch('http:localhost:6901/notifications-health');