Skip to content

e2rabi/IShop

Repository files navigation

Ishop :

A simple e-commerce app to learn advanced topics in microservices distributed architecture.

ishop

Authorization module :

A microservice provides user management using spring security.
This Application show how to secure a real-world application.

  • Clean code
  • JWT authentication filter
  • Password Security
  • Database Authentication
  • User Roles and Authorities
  • Logging user actions ,login success,failure ...
  • User Lockout using Spring security events
  • Two Factor Authentication using Google Authenticator
  • CSRF and CORS protection in spring security
  • Automatically Unlocking Accounts After Period of Time
  • Unit and integration test using JUnit 5

Product Management module :

A microservice provides product management using spring boot.

  • Search product,queries,suggestion using elasticSearch
  • Manage product categories,merchants using postgresSql
  • Expose service through REST and Grpc API's
  • Unit test using groovy and spock framework

IShop lifecycle module :

  • A springBoot application use liquibase to versioning and execute database creation and initialization scripts

Infrastructure module :

A folder contains the deployment files for all microservices using :

  • K8s deployments,services,ingress
  • Liveness and Readiness probes using Springboot actuator health api
  • Docker compose
  • Helm charts

    BCH compliance CircleCI