While surfing Perl blogs, I just stumbled across CatalystX::Dispatcher::AsGraph. This module enables one to create a graph of the private actions in their Catalyst application. The documentation is sparse but reading t/05_graph.t got me started. Now I'm ready to use the module to make a graph of routes in the Catalyst application MojoMojo.
This script will generate a .dot graph file of the MojoMojo private actions:
use strict; use warnings; use CatalystX::Dispatcher::AsGraph; use lib '/path/to/MojoMojo/lib'; my $graph = CatalystX::Dispatcher::AsGraph->new( appname => 'MojoMojo', output => 'MojoMojo_graph', ); $graph->run;#print $graph->graph->as_ascii; if (open(my $dot, '>', 'MojoMojo.dot')) { print $dot $graph->graph->as_graphviz; close($dot); }
dot -Tpng -o MojoMojo-routes.png MojoMojo.dot