A full-stack, microservices-based e-commerce platform built with Node.js, Express, MongoDB, React.js, Docker, Nginx, and Flask. This project demonstrates a scalable and modular architecture, leveraging multiple technologies to handle various aspects of an e-commerce system like user management, product catalog, order processing, payment handling, and notifications.
- Features
- Architecture
- Tech Stack
- Getting Started
- Installation
- Usage
- API Gateway Configuration
- Contributing
- License
- Microservices Architecture: Each service (User, Product, Order, Payment, Notification) runs independently for better scalability and maintainability.
- API Gateway (Nginx): Manages routing between services and provides a single entry point for the frontend.
- Dockerized Deployment: All services are containerized for easy deployment and environment consistency.
- React.js Frontend: User-friendly interface to interact with backend services.
- MongoDB Database: Efficient data management with optimized schemas and indexing.
The project follows a microservices architecture with the following key components:
- User Service: Handles user registration, login, and profile management.
- Product Service: Manages product details, inventory, and CRUD operations.
- Order Service: Handles order creation, tracking, and management.
- Payment Service: Processes payments and manages payment gateways.
- Notification Service: Sends notifications for order status, payment confirmation, etc.
- API Gateway (Nginx): Routes requests to the appropriate microservice.
- Backend: Node.js, Express, Flask
- Frontend: React.js
- Database: MongoDB
- API Gateway: Nginx
- Containerization: Docker, Docker Compose
- Docker and Docker Compose installed on your machine
- Node.js and npm (for frontend development)
- Python 3 (for backend services using Flask)
-
Clone the Repository
git clone https://github.com/your-username/simple-ecommerce-platform.git cd simple-ecommerce-platform