Skip to content

Repository files navigation

proc>flow — SQL logic and dependency visualiser

Understand complicated SQL without tracing every branch by hand.

Correctness workflow status Latest release MIT license Runtime: local only

ProcFlow turns SQL into diagrams for control flow, query structure, object dependencies, column lineage, and report dependencies. It runs locally in the browser: no backend, database connection, sign-in, or installation is required.

Accuracy warning: ProcFlow is a deterministic heuristic analyser, not a database compiler. Treat diagrams as investigation aids and verify important findings against the source SQL and target database.

Use cases

  • DBAs: review procedures, functions, triggers, views, transactions, exception paths, reads, writes, and calls.
  • SQL/report engineers: import SSRS/RDL definitions, connect datasets to their queries, and trace report → dataset → object → column dependencies.
  • Application teams: inspect multi-object scripts, temporary-table flow, catalogue-backed object resolution, and conservative column lineage.
  • Reviewers: export deterministic Mermaid, SVG, or editable draw.io diagrams with source provenance.

Quick start

  1. Download the v1.14.1 runtime ZIP from the GitHub release, or clone this repository.
  2. Open index.html in a current Chromium, Firefox, or Edge browser.
  3. Paste SQL or import local files, select a dialect or Auto, and choose Refresh.
  4. Choose an object and scope, then inspect the source spans and diagnostics before relying on a relationship.

For development, see Development. For a simple served run, use python -m http.server 8000 from the runtime directory and open http://127.0.0.1:8000/.

Demo

Open the app and choose Load sample to explore a representative procedure, query, report-shaped dependency, or SQLite trigger without preparing any input. The logo above is the bundled project mark; all sample and user analysis stays in the browser.

What it shows

  • IF/ELSE/CASE, loops, exits, labels, GOTO, cursors, transactions, savepoints, returns, and exception handling;
  • statement and result-set structure, CTEs, joins, unions, subqueries, table reads/writes, MERGE, APPLY, derived tables, and query references;
  • procedure/function calls and object dependencies;
  • temporary-table producer → consumer data flow;
  • conservative column lineage with explicit ambiguity;
  • report and dataset dependency chains;
  • dynamic SQL as an explicit opaque step rather than an invented dependency.

Supported dialects

ProcFlow v1.14.1 supports Microsoft T-SQL, IBM DB2 SQL PL, PostgreSQL PL/pgSQL, and SQLite. Detection is automatic but can be overridden. Vendor extensions outside these tested constructs may produce diagnostics or reduced coverage; see Accuracy.

Privacy and security

Runtime analysis is local-only. Nothing is submitted to ProcFlow. Browser storage is opt-in through Save to this browser; workspace export and clipboard actions are explicit. Mermaid uses strict rendering in the security suite, and hostile labels are escaped for diagram/XML output. Read the full Security and privacy policy before using sensitive data.

Documentation

  • User guide — workflows, imports, filters, workspaces, large inputs, and exports.
  • Accuracy — confidence, coverage, diagnostics, and limits.
  • Architecture — pipeline, modules, and invariants.
  • Security — data handling and hostile-input boundaries.
  • Development — build, browser suites, benchmarks, and packaging.
  • Benchmarks — scale fixtures and indicative observations.
  • Release history — versioning and release notes.
  • v1.14.1 release note — current patch details.
  • Roadmap — planned convergence work.

Contributing

Keep runtime code local-only, preserve source spans and conservative semantics, add deterministic fixtures for behavior changes, and rebuild dist/ before a commit. Run the commands in Development, including the browser and package smoke suites. Use the issue forms for anonymised parser reports, bugs, and feature requests; never include confidential SQL.

License

ProcFlow is released under the MIT License. Mermaid is vendored under its own MIT license in vendor/mermaid/LICENSE.

About

`proc>flow` is a browser-based SQL visualisation tool for DBAs, developers, and analysts. Paste SQL source into the editor to generate a control-flow diagram or a query-lineage diagram.

Topics

Resources

Security policy

Stars

3 stars

Watchers

0 watching

Forks

Releases

Contributors

Languages