Skip to content
| Marketplace
Sign in
Visual Studio Code>Visualization>App Workflow VisualizerNew to Visual Studio Code? Get it now.
App Workflow Visualizer

App Workflow Visualizer

Mittal Prajapati

|
1 install
| (0) | Free
Reverse-engineers an Angular or React app's routing and navigation calls into an interactive user-flow diagram.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

App Workflow Visualizer

A VS Code extension that reverse-engineers an Angular/Ionic app's user flow — how a user actually moves through the app's screens — directly from the codebase, and renders it as an interactive diagram. No manual documentation, no guessing: it reads the routing config and the navigation calls in your components and templates.

What it does

  1. Scans the open workspace for Angular Router config (*-routing.module.ts, *.routes.ts, app.routes.ts), including nested children routes and lazy-loaded loadComponent / loadChildren routes.
  2. Scans .ts and .html files for navigation calls: navCtrl.navigateForward(), navCtrl.navigateRoot(), router.navigate(), and routerLink in templates.
  3. Builds a graph: nodes = screens/pages, edges = transitions between them.
  4. Renders it as a flowchart in a VS Code webview (solid line = declared route, dashed line = an actual navigation call in code — useful for spotting screens that are routable but never actually linked to, or vice versa).

Setup (one-time, ~2 minutes)

  1. Open this folder (workflow-visualizer) in VS Code.
  2. Run npm install in a terminal.
  3. Run npm run compile (or leave npm run watch running).
  4. Press F5 — this opens a second "Extension Development Host" VS Code window with the extension loaded.
  5. In that new window, open your actual Angular/Ionic project folder (File > Open Folder).
  6. Open the Command Palette (Cmd/Ctrl+Shift+P) and run: "Workflow Visualizer: Show App User Flow"

A panel opens with the diagram. Solid arrows = routes; dashed arrows = navigation calls found in code.

Packaging as a real installable extension (optional, for extra polish)

npm install -g @vscode/vsce
vsce package

This produces a .vsix file you can install into any VS Code via Extensions > ... > Install from VSIX, so you're not tied to the F5 dev-host during your demo.

Suggested live demo script (3-4 minutes)

  1. Open with the problem (30s): "When we onboard a new dev, or when we're scoping a change, nobody has an up-to-date picture of how a user actually moves through this app. Diagrams get stale the moment someone adds a screen."
  2. Run it live (60s): Open the real project, run the command, let the diagram render. Narrate what you're seeing as it appears.
  3. Point out one real insight (60s): Look for something genuinely useful in your project's output — e.g. a screen that's declared as a route but nothing navigates to it (dead route), or a screen with far more incoming transitions than expected (a de facto hub). This is the "analyst" moment — you're not just showing a diagram, you're showing what it reveals.
  4. Close with the "so what" (30s): How this would help onboarding, code review, or planning a refactor. Mention it's a real installable extension, not a one-off script.

Known limitations (be upfront about these if asked — it reads as credibility, not weakness)

  • Navigation targets passed as variables (navCtrl.navigateForward(this.someVar)) aren't resolved — only string literals are tracked.
  • It doesn't execute the app, so conditionally-rendered navigation (e.g. behind a feature flag) shows up the same as any other edge.
  • Route guards (canActivate) aren't reflected in the diagram.

These are natural "if I had another sprint" talking points — good material for the Q&A.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft