It provides a set of basic patterns used in microservices or backend services. Also the module implemenets a reasonably thin abstraction layer over most fundamental functions across all languages supported by the toolkit to facilitate symmetric implementation.
The Config module contains configuration component definitions that can be used to build applications and services.
It contains dynamic and static objects and data handling components.
The rpc module provides the synchronous communication using local calls or the HTTP(S) protocol. It contains both server and client side implementations.
The Logic module contains standard component definitions to handle complex business transactions.
The Observability module contains observability component definitions that can be used to build applications and services.
It defines a portable component model interfaces and provides utility classes to handle component lifecycle.
Provides an inversion-of-control (IoC) container used to facilitate the development of services and applications composed of loosely coupled components.
The persistence components come in two kinds. The first kind is a basic persistence that can work with any object types and provides only minimal set of operations. The second kind is called “identifieable” persistence and works with “identifable” data objects, i.e. objects that have unique ID field. The identifiable persistence provides a full set or CRUD operations that covers most common cases.
The rpc module provides the synchronous communication compoents. It contains both server and client side implementations.
This module is used to organize synchronous data exchange using calls through the gRPC protocol. It has implementations of both, the server and client parts.
A set of interfaces and classes for working with message queues, as well as an in-memory message queue implementation.
Provides syntax and lexical analyzers, and an expression calculator optimized for repeated calculations.
Components for supporting work with the AWS cloud platform.
Contains packages used to create containers and services that do operations via the Azure Function protocol.
Contains a DataDog logger and performance counters components.
Contains packages used to create Elasticsearch components, including logging components with data storage on the Elasticsearch server.
Contains packages used to create containers and services that do operations via the Google Function protocol.
A set of components for messaging using the Kafka protocol.
MemcachedLock and MemcachedCache for working with locks and cache on the Memcached server.
A set of components used to implement MongoDB persistence.
A set of components for messaging using the Mqtt protocol.
Contains components used to implement MySQL persistence.
A set of components for working with message queues via a NATS server https://nats.io/.
A set of components used to implement PostgreSQL persistence.
Components for working with meters in the Prometheus service. The PrometheusCounters and PrometheusMetricsController components allow you to work both, in client mode through PushGateway and as a service.
The RabbitMQ module contains a set of components for working with the message queue in RabbitMQ through the AMQP protocol.
Contains packages for working with Redis databses of type key-value.
A set of components to implement SQLite persistence.
A set of components to implement SQLServer persistence.
Provides a Swagger UI that can be added into microservices and is seamlessly integrated with existing REST and Commandable HTTP.