Monorepo
This monorepo is generated by nx. Normally, nx is used to work with javascript/typescript projects. However there's also community support to get nx work with java spring boot
Folder structure
+-- apps # Most of the code lives in the `apps` folder
+-- libs # Contains configuration and shared libs
+-- tools # Scripts or generators for nx
All codes for microservices and api gateway are placed under apps. libs contains share BOM file for all java spring services, shared logic (i.e custom errors, error handling,...) and constants.