#relationships #command-line-tool #representation #structures #cli #plant-uml #visualizing

bin+lib rust_code_visualizer

A library and CLI tool for graphical representation of Rust code, focusing on visualizing the relationships between structs and enums

3 releases

0.1.2 Apr 26, 2023
0.1.1 Apr 26, 2023
0.1.0 Apr 26, 2023

#255 in Visualization

MIT license

120KB
715 lines

Rust code visualizer

A library and CLI tool for graphical representation of Rust code, focusing on visualizing the relationships between structs and enums.

mml appears to be dead and deprecated, so I started working on my own implementation.

Usage

Here's how the CLI works (current use):

rcvis test.rs > graph.dot 
dot -Tpng graph.dot -o graph.png

Here's how the CLI works (in future):

rcvis source.rs source1.rs --format {plantuml,graphviz} --out file.out

This command analyzes the provided Rust source files and generates a visual representation of the relationships between structs and enums in the specified output format (PlantUML or Graphviz), saving the result to file.out.

Features

  • Export relationships between structs and enums to Graphviz format
  • Export relationships between structs and enums to PlantUML format

Example

For the structures.rs in example folder: Example structures.rs image

Installation

To install the Rust Code Visualizer CLI tool, run the following command:

cargo install rust_code_visualizer

Contributing

Contributions are welcome! Feel free to submit a pull request or open an issue on the GitHub repository. License

Rust Code Visualizer is licensed under the MIT License. Acknowledgements

Special thanks to the creators of the mml crate for their initial work and inspiration.

Dependencies

~2.5MB
~46K SLoC