-
app/
- implementing business logic of app - Domain and Service -
interface/
- implementing external interfaces - gRPC handlers, factory protobuf messages, map database operations into repository -
infrastructure/
- interfaces which common for all apps - DB drivers and other tools -
config/
- .toml configuration files
Domain - object of data
Repository - methods for retrieving domain objects.
Service - fetch Domain objects using Repositories and make operations
api/
- output folder for auto-generated gRPC codefactory/
- factories for convert:- TableRow <-> Domain
- Message -> Domain
- Message <- Domain
grpc-protofiles/
- git-submodule stores all protofiles across apps; It configured in.gitmodules
files under root folder;handler/
- implements gRPC handlersrepository/
- implementsapp/
Repositories. Using database commands frominfrastructure/
tests/
- npm-package for testing gRPC service handlers
-
interface/
implements gRPC handlers which executesapp/
Services -
interface/
implementsapp/
Repositories. Using database commands over tables frominfrastructure/
. -
app/
Services only who work with Domains using Repositories