Skip to content
| Marketplace
Sign in
Visual Studio Code>Visualization>API Flow ExplorerNew to Visual Studio Code? Get it now.
API Flow Explorer

API Flow Explorer

Liladhar

|
1 install
| (0) | Free
Statically analyze JS/TS codebases and visualize how frontend requests flow through API routes, middleware, services and data stores. Local and offline.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

API Flow Explorer

A local, offline VS Code extension that statically analyzes a JavaScript/TypeScript workspace and shows how frontend pages and components reach API endpoints, middleware, guards, controllers, services and data stores — with the source evidence and a confidence level for every relationship. Nothing is executed, uploaded or sent to an AI service.

Screenshot of an endpoint flow: docs/endpoint-flow.png.

What it understands

  • Frontend: React components/hooks, fetch and axios (including axios.create({ baseURL }), API wrapper functions, env-based base URLs), Next.js pages, client/server boundaries.
  • Backend: Express (routers, mounts, middleware), NestJS (controllers, guards, interceptors, DI, modules), Next.js App Router route handlers and Pages API routes.
  • Data & infrastructure: Mongoose, Prisma, TypeORM, Redis, Elasticsearch, Bull/BullMQ queues, event emitters.
  • Matching: frontend requests are linked to endpoints by method, normalized path and resolvable base URL. Dynamic or ambiguous matches are shown as inferred; anything without evidence is unresolved with the reason.

Details: supported patterns · limitations.

Install

From the VS Code Marketplace (or Open VSX for VSCodium, Cursor and Antigravity): search for API Flow Explorer (liladhar.api-flow-explorer).

From a .vsix file: Extensions view → … → Install from VSIX…, or

code --install-extension api-flow-explorer.vsix

To build it yourself: npm install && npm run package. Requires VS Code ≥ 1.90 (build developed on Linux with Node 22).

Use

Open a workspace and trust it, then:

  1. API Flow Explorer: Scan Workspace (progress notification, cancellable). Results appear in the API Flow Explorer activity-bar view and the output channel (scan report + diagnostics).
  2. Open API Graph (or click an endpoint in the sidebar). The sidebar has a search box, All / Frontend / Backend pills (Next.js is frontend, everything else backend), collapsible groups (Endpoints, Frontend Requests, Services, Models, External APIs) and a Filters section (HTTP method, framework, node types, confidence). The same filters are in the graph page's bottom dock and the two stay in sync. The graph shows the selected endpoint's callers upstream and its handlers, services and data stores downstream; use the ◂ n / n ▸ badges to expand. Clicking a node opens its file at the exact line. The Endpoint Details panel shows metadata (controller, handler, guards, interceptors, module), related nodes, incoming calls, every relationship with its evidence and confidence, and an API Tester tab. The Trace Timeline is a static call path derived from source, not a runtime recording.
  3. Edits are picked up automatically (debounced, incremental); Full Rescan ignores the cache.
Command What it does
API Flow Explorer: Scan Workspace / Full Rescan (ignore cache) Analyze the workspace
Open API Graph Open the graph (optionally focused on an endpoint)
Search API Flows (Ctrl+Alt+A) Pick an endpoint and open its flow
Find References of Symbol at Cursor Callers/renderers/routes/requests that reference the symbol, with evidence
Analyze Impact of Symbol at Cursor Endpoints, requests and UI affected by changing the symbol
Export Graph as JSON / Export Flow as Mermaid / Export Endpoints as Markdown Deterministic exports
Setting Default
apiFlowExplorer.baseUrls {} Values for env vars used in request base URLs, e.g. { "NEXT_PUBLIC_API_URL": "http://localhost:3000" } (.env files are never read)
apiFlowExplorer.ignoredDirectories [] Extra directory names to skip
apiFlowExplorer.includeTests false Analyze *.test.*, __tests__, …
apiFlowExplorer.maxFiles 20000 Source file limit
apiFlowExplorer.autoRescan true Incremental re-analysis on file changes

Reading the graph

Edges follow execution flow (request → endpoint → handler → service → data). Solid = resolved from direct evidence, dashed = inferred (e.g. a dynamic path segment aligned with a route parameter), red dotted = unresolved. "Reachable" never means "executed". See graph schema.

Development

npm install
npm run build            # typecheck + extension/worker bundle (esbuild) + webview (Vite)
npm test                 # Vitest: analyzer, matching, cache, exports, security, real-browser webview tests
npm run test:extension   # real VS Code (Extension Host): scan, navigation, file watcher, export
npm run bench -- 3000    # synthetic benchmark (see docs/benchmarks.md)

The browser tests drive the installed Google Chrome/Chromium; they are skipped if none is found. The extension tests use the locally installed VS Code (/usr/share/code/code, or set VSCODE_EXEC).

Docs: architecture · graph schema · supported patterns · limitations · security review · benchmarks.

License

MIT

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