Sketchviz – Graphviz graphs in a hand-drawn style
sketchviz.com
sketchviz.com
https://giphy.com/gifs/sketchviz-squigglevision-WtV9O3ufeqeO...
Also working with Graphviz was a great experience while my thesis. Simple and easy enough to 'sketch out', but at the time it offers all needed tools to expand these sketches into something complex. Great tool! Sadly my work uses draw.io which is the exact opposite. For quick sketches on my phone I use MindNode.
As I mention on the about page, this is really just stringing a bunch of existing tools together, so most of the credit goes to those folks:
- the Graphviz contributors for creating everyone's favourite 1990s-era graphing tool
- Mike Daines for viz.js, which uses Emscripten to compile Graphviz to JavaScript
- Preet Shihn, for RoughJS, which has the algorithms to transform shapes into scruffier shapes
- GitHub user @ismay, who made a wrapper for RoughJS to make operating on SVGs, which Graphviz can emit as output, braindead simple
I just duct-taped things together and did some of the tedious fit-and-finish stuff. For example, ensuring fonts render consistently regardless of whether you were previewing in the editor, downloading the PNG (which generates locally for speed) or embedding the graph on another website (which generates in an AWS Lambda using a headless Chrome to render it).
This is essentially what all developers do to varying degrees. The whole is greater than the sum of its parts!
[0]: https://jakevdp.github.io/blog/2012/10/07/xkcd-style-plots-i...
https://altair-viz.github.io/.
its exceedingly cool!
Maintainability. With declarative text-based diagramming, you can check these in as text files, and when the system evolves or the diagram has a need to change, it's easy to make a change and re-generate the image.
Once you learn the rules for the type of diagram you're making, it's much simpler than opening up <diagram tool of choice> and trying to shuffle the pieces around to make room for the change, or re-sketching the whole diagram from scratch on a piece of paper.
See: