

#Use graphviz software#
#Use graphviz free#
Feel free to open new issue or start discussion in the slack channel.ĭo you want to contribute to the project?.( not a member yet? get invitation)ĭid you find any bugs or have some suggestions? Here is an example for the project syncthing.Ĭheck out more examples and used command options. Run go-callvis -h to list all supported options. For more information about build tags, see the description of build constraints in the documentation for the go/build package Omit calls to/from packages in standard library.Ī list of build tags to consider satisfied during the build. Minimum space between two adjacent nodes in the same rank (for taller output). Limit package paths to given prefixes (separated by comma) Include package paths with given prefixes (separated by comma) Ignore package paths containing given prefixes (separated by comma) Grouping functions by packages and/or types (separated by comma) (default "pkg") Use Graphviz's dot program to render images. Output filename - omit to use server modeĮnable caching to avoid unnecessary re-rendering.įocus specific package using name or import path. The output format defaults to svg, use option -format= to pick a different output format. To generate a single output file use option -file= to choose output file destination. HTTP server is listening on by default, use option -http="ADDR:PORT" to change HTTP server address. To use the interactive view provided by a web server that serves SVG images of focused packages, you can simply run: Graphviz (optional, required only with -graphviz flag).Here you can find descriptions for various types of output. It runs pointer analysis to construct the call graph of the program and uses the data to generate output in dot format, which can be rendered with Graphviz tools.
#Use graphviz code#
filter packages to specific import path prefixesĬheck out the source code for the above image.group functions by package and/or methods by type.click on package to quickly switch the focus using interactive viewer.This is especially useful in larger projects where the complexity of the code much higher or when you are just simply trying to understand code of somebody else.

The purpose of this tool is to provide developers with a visual overview of a Go program using data from call graph and its relations with packages and types. Go-callvis is a development tool to help visualize call graph of a Go program using interactive view.
