All Projects → mikeyhu → Scaladiagrams

mikeyhu / Scaladiagrams

Licence: mit
Generate class diagrams from scala source code

Programming Languages

scala
5932 projects

Projects that are alternatives of or similar to Scaladiagrams

Blast Radius
Interactive visualizations of Terraform dependency graphs using d3.js
Stars: ✭ 1,376 (+958.46%)
Mutual labels:  graphviz, diagram
C4 Plantuml
C4-PlantUML combines the benefits of PlantUML and the C4 model for providing a simple way of describing and communicate software architectures
Stars: ✭ 3,522 (+2609.23%)
Mutual labels:  graphviz, diagram
Diagrams
🎨 Diagram as Code for prototyping cloud system architectures
Stars: ✭ 15,756 (+12020%)
Mutual labels:  graphviz, diagram
Diagram Tools
A number of small tools for generating and manipulating diagrams, mostly based around Graphviz
Stars: ✭ 95 (-26.92%)
Mutual labels:  graphviz, diagram
Aws Plantuml
PlantUML sprites, macros, and other includes for AWS components.
Stars: ✭ 565 (+334.62%)
Mutual labels:  graphviz, diagram
Azure Plantuml
PlantUML sprites, macros, and other includes for Azure services
Stars: ✭ 247 (+90%)
Mutual labels:  graphviz, diagram
Visualize ruby
Transform code into a flowchart and experimentally trace the execution path through it
Stars: ✭ 237 (+82.31%)
Mutual labels:  graphviz, diagram
Asciidoctor Kroki
Asciidoctor.js extension to convert diagrams to images using Kroki!
Stars: ✭ 55 (-57.69%)
Mutual labels:  graphviz, diagram
GiGraph
Simple yet versatile library for generating graphs in the DOT language
Stars: ✭ 25 (-80.77%)
Mutual labels:  graphviz, diagram
PlantUml-Language-Service
PlantUml Language Service extension for Visual Studio 2017 and 2019
Stars: ✭ 24 (-81.54%)
Mutual labels:  graphviz, diagram
Protobuf Uml Diagram
Create UML diagrams from Protobuf compiled .proto files using Python
Stars: ✭ 17 (-86.92%)
Mutual labels:  graphviz, diagram
Vzl
💠 DOT Language Live Editor (GraphViz)
Stars: ✭ 83 (-36.15%)
Mutual labels:  graphviz, diagram
Lsofgraph Python
python version of lsof to graphviz parser
Stars: ✭ 106 (-18.46%)
Mutual labels:  graphviz
3d Force Graph Vr
3D force-directed graph component in VR
Stars: ✭ 112 (-13.85%)
Mutual labels:  graphviz
Flowmarbles
Interactive diagrams of Kotlin Flow https://flowmarbles.com
Stars: ✭ 106 (-18.46%)
Mutual labels:  diagram
Structurizr Php
🗺 https://structurizr.com library for PHP - generate architecture diagrams from code
Stars: ✭ 118 (-9.23%)
Mutual labels:  diagram
Vscode Mermaid Preview
Previews Mermaid diagrams
Stars: ✭ 111 (-14.62%)
Mutual labels:  diagram
Vuerd Vscode
ERD Editor vscode extension
Stars: ✭ 95 (-26.92%)
Mutual labels:  diagram
Vis Network
💫 Display dynamic, automatically organised, customizable network views.
Stars: ✭ 1,311 (+908.46%)
Mutual labels:  diagram
Quiver
A modern commutative diagram editor for the web.
Stars: ✭ 1,799 (+1283.85%)
Mutual labels:  diagram

Scala Diagrams

Scaladiagrams is a command line tool to generate DOT files representing a Scala projects class hierarchy. These DOT files can then be passed to a renderer such as GraphViz to draw the hierarchy.

Usage

First, compile and package with ./build

To run Scaladiagrams do the following:

scaladiagrams --source pathToScalaSourcefiles > dotFile

If you have Graphviz installed, you can generate an image like so:

scaladiagrams --source pathToScalaSourcefiles | dot -Tpng > file.png

Large class hierarchies are probably best rendered as an SVG file, just replace the -t target to svg.

Other options

./scaladiagrams --help
	-e, --extension  <arg>    (default = .scala) 
	-l, --linked             only output types that extend other types 
	-p, --parent  <arg>      only output parents of the named class 
	-s, --source  <arg>      location of source files (default = .) 

Most useful of these are --linked and --parent; these both reduce the scope of the diagram to be produced.

Example diagram

Class Diagram

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].