Skip to content

Conversation

cicoyle
Copy link
Contributor

@cicoyle cicoyle commented Sep 19, 2025

Added a multi app example including a go and java scenario.

Signed-off-by: Cassandra Coyle <cassie@diagrid.io>
@cicoyle cicoyle requested review from a team as code owners September 19, 2025 23:00
@cicoyle cicoyle marked this pull request as draft September 19, 2025 23:01
Signed-off-by: Cassandra Coyle <cassie@diagrid.io>
Signed-off-by: Cassandra Coyle <cassie@diagrid.io>
Signed-off-by: Cassandra Coyle <cassie@diagrid.io>
Signed-off-by: Cassandra Coyle <cassie@diagrid.io>
@cicoyle cicoyle marked this pull request as ready for review September 23, 2025 19:42
@alicejgibbons
Copy link
Contributor

@cicoyle thoughts on making this a tutorial since its multi-language?? We already have a good set of tutorials from Marc for Dapr university and could add it here: https://github.com/dapr/quickstarts/tree/master/tutorials/workflow

@kendallroden
Copy link
Contributor

kendallroden commented Sep 24, 2025

I'm not able to review here but the current makefile commands require SDKMAN. You can update it to not use that and it works, or you need to add it as a dependency

Looks like the go sdk version is stale and should be updated from 1.13

Copy link
Contributor

@alicejgibbons alicejgibbons left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @cicoyle great qs. LMK if you think this one would be a good use case for adding back in the mechanical markdown to ensure correctness on multiapp wfs going forward..

@@ -0,0 +1,117 @@
# Multi-App E-commerce Workflow Demo

This demo showcases a realistic e-commerce order processing scenario using Dapr's multi-application workflow capabilities. The scenario demonstrates how a Go application can orchestrate complex business processes across multiple Java services, including AI-powered recommendations.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we add a link to docs for multi-app workflow stuff?

## Prerequisites

- Dapr CLI installed and initialized (`dapr init`)
- Go installed
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

versions of any of these pre-reqs?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

also need to have make

- Go installed
- Java and Maven installed

## Quick Start
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
## Quick Start
## Quickstart

@@ -0,0 +1,16 @@
apiVersion: dapr.io/v1alpha1
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we typically put these in /resources folders

@@ -0,0 +1,4 @@
# Enable auto-env through the sdkman_auto_env config
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can this file be removed? or added to gitignore?

# Multi-App E-commerce Workflow Demo

This demo showcases a realistic e-commerce order processing scenario using Dapr's multi-application workflow capabilities. The scenario demonstrates how a Go application can orchestrate complex business processes across multiple Java services, including AI-powered recommendations.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We need a section maybe here that details the differences between cross app and multi app and when they are used.

// Step 4: Generate AI Recommendations (call AI recommendation service)
log.Println("=== STEP 4: Starting AI Recommendations activity on ai-recommendation-service ===")
var recommendationResult RecommendationResult
if err := ctx.CallActivity("io.dapr.quickstarts.workflows.activities.GeneratePersonalizedRecommendationsActivity",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Call out what is a cross-app/multi-app call in code comments within the wf

@msfussell
Copy link
Member

msfussell commented Sep 25, 2025

I would prefer to put this particular sample into Samples repo and not into Quickstarts and certainly not under the /workflows folder. This is not a quickstart app, it has multiples language and 2 or 3 apps are sufficient to make the point . Also we have to consider any example to be done in other languages, including .NET. I would prefer to have a single language versions for Java, Go, .NET etc to demo multi-application workflow like over features and keep this simple.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants