Golang module dependency graph, with directories.
The image_packages console utility is designed to display all packages (modules) of any repository in the Golang language
in the form of a scheme diagram(graph) in .graphml format, which can be converted to a .jpg image, etc.
It is necessary to understand the structure of the source code of the repository,
to study or better understand the call structure of the source code.
Displayed:
- directory names
- package names
- number of functions and lines in the package
- go goroutine call arrows (blue)
- function call arrows (black)
- package relationship arrows (dashed)
Sample execution (pictures) can be found in the examples directory
Installation order:
-
Install the .graphml file editor yEd (free)
https://www.yworks.com/products/yed/download
-
Compile this repository
make build
image_packages file will appear in the bin folder
- Run the image_packages file with parameters:
image_packages <filename.graphml>
- Open the resulting .graphml file in the yEd editor
(all elements will be in the center of the screen first)
and select from the menu:
Layout - BPMN
- The yEd editor will arrange all the elements of the circuit in an optimal way.
You can also select a different Layout type to change the display.
- Export the scheme to a picture.
Select from the menu:
File-Export
Source code in Golang language.
Tested on Linux Ubuntu
Readme from 10.07.2023
Made by Aleksandr Nikitin
https://github.com/ManyakRus/image_packages