Our great sponsors
-
mdbook-plantuml
mdBook preprocessor to render PlantUML diagrams to png images in the book output directory
-
text-to-diagram-site
Compare syntax, layouts, outputs between languages for generating diagrams with text.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
echosvg
SVG implementation in the Java™ Language, fork of Apache Batik, supporting level 4 selectors and colors.
-
KeenWrite
Discontinued Free, open-source, cross-platform desktop Markdown text editor with live preview, string interpolation, and math.
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
I started using plantuml more rigorously at work. I've found that collaboration on the drawings/diagrams, is simpler and easier as it can be tracked in Git. One additional thing that I've been using as well is the mdBook plugin to embed and render the images as part of a larger book. This has been helpful for large systems when there are many teams involved.
https://github.com/sytsereitsma/mdbook-plantuml
Community list of comparisons between Text to Diagram tools: https://text-to-diagram.com/
I love PlantUML. I was always fond of it in my early days as a software engineer and still use it today, along with all the various ways to draw diagrams out there, whether it's through a web tool like draw.io or Miro or through markup like PlantUML and Mermaid.
Some stuff I'd like to share with the rest:
- PlantUML's default style has improved since the days of red/brown borders, pale yellow boxes, drop shadows and such but I've attempted fixing it before through a preset style [I've made before here](https://gist.github.com/jerieljan/4c82515ff5f2b2e4dd5122d354...). It's obsolete nowadays, since I'm sure someone has made a style generator somewhere, and last I checked, PlantUML allows a monochrome style out of the box.
- [Eraser](https://app.eraser.io) is promising, considering that it's trying to blend both diagram-as-code markup along with the usual visual diagram editor. I'm still seeing if it's worth picking up since Miro's hard to beat.
- On an unrelated note, [WikiJS](https://js.wiki/) is a self-hosted wiki that happens to support draw.io, PlantUML and MermaidJS diagrams out of the box. Quite handy to have for your own docs.
- I use Miro nowadays since it's significantly quicker to draw things freeform and to collaborate live with folks on a whiteboard at the cost of having your diagrams in markup, but it's easy to miss the integration that [you can actually import PlantUML](https://help.miro.com/hc/en-us/articles/7004940386578) and Mermaid diagrams in a Miro board too. You can also do edits too, but it's on its own PlantUML section, of course.
Here's three interesting Rust projects that use plantuml
You can embed plantuml and drawio diagrams in Rust doc comments and have it rendered in the docs, using this crate
https://crates.io/crates/rsdoc
And you can generate plantuml from SQL tables using
https://crates.io/crates/sqlant (this one is a rust port of a go tool, https://github.com/achiku/planter)
And you can embed plantuml in mdbook
https://crates.io/crates/mdbook-plantuml
My cross-platform desktop text editor, KeenWrite, allows users to define variables in an external YAML file. The editor calls out to Kroki[1] to convert text-based diagrams to SVG. The diagrams can reference variables and are rendered using EchoSVG[2].
KeenWrite[3] can produce PDF documentation from Markdown documents that has PlantUML diagrams with elements stored in an external, machine-readable file. Here are screenshots showing variables on the left, diagram text in the middle, and a real-time render on the right:
* https://raw.githubusercontent.com/DaveJarvis/KeenWrite/main/...
* https://raw.githubusercontent.com/DaveJarvis/KeenWrite/main/...
KeenWrite supports all diagrams offered by Kroki, which includes "diagram-plantuml".
[1]: https://kroki.io/
[2]: https://github.com/css4j/echosvg/
[3]: https://github.com/DaveJarvis/keenwrite
My cross-platform desktop text editor, KeenWrite, allows users to define variables in an external YAML file. The editor calls out to Kroki[1] to convert text-based diagrams to SVG. The diagrams can reference variables and are rendered using EchoSVG[2].
KeenWrite[3] can produce PDF documentation from Markdown documents that has PlantUML diagrams with elements stored in an external, machine-readable file. Here are screenshots showing variables on the left, diagram text in the middle, and a real-time render on the right:
* https://raw.githubusercontent.com/DaveJarvis/KeenWrite/main/...
* https://raw.githubusercontent.com/DaveJarvis/KeenWrite/main/...
KeenWrite supports all diagrams offered by Kroki, which includes "diagram-plantuml".
[1]: https://kroki.io/
[2]: https://github.com/css4j/echosvg/
[3]: https://github.com/DaveJarvis/keenwrite
My cross-platform desktop text editor, KeenWrite, allows users to define variables in an external YAML file. The editor calls out to Kroki[1] to convert text-based diagrams to SVG. The diagrams can reference variables and are rendered using EchoSVG[2].
KeenWrite[3] can produce PDF documentation from Markdown documents that has PlantUML diagrams with elements stored in an external, machine-readable file. Here are screenshots showing variables on the left, diagram text in the middle, and a real-time render on the right:
* https://raw.githubusercontent.com/DaveJarvis/KeenWrite/main/...
* https://raw.githubusercontent.com/DaveJarvis/KeenWrite/main/...
KeenWrite supports all diagrams offered by Kroki, which includes "diagram-plantuml".
[1]: https://kroki.io/
[2]: https://github.com/css4j/echosvg/
[3]: https://github.com/DaveJarvis/keenwrite
I've used ORG along with Babel to write that post: https://github.com/dorneanu/roam/blob/main/org/blog/2023-07-...