CMS for E-Commerce /w Microservices (AWS DynamoDB, Lambda, and API Gateway)

Overview:

This e-commerce platform allows users to browse products, manage a shopping cart, and place orders. This e-commerce website built using AWS services provides how serverless microservices can be used to build scalable and efficient applications. By utilizing AWS Lambda, API Gateway, and DynamoDB, I minimized infrastructure, improved scalability, and ensured a smooth user experience.

Screenshots

  1. Product Management:
    • Admins and merchants can add, edit, delete, and view products.(CRUD Operation)
    • Each product includes details such as name, description, price, images, and quantity.
  2. Order Management:
    • Order creation, retrieval, and management by both customers and admins.
  3. User Management:
    • Admins can manage users, including customers and merchants.
    • Role-based access controls are implemented for admins, merchants, and customers.
  4. Admin Dashboard:
    • A dedicated dashboard for admin to manage products, orders and users.
    • Provides a visualized summary of Total Revenue by date, Sales by Merchants, and Orders by Status.
  5. Merchant Dashboard:
    • A dedicated dashboard for merchants to manage their products and track orders.
    • Merchants can see their sales summary, product performance, and recent orders.
  6. Scalability and Resilience:
    • The microservices architecture allows for independent scaling of services based on traffic.
    • Using AWS services ensures high availability and fault tolerance.
  1. AWS Lambda:
    • AWS Lambda serves as the compute layer, where the core business logic for different services (like product management, user management, and order processing) is handled.
    • Each service is triggered through HTTP requests routed via API Gateway, making the platform highly modular and scalable.
  2. API Gateway:
    • Amazon API Gateway is used to route external HTTP requests to appropriate Lambda functions.
    • It provides a secure and scalable way to manage API endpoints, ensuring efficient communication between the users and the back-end services.
  3. AWS DynamoDB:
    • DynamoDB is the core database solution, storing all products, order items, and users.
    • NoSQL allows flexible schema management and quick real-time data access, which is crucial for e-commerce platforms.
    • DynamoDB’s auto-scaling and managed infrastructure make it a perfect fit for handling varying loads in the platform.
  4. Flask (Python):
    • Flask is used for the front-end web server, managing routing, session handling, and integrating with AWS services via APIs.
    • It powers the user interface and interacts with AWS APIs to fetch and display data from the backend.
  5. Bootstrap:
    • The front-end UI is built using Bootstrap for responsive and clean designs, ensuring a seamless user experience across devices.
  1. Frontend:
    • The client-side of the application interacts with the back-end through API Gateway endpoints, where the data flow begins.
  2. Backend:
    • Flask is the core backend that handles routing, session management, and acts as the interface between the user and the AWS API Gateway.
  3. API Gateway:
    • Acts as the central routing service, forwarding requests to the appropriate Lambda functions.
  4. AWS Lambda:
    • Multiple Lambda functions are invoked to perform specific actions, such as handling product, orders, and users. Those Lambda functions are developed with Python.
  5. DynamoDB:
    • Each Lambda function interacts with DynamoDB to either fetch or update data based on the service type.

Category:

, , , ,

Tags:

Links:

Leave a comment