Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/dspinellis/UMLGraph
Declarative specification and drawing of UML diagrams
https://github.com/dspinellis/UMLGraph
java reverse-engineering uml uml-diagram
Last synced: 3 months ago
JSON representation
Declarative specification and drawing of UML diagrams
- Host: GitHub
- URL: https://github.com/dspinellis/UMLGraph
- Owner: dspinellis
- License: bsd-3-clause
- Created: 2012-04-25T08:44:21.000Z (over 12 years ago)
- Default Branch: master
- Last Pushed: 2023-10-27T10:33:55.000Z (about 1 year ago)
- Last Synced: 2024-06-28T11:32:51.029Z (5 months ago)
- Topics: java, reverse-engineering, uml, uml-diagram
- Language: Java
- Homepage: http://www.spinellis.gr/umlgraph
- Size: 4.17 MB
- Stars: 338
- Watchers: 33
- Forks: 94
- Open Issues: 27
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# UMLGraph - Declarative Drawing of UML Diagrams
*UMLGraph* allows the declarative specification and drawing of UML diagrams.
You can browse the system's documentation
through [this link](http://www.spinellis.gr/umlgraph/doc/index.html),
or print it through [this link](http://www.spinellis.gr/umlgraph/doc/indexw.html).In order to run *UMLGraph*, you need to have [GraphViz](https://www.graphviz.org/)
installed in your system path. On most Linux distributions, this can be easily
installed using the regular package manager.To compile the Java doclet from the source code run *ant* on the
*build.xml* file.If you change the source code, you can run regression tests by
executing *ant test*.Visit the project's [home page](http://www.spinellis.gr/umlgraph) for more information.
## Compatibility
If you build against Java 8, please use latest version of 5.X of the Doclet.
Since Java 9 doclet APIs where completely rewritten, the Doclet in version 6 supports only supports Java 9 and above.
## Development versions
In order to use development versions, you can use [JitPack](https://jitpack.io/#dspinellis/UMLGraph/master-SNAPSHOT).
Note that as this is compiled on demand, you may sometimes see a "Read timed out" when the package is recompiled,
and it should be fine a few seconds later. And because the master branch can change any time, you may want to use
a versioned snapshot instead (see the Jitpack documentation for details).**Gradle**:
```
repositories { maven { url 'https://jitpack.io' } }
configurations { umlgraph }
dependencies { umlgraph 'com.github.dspinellis:UMLGraph:master-SNAPSHOT' }
javadoc {
doclet = 'org.umlgraph.doclet.UmlGraphDoc'
docletpath = configurations.umlgraph.files.asType(List)
tags("hidden:X", "opt:X", "has:X", "navhas:X", "assoc:X", "navassoc:X",
"composed:X", "navcomposed:X", "stereotype:X", "depend:X")
}
```**Maven**:
```
jitpack.io
https://jitpack.io
...
com.github.dspinellis
UMLGraph
master-SNAPSHOT
compile```
**Jar download**:
## See also
* [D2: Declarative Diagraming](https://d2lang.com/) (Emphasis on aesthetics and extensionability)
* [Mermaid diagramming and charting tool](https://mermaid.js.org/) (JavaScript-based; easier syntax, good Markdown integration; interactive diagrams)
* [PlantUML](https://plantuml.com/) (Java-based; supports IDEs and more diagram types)
* [Comparisson of textual diagraming systems](https://text-to-diagram.com/)