PyFlowMapper Beta Release
Pre-releaseπ§ͺ PyFlowMapper
Beta Release β Architecture & Data-Flow Visualization for Python
This beta release introduces PyFlowMapper, a static analysis tool that helps developers understand function call relationships and data flow in Python projects β without executing any code.
β¨ Highlights
- π Static AST-based analysis (safe, no runtime execution)
- π Function call graph generation
- π Data-flow tracking via return-value propagation
- π Mermaid diagram output for easy visualization
- π§± Project structure inspection
- π§° CLI-first workflow with programmatic API support
- π Python 3.12+ support
π Key Features
CLI Commands
-
pyflow analyze <project_path>
Analyze a Python project and generateproject_meta.json -
pyflow diagram <project_meta.json>
Generate Mermaid diagrams (Simple, Detailed, Call Graph) -
pyflow structure <project_path>
Print a clean, readable project tree
Metadata Output
- Modules, functions, and classes
- Call relationships and reverse callers
- Data-flow edges (return β assignment)
- Import and dependency graphs
Diagram Types
- Simple Flow Graph β basic function calls
- Detailed Flow Graph β β modules + calls + data flow
- Call Graph β calls only
π Documentation
- Quarto-based documentation site
- Real-world examples
- Mermaid diagram embedding
- CLI and architecture walkthroughs
β οΈ Known Limitations (Beta)
- Static analysis only (dynamic runtime behavior may not be resolved)
- Limited support for:
- Runtime imports
- Heavy metaprogramming
- Function references stored in complex data structures
- Large projects may produce very large diagrams
π― Intended Use (Beta)
- Understanding unfamiliar codebases
- Architectural documentation
- Code reviews and refactoring support
- Educational and exploratory analysis
π§ͺ Beta Status
This is a beta release.
APIs, metadata schema, and diagram output may change based on feedback.
π Feedback, bug reports, and suggestions are highly encouraged.
π¦ Installation
pip install py-flow-mapperOr from source:
git clone https://github.com/ArunKoundinya/py-flow-mapper.git
cd py-flow-mapper
pip install -e .π Acknowledgements
Thanks to everyone testing, experimenting, and sharing feedback during early development.
Full Changelog: https://github.com/ArunKoundinya/py-flow-mapper/commits/v0.1.0b2.dev