Dart SDK for Dapr.

Overview

melos codecov E2E & unit tests

Dapr dart sdk

Welcome to the dart-sdk for dapr. This repository aims to provide and maintain the dart packages required to interact with dapr sidecar.

What is Dapr?

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/

What does this SDK offer?

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.

  1. 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.
  2. 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.

Comments
  • Daprdocs - Initiate Daprdocs for dart-sdk

    Daprdocs - Initiate Daprdocs for dart-sdk

    Description

    Initiate Daprdocs for dart-sdk, in order to allow dapr.io site to render docs related to dart-sdk.

    Checklist

    Please make sure you've completed the relevant tasks for this PR, out of the following list:

    • [x] Code compiles correctly
    • [ ] Created/updated tests
    • [x] Extended the documentation
    opened by Abhilash-Chandran 0
  • Pubsub route matching and routing messages

    Pubsub route matching and routing messages

    In its current form the pub module is dapr_server supports only simple routing based on the route parameter.

    However, there is feature to perform route matchin introduced in v1.5 of Dapr.

    This needs to be incorporated in to the current api.

    Current documentation of this feature is available here.

    https://docs.dapr.io/developing-applications/building-blocks/pubsub/howto-route-messages/

    enhancement dapr_server pubsub 
    opened by Abhilash-Chandran 0
  • Multiple subscribers for same topic, possible?

    Multiple subscribers for same topic, possible?

    In the current form both go-sdk and js-sdk allows registering multiple subscriber callbacks for the same topic, when the communication protocol is http, meanig the server is an http server.

    However in grpc server since the map of subscribing callback is built using only the pubsub name and topic name, only one subscriber callback is mapped to the combination of pubsubname and topic name.

    This means a service can register only one subscriber for a topic in the grpc format and multiple subscriber in the http format.

    This needs to be verified which is the correct approach.

    help wanted question dapr_server 
    opened by Abhilash-Chandran 0
  • Subscription is passed the cloud event data in the form for string.

    Subscription is passed the cloud event data in the form for string.

    In the current form subscribe method under HttpServerPubsub passes the cloud event data to the callback as a string.

    This could be enhanced by passing the decoded cloud event to the callback.

    Decision needs to be made whether this should be decoded into a CloudEvent object before passing it to the callback.

    This needs to be done only if the rawEvents argument is set to false.

    bug dapr_server pubsub 
    opened by Abhilash-Chandran 0
  • Define Exception base/implementation classes

    Define Exception base/implementation classes

    In order to clearly pass on the information from the API to the user, it is important to define the known Exceptions and Errors. This needs to be defined as a set of abstract and concrete classes in order to be used across the API and tested.

    TODO:

    • [ ] Define a base Dapr exception class
    • [ ] Derive a base Dapr HTTP and GRPC exception class for client implementations.

    Note: The server api is not planned as of now. In future in might evolve into a separate package within this project if necessary.

    enhancement good first issue dapr_client 
    opened by Abhilash-Chandran 0
Owner
Abhilash Chandran
I am fond of frontend development, especially using framework like Flutter. Former Java developer, Flutter enthusiast with intermediate AI expertise.
Abhilash Chandran
Unofficial Dart SDK for Decentralized Social / DeSo.org

DeSo Dart SDK Unofficial Dart SDK for Decentralized Social / DeSo.org Report Bug · Request Feature Table of Contents About the Project Built With Gett

Deverse 8 Sep 16, 2022
Stream Feed official Flutter SDK. Build your own feed experience using Dart and Flutter.

Official Flutter packages for Stream Activity Feeds The official Dart client for Stream Activity Feeds, a service for building activity feed applicati

Stream 67 Sep 26, 2022
The Dart SDK, including the VM, dart2js, core libraries, and more.

Dart A client-optimized language for fast apps on any platform Dart is: Optimized for UI: Develop with a programming language specialized around the n

Dart 8.7k Jan 2, 2023
Pensil Community official Flutter SDK. Build your own community experience using Dart and Flutter.

Official flutter package for Pensil The official Dart client for Pensil communities, a service for building communites applications. This library can

Pensil Inc 6 Oct 6, 2022
Task List application developed in Dart language with SDK Flutter for Android, iOS and Web

Task List application developed in Dart language with SDK (Software Development Kit) Flutter for Android, iOS and Web.

João Bruno 2 Jun 2, 2022
A Flutter plugin for the Google Mobile Ads SDK

A Flutter plugin for the Google Mobile Ads SDK

Google Ads 251 Jan 2, 2023
P2P payment solution using Stream's Flutter SDK and Rapyd's Wallet API

Peer-to-peer payment integration to a messaging app using Flutter ?? This project shows how to integrate a peer-to-peer payment solution to your Strea

Souvik Biswas 15 Dec 8, 2022
Official plugin for using Thepeer SDK with flutter https://thepeer.co

Flutter Thepeer This package makes it easy to use the Thepeer in a flutter project. ?? Screen Shots ?? How to Use plugin ThePeer Send Launch ThepeerSe

The Peer 23 Dec 27, 2022
Hybrid App build on flutter SDK able to run on Android, IOS, web, desktop

Codeforces Visualizer APP Ready to use Flutter Application. Uses codeforces API. Useful for codeforces programmers. ScreenShots Single User Page Compa

vikas yadav 13 Dec 31, 2022
A simple chat app UI using flutter SDK project.

Chatty App A simple chat app UI using flutter SDK project. Screenshot Getting Started This project is a starting point for a Flutter application. A fe

Tengku Belmiro 5 Jul 15, 2022
A Flutter plugin that supports Pangle SDK on Android and iOS.

Thanks for non-commercial open source development authorization by JetBrains. 穿山甲 Flutter SDK `pangle_flutter`是一款集成了字节跳动穿山甲 Android 和 iOS SDK的 Flutter

null 121 Dec 2, 2022
Flutter SDK for Stripe.

Flutter Stripe The Stripe Flutter SDK allows you to build delightful payment experiences in your native Android and iOS apps using Flutter. We provide

null 633 Jan 7, 2023
Cross platform application for iOS and Android using Google's SDK Flutter.

scout Cross platform application for iOS and Android using Google's SDK Flutter. Launch screen for the application. The menu for selecting cookies. Cu

null 0 Nov 9, 2021
Official Flutter SDK for Khalti Payment systems

Khalti Payment Gateway for Flutter Use Khalti Payment Gateway solution in your app or website to simplify payment for your customers. You do not need

Khalti 16 Oct 13, 2022
Official sdk for vchat

V_Chat_SDK Micro service Check Our Full documention VCHAT DOCS Quick Review Android IOS Don't forget to see the example attached to github here V_CHAT

Hatem Ragab 42 Dec 17, 2022
This project is the HERE SDK reference application for Flutter

HERE SDK Reference Application for Flutter The reference application for the HERE SDK for Flutter (Navigate Edition) shows how a complex and release-r

HERE Technologies 32 Dec 15, 2022
A Social App Built Using FLutter SDK.

Hi ?? , I'm Faheem ??‍?? A Social App Built Using FLutter SDK. The main objective of this application is to provide a single platform for the Students

Faheem Ahmad 26 Nov 10, 2022
Flutter Video Conferencing SDK & Sample App

100ms Flutter SDK ?? Here you will find everything you need to build experiences with video using 100ms iOS/Android SDK. Dive into our SDKs, quick sta

100ms 79 Dec 22, 2022
Real-world movie database mobile application with the Flutter SDK and DDD clean architecture.

Moving Pictures Moving Pictures is a mobile application built with the Flutter SDK for Android and iOS. It’s an application that gets the information

Nifemi 57 Jan 7, 2023