Skip to content
Create graphs of Erlang systems and programs
Erlang Makefile
Find file
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
src
test
.gitignore
LICENSE
Makefile
NOTICE
README.md
getopt_LICENSE.txt
rebar
rebar.config

README.md

grapherl

Create graphs of Erlang systems and programs.

Getting Started

First, install graphviz. On Ubuntu:

$ sudo aptitude install graphviz

On OS X, download and install the OS X version of graphviz or use homebrew:

$ brew install graphviz

To compile grapherl, type:

$ make

or the equivalent ./rebar compile.

To start a grapherl shell after compilation, type:

$ erl -pa ebin

Alternatively, compile a grapherl stand-alone executable by doing:

$ ./rebar escriptize

This will produce a grapherl executable in the root directory. Use the flags -h or --help to see wich arguments it needs.

Examples

Here's some examples of using grapherl.

The following two calls are equal. They will both generate my_app.png in the current directory.

Eshell V5.7.5  (abort with ^G)
1> grapherl:modules("/path/to/my_app", "my_app").
ok
2> grapherl:modules("/path/to/my_app/ebin", "my_app", [no_ebin]).
ok

For example, if you have an Erlang release in the folder my_node, you can create a application dependency graph in SVG format by doing the following:

Eshell V5.7.5  (abort with ^G)
1> grapherl:applications("/path/to/my_node/lib", "my_node", [{type, svg}]).
ok

This will create my_node.svg in the current directory.

Tips

If you're using Gnome under Linux, use the option {open, "gnome-open"} to directly see the resulting image.

If you're using OS X, use the option {open, "open"}.

Contribute

Should you find yourself using grapherl and have issues, comments or feedback please create an issue!

Patches are greatly appreciated!

Something went wrong with that request. Please try again.