Skip to content

Latest commit

 

History

8 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

doc2dot

Generates dot (graphviz) document from code documentation comments like JSDoc, JavaDoc, PHPDoc

yarn global add dot2doc
# or
npm -g i dot2doc
dot2doc './test/**/*.js'
dot2doc './test/**/*.js' > file.dot

Usage

Raw DOT entry

@dot nodeA -> nodeB

DOT node type

@dot-type MyNode [color=red]
@dot {MyNode} nodeA

will result with

nodeA [color=red]

All of type rule

@dot-type MyNode [color=red]
@dot {MyNode} nodeA
@dot-rule MyNode -> foo

will result with

nodeA [color=red]
nodeA -> foo

Define cluster

@dot-subgraph Name style=whatever;color=other
@dot-rule foo in A
@dot-rule {Any} in A
@dot {Any} B

will result in

subgraph clusterName { style=whatever;color=other A B }

Example

/**
 * @name abc
 * @param a
 * @param b
 * @dot tester -> noop
 * @dot {ClassA} tester
 * @dot-type ClassA [color=blue]
 */
function tester(a, b) {

}

/**
 * @dot {RelationB} noop -> tester 
 * @dot-type RelationB [shape=arrow]
 */

 // @dot noop -> boop

 /**
  * @dot-rule ClassA <- foop
  * @dot-rule ClassA -> boop
  * @dot-rule ClassA eachIn A
  * @dot-rule foop in A
  * @dot-subgraph A style=filled;color=gray;
  */
digraph G {
graph [rankdir=LR, fontsize=10, margin=0.001];
subgraph clusterA { style=filled;color=gray; foop tester }
tester -> noop
tester [color=blue]
tester -> boop
foop -> tester
noop -> tester [shape=arrow]
noop -> boop
{ rank="max";   e; }
}

Licence

MIT

About

Generates dot (graphviz) document from code documentation comments like JSDoc, JavaDoc, PHPDoc

Topics

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages