Skip to content

v0.0.10

Choose a tag to compare

@github-actions github-actions released this 13 Jul 19:06
· 150 commits to main since this release

Diagrid Dev Dashboard

A local dashboard for Dapr developers that offers a live view of everything Dapr running on your machine, plus guided builders for authoring Dapr component and resiliency YAML. Where v0.0.9 took the dashboard beyond your machine (container image + .NET Aspire mode), v0.0.10 turns it toward the integration-testing workflow: it now discovers Dapr apps launched by Testcontainers, surfaces the component YAML baked into those containers, makes workflows work even without a connected state store, and adds MongoDB as a fourth state-store backend.

What's new

🧪 Testcontainers discovery

  • A new scanner detects daprd sidecars started by Testcontainers, keys them by container name, and pairs each one to its app container via the app port — resolving the app's PID and uptime the same way a dapr run process would.
  • Container logs stream straight into the Logs page, and lifecycle controls (start/stop/restart) are hidden for these apps since their lifecycle belongs to the test run, not the dashboard.
  • Testcontainers apps carry their own source label throughout the UI so it's clear where each app came from.

⚙️ Workflows without a connected state store

  • New sidecar-gRPC workflow source: the dashboard talks to each app's daprd directly over gRPC (via the durabletask client), so workflow instances and history light up even when the app uses an in-memory or otherwise unreachable state store.
  • Per-app composite routing picks the right source for each app — the shared state-store source where it applies, the sidecar source otherwise.
  • Hardening: per-app gRPC call timeouts, and sidecar-sourced items merged only on the first page to keep pagination correct.

🧩 Components extracted from inside the container

  • The dashboard now extracts component and resource YAML directly out of Testcontainers containers (via tar extraction) and shows them in the Components view under virtual resource paths.
  • App detail gains completeness for these apps: an app-protocol row (read from metadata, with an argv fallback) plus container and session rows.

🍃 MongoDB state store support

  • MongoDB joins Redis, SQLite and PostgreSQL as a fully supported state-store backend — available in the supported-store list and the connection dialog, with state.mongodb added to the server connection allowlist.
  • Connection handling covers the real-world shapes: compose host translation, a credentials-free connection summary (userinfo stripped), SRV / mongodb+srv support, and host-less database URIs.

🔬 Testcontainers integration harness

  • A new integration-test harness spins up real containers for all four backends (SQLite, Redis, PostgreSQL, MongoDB) to verify the state-store connectors end-to-end, with robust container wait strategies.

💅 UI polish

  • All modal dialogs now share one consistent layout and alignment.
  • The internal styleguide has been refreshed to match.

📸 Docs

  • The README now shows dashboard screenshots (Applications and Workflows) so the project reads at a glance.

Install & run

One-liner (macOS / Linux):

curl -sSL https://raw.githubusercontent.com/diagridio/dev-dashboard/main/scripts/install.sh | sh

Windows (PowerShell):

iwr -useb https://raw.githubusercontent.com/diagridio/dev-dashboard/main/scripts/install.ps1 | iex

With Go (≥ 1.26):

go install github.com/diagridio/dev-dashboard@v0.0.10

Container:

docker pull ghcr.io/diagridio/dev-dashboard:0.0.10

Run:

dev-dashboard          # serves http://localhost:9090 and opens your browser

Single self-contained binary — the React frontend is embedded via go:embed, so there are no runtime dependencies. Prebuilt archives for macOS and Linux (amd64 + arm64) and Windows (amd64) are attached below, and the multi-arch container image is on GHCR.