This tool generates a Graphviz diagram of the Python project structure, showing classes, methods, and their relationships, including method calls. It's designed to help developers understand the architecture of a Python codebase by visually mapping out its components.
- Visualizes classes and methods in a Python project.
- Shows relationships between methods, including method calls.
- Allows excluding common built-in method calls (like
join
,split
,append
) from the visualization. - Supports different Graphviz layout engines for various diagram styles.
- Customizable through configuration file.
- Python 3.8 or higher
- Graphviz installed on your system (Graphviz Download Page)
- Poetry (optional, for development)
- Ensure you have Python and Graphviz installed on your system.
- Install the Python package
pyprojectviz
using Pip:
pip install pyprojectviz
- Ensure you have Python and Graphviz installed on your system.
- Clone the repository:
git clone https://github.com/codekuu/pyprojectviz.git
- Install the Python packages with Poetry or Pip from source:
# Install with Poetry
poetry install
# Install with Pip
pip install .
Run the script from the command line with the following arguments:
python -m pyprojectviz . --config examples/example_conf_file.yaml
Run the script from the command line with the following arguments:
poetry run python pyprojectviz . --config examples/example_conf_file.yaml
This will generate a Graphviz diagram of the project at the "." path, using the specified configuration file.
Pyprojectviz can be customized through a configuration file can be found in the examples directory.
GNU General Public License (GNU GPL)
Contributions are welcome. Please send pull requests or open issues to discuss proposed changes.