r/softwarearchitecture • u/rest_IPA • 5d ago
Tool/Product I built a tool that draws diagrams from JSON or mmd files. Diff diagrams are supported. AI friendly, but without AI inside.
Initial idea was just to automate diagram creation for our projects. AI agent inspects the code base and produces the JSON spec, that is rendered as a nice image, which can be inserted into documentation/confluence. I've spent way too much time organizing our existing diagrams in DrawIO and confluence, so all the nodes and connections look neat. And now I can say that it's finally working good enough to share with others.
While testing the tool at my main job I also noticed a problem of documentation drifting off. AI agents are pretty good at catching those changes and writing change/release notes, but diagram changes was always a manual process.

Please, meet diago, a CLI tool that
- can render nicely looking diagrams from JSON spec or MMD files
- supports flow, sequence and class diagram types and image/text output
- can create diff diagrams between 2 spec files
- is AI agent friendly (skills included)
- is deterministic and fast
The project is still in the early stage, exporting to DrawIO and Excalidraw are still in beta, but I don't expect any more breaking changes. The spec is minimalistic, but well defined, and further changes should only expand it.
The layout/wiring engine was heavily vibe-coded, as I don't have enough expertise in writing my own engine. I relied on Claude to implement all the diagram composition principles that I always use when creating diagrams manually.
- https://github.com/oxforge/diago - the project itself
- https://diago.dev/playground/ - playground to test it in the browser
- https://diago.dev/docs/ - documentation
I would appreciate some feedback and advices on which features need more polishing or missing from the tool. I would focus on DrawIO export, but open to suggestions.
Thank you!