Skip to content
| Marketplace
Sign in
Visual Studio Code>Visualization>Durable VizNew to Visual Studio Code? Get it now.
Durable Viz

Durable Viz

Gunnar Grosch

|
3 installs
| (1) | Free
Visualize AWS Lambda Durable Functions workflows. See your step, parallel, invoke, and callback primitives as an interactive flowchart.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Durable Viz

Visualize AWS Lambda Durable Functions workflows directly in VS Code. Static analysis turns your handler code into an interactive flowchart, no deployment or execution required.

Supports TypeScript/JavaScript, Python, and Java runtimes.

Features

  • Interactive diagram. See your durable function as a flowchart in a side panel.
  • Scroll zoom. Scroll wheel to zoom in/out, zooms toward cursor.
  • Click-drag pan. Click and drag to move around the diagram.
  • Click-to-navigate. Click any node to jump to that line in the source file.
  • Auto-refresh. Diagram updates when you save the file.
  • Direction toggle. Switch between top-down (TD) and left-right (LR) layout.
  • Save PNG. Export the diagram as a high-resolution transparent PNG.
  • Source view. View the raw Mermaid syntax or JSON graph.
  • All primitives. Step, invoke, parallel, map, wait, callbacks, conditions, child contexts.

Usage

  1. Open a file containing a durable function handler.
  2. Open the command palette (Ctrl+Shift+P / Cmd+Shift+P).
  3. Run Durable Viz: Open Lambda Durable Function Workflow.

The diagram appears in a side panel next to your code. A toolbar button also appears in the editor title bar for supported file types.

Supported Languages

Language Handler detection SDK
TypeScript / JavaScript withDurableExecution() @aws/durable-execution-sdk-js
Python @durable_execution decorator aws-durable-execution-sdk-python
Java extends DurableHandler aws-durable-execution-sdk-java

Detected Primitives

Java SDK support is in preview with some primitives still in development.

Primitive TypeScript Python Java (preview)
Step context.step() context.step() ctx.step()
Invoke context.invoke() context.invoke() ctx.invoke()
Parallel context.parallel() context.parallel() in development
Map context.map() context.map() in development
Wait context.wait() context.wait() ctx.wait()
Wait for Callback context.waitForCallback() context.wait_for_callback() in development
Create Callback context.createCallback() context.create_callback() ctx.createCallback()
Wait for Condition context.waitForCondition() context.wait_for_condition() in development
Child Context context.runInChildContext() context.run_in_child_context() ctx.runInChildContext()

Visual Encoding

Each primitive type has a distinct shape and color:

Node Shape Color
Start / End Stadium Blue
Step Rectangle Green
Invoke Trapezoid Amber
Parallel / Map Hexagon Purple
Wait / Callback Circle Red
Condition Diamond Indigo
Child Context Subroutine Teal

Parallel branches are grouped inside a dashed border. Conditional branches show "yes" and "no" edges.

CLI

This extension is part of durable-viz, which also includes a CLI:

npx durable-viz handler.ts --open

Links

  • GitHub Repository
  • AWS Lambda Durable Functions Documentation
  • Report an Issue

License

MIT

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft