Welcome to the dart-sdk for dapr. This repository aims to provide and maintain the dart packages required to interact with dapr sidecar.
Dapr is an API to build & maintain, portable and reliable microservices. It allows developers to build microservices that can inteface with a plethora of external services, through a set of standardised APIs. Using Dapr allows developers to focus on the core business logic instead of dealing with the SDKs required to connect with theses external services.
Dapr enables this interfacing by defining a set of standard components namely building blocks each of which handle different core logic that a microservice would require to handle. This is achieved using a sidecar architecture in which the sidecar runs alongside your service or web app and enables interacting with external services through this sidecar.
To learn more about Dapr head over to docs section at https://dapr.io/
The Dart-sdk offers two main packages namely dapr_client and dapr_server which provides api's to interact with a dapr_sidercar.
When using Dapr there are two main use cases.
-
An application interacting with the Dapr sidecar to invoke, publish or retrieve state.
- dapr_client eases this process by providing a unified api to interact with all the building blocks a sidecar offers.
-
An application which can be invoked by external services, which listens to a published message to take corresponding action.
- dapr_server eases this process by providing APIs to write daperised services which confirm to the required specification.
The image below depicts both these use cases.