buckpal-clean-architecture-spring

An example approach for implementating a Clean/Hexagonal Architecture based the book: "Get Your Hands Dirty on Clean Architecture", by Tom Hombergs

Stars
13

Buckpal

An example approach for implementating a Clean/Hexagonal Architecture based the book: "Get Your Hands Dirty on Clean Architecture", by Tom Hombergs

Dependencies

  • java 11
  • spring boot 2.3.0
    • data
    • web
  • lombok
  • flywaydb
  • postgres
  • modelmapper
  • assertj

Todo

  • rich domain
    • unit tests
  • input ports
    • self validator input ports commands
  • output ports
  • use case (implements input ports)
    • unit tests
  • web api adapters (use input ports)
    • integration tests
    • exception handlers
    • spring data pagination & sort
    • spring hateoas
    • swagger
  • persistence adapters (implements output ports)
    • jpa entities
    • repositories
    • integration tests
  • system tests (end to end)
  • redis cache
  • split in multi modules
  • split in microservices
    • spring cloud NETFLIX OSS
      • netflix EUREKA - service discovery
      • netflix ZULL - gateway router and filter
      • netflix FEIGN - declarative web service client
        • netflix HYSTRIX - fallback methods
      • cloud config - centralized configuration
      • cloud security - security configuration
  • docker-compose stack
    • postgres
    • mongo
    • redis
  • ci / cd
Related Projects