Trace data flow across TypeScript codebases. See where a variable's data comes from.
VS Code's built-in Call Hierarchy works for function calls, but not for data. flowprint fills that gap: right-click a variable and see the full chain of assignments, parameters, and property accesses that connect it to the rest of your codebase.
Usage
Open a TypeScript file
Right-click on a variable, parameter, or property access
Pick a command:
Trace Data Flow (Upstream) — full trace tree showing how data reaches this symbol
Trace Data Flow (Downstream) — full trace tree showing where data goes from this symbol
Show Origins — skip the intermediate hops, show only where the data comes from
The Data Flow panel appears in the Explorer sidebar
Click any node to navigate to its source location
What it traces
Upstream (where does data come from):
Variable assignments (const x = y)
Chained assignments (a = b = c)
Function parameters to call-site arguments (declarations, arrow functions, callbacks)
Property access (obj.name)
Method call receivers (items.filter(...) traces to items)
Destructuring (const { name } = obj)
Cross-file imports and re-exports (export { x } from "./y", export * from "./y")
Downstream (where does data go):
Variable assignments (const target = source traces source to target)
Function call arguments into parameters (fn(data) traces data into fn's parameter)
CLI
flowprint is also available as a CLI, useful for scripting or giving to your AI agent: