leo-the-nardo / ecommerce-aws-java-spring

POC - Monolithic to Microsservices w/ Strangler Pattern

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

🚧 Currently In Progress 🚧

[MVP] E-Commerce Side Project

This project aims to develop a completely functional, monitorable and production-ready monolithic E-Commerce, avoiding unecessary gourmetized over-engineering complexity in its initial phase as much as possible.

Once the monolithic MVP is operational, the plan is to transition it into a distributed system of microservices using methodologies like the Strangler Pattern.

Objective

  • Create a complete end-to-end E-Commerce system encompassing:
    • Backend
    • Frontend
    • Testing suite
    • Infrastructure as Code
    • CI/CD pipelines
    • Monitoring
    • Comprehensive documentation

Purpose

The goal of this project is to serve as a basis for my personal SaaS, in addition to obtaining deep insights and learning through the pains of the entire development process and its respective migration from a monolithic system to a distributed system.

Chosen Technologies (until now)

  • Java
  • AWS
  • Asaas Payment Gateway
  • Spring
  • Server Sent Events
  • Redis
  • MySQL
  • WebFlux
  • SMTP
  • Thymeleaf
  • Testing:
    • JUnit
    • Mockito
    • Localstack
  • Infrastructure:
    • Terraform
    • Ansible
    • Docker
  • CI/CD:
    • Jenkins
  • Monitoring:
    • Prometheus

About

POC - Monolithic to Microsservices w/ Strangler Pattern


Languages

Language:Java 84.2%Language:HTML 15.8%