@wopee-io/sdk
v3.7.2
Published
## Codebase structure
Readme
Wopee SDK
Codebase structure
The codebase is loosely following ports/adapters (hexagonal) architecture principles, i.e., split inmplementation details and business logic whenever possible.
lib/
├── core/
│ ├── domain/
│ │ └── valueObjects/
│ └── ports/
├── infrastructure/
│ ├── adapters/
│ │ ├── apolloTrackAdapter/
│ │ ├── consoleLogger/
│ │ └── noLogger/
│ └── services/
│ ├── apolloTrackAdapterService/
│ └── loggerService/
└── shared/
├── metadata/
└── utils
└── zodHelperDriven Ports
LoggerPort: A generalized logging interface for various frameworks and packages, supporting uniform logging across the repository.
ImageTrackerPort: A unified interface for image tracking operations, supporting seamless integration with different storage mechanisms.
Adapters
ApolloTrackAdapter: Implements
ImageTrackerPort, providing integration with Wopee API.ConsoleLogger: Implements
LoggerPort, providing simple logging to the console output.NoLogger: Implements
LoggerPort, providing option to completely disable logging.
Services
ApolloTrackAdapterService
Streamlise the creation of ApolloTrackerAdapter.
LoggerService
Streamlise the craetion of adapters implementing LoggerPort.
Shared
utils
ZodHelper
Implementing common wrappers around zod.
