Co-authored-by: Marc Duiker <marcduiker@users.noreply.github.com> Signed-off-by: salaboy <Salaboy@gmail.com> |
||
|---|---|---|
| .devcontainer | ||
| .github | ||
| actors | ||
| bindings | ||
| configuration | ||
| conversation | ||
| cryptography | ||
| jobs | ||
| pub_sub | ||
| resiliency | ||
| secrets_management | ||
| service_invocation | ||
| state_management | ||
| tutorials | ||
| workflows | ||
| .gitattributes | ||
| .gitignore | ||
| CODEOWNERS | ||
| CONTRIBUTING.md | ||
| LICENSE | ||
| README.md | ||
| docker.mk | ||
| makefile | ||
| samples-diagrams.pptx | ||
| validate.mk | ||
README.md
Dapr Quickstarts and Tutorials
If you are new to Dapr and haven't done so already, it is recommended you go through the Dapr Getting Started instructions.
Quickstarts
Pick a building block API (for example, PubSub, state management, etc) and rapidly try it out in your favorite language SDK (recommended), or via HTTP. Visit the Dapr Docs Quickstarts Guide for a comprehensive walkthrough of each example.
| Dapr Quickstart | Description |
|---|---|
| Publish and Subscribe | Asynchronous communication between two services using messaging |
| Service Invocation | Synchronous communication between two services using HTTP |
| State Management | Store a service's data as key/value pairs in supported state stores |
| Bindings | Work with external systems using input bindings to respond to events and output bindings to call operations |
| Secrets Management | Securely fetch secrets |
| Actors | Create stateful, long running objects with identity |
| Configuration | Get configuration items as key/value pairs or subscribe to changes whenever a configuration item changes |
| Cryptography | Perform cryptographic operations without exposing keys to your application |
| Resiliency | Define and apply fault-tolerant policies (retries/back-offs, timeouts and circuit breakers) to your Dapr API requests |
| Workflow | Dapr Workflow enables you to create long running, fault-tolerant, stateful applications |
| Jobs | Dapr Jobs enable you to manage and schedule tasks |
Tutorials
Go deeper into a topic or scenario, oftentimes using building block APIs together to solve problems (for example, build a distributed calculator, build and deploy an app to Kubernetes).
| Tutorials | Description |
|---|---|
| Hello-world | Demonstrates how to run Dapr locally. Highlights service invocation and state management. |
| Hello-kubernetes | Demonstrates how to run Dapr in Kubernetes. Highlights service invocation and state management. |
| Distributed-calculator | Demonstrates a distributed calculator application that uses Dapr services to power a React web app. Highlights polyglot (multi-language) programming, service invocation and state management. |
| Pub-sub | Demonstrates how to use Dapr to enable pub-sub applications. Uses Redis as a pub-sub component. |
| Bindings | Demonstrates how to use Dapr to create input and output bindings to other components. Uses bindings to Kafka. |
| Observability | Demonstrates Dapr tracing capabilities. Uses Zipkin as a tracing component. |
| Secret Store | Demonstrates the use of Dapr Secrets API to access secret stores. |
| Workflow | Demonstrates how to author and manage Dapr workflows. Includes workflow patterns, resiliency, and common challenges & tips. |
Development
Updating sdk versions
- Python:
make update_python_sdk_version [DAPR_VERSION=1.16.0] [FASTAPI_VERSION=1.16.0] [WORKFLOW_VERSION=1.16.0] - Go:
make update_gosdk_version VERSION=v1.16.0 - C#:
make update_dotnet_sdk_version VERSION=1.15.0 - Java:
make update_java_sdk_version VERSION=1.12.0 - Javascript:
make update_javascript_sdk_version VERSION=3.4.0
Validating all the quickstarts
To run the samples, you need to have Dapr installed. Follow the Getting Started guide to install Dapr.
- Python:
make test_python_quickstarts - Go:
make test_go_quickstarts - Java:
make test_java_quickstarts - JS:
make test_javascript_quickstarts - C#:
make test_csharp_quickstarts - All quickstarts:
make test_all_quickstarts
Validating a single quickstart
Navigate to the quickstart directory and run make validate.
cd conversation/python/sdk
make validate
Code of Conduct
Please refer to our Dapr Community Code of Conduct