This is an iteration of my previous submission[0] with improvements from the comments and feedback. It is now embeddable in a markdown, and the generated SVG is now optimized to it's size.
Is this designed to be used or just a proof of concept? If the former then maybe some installation hints in the readme would be a good idea. As someone with no exposure to rust I have no idea what to do with this.
I'm looking forward to work on manipulating the generated SVG and reflect the change in the text diagram then render it back to SVG. But that will come a long way.
This is cool! Though, it still leaves me with my biggest problem: I have no idea how to efficiently draw the diagrams in the first place. Ascii diagrams are not easy to draw (for me, atleast).
The best i've seen is a GUI tool that creates the diagrams. That tool really is awesome (https://monodraw.helftone.com/), but it's a GUI tool and frankly supports complexity/features far greater than i really need most of the time.
I'd love a project that took some type of simple text based flow notation, and converted it to ascii flow diagrams. Eg:
main: something -> other thing -> [ thing a, thing b, thing c]
thing a: thing a -> thing b
thing c: thing c -> thing b
In this mockup, my desired tool would take this simple non-artistic notation and convert it to a flow diagram showing a `something` object leading into an `other thing` object, which branches to three objects called `thing a`, `thing b`, and `thing c`. Each of those have their own flows as well, as noted by their own respective definitions. `thing a` leads over to `thing b`, `thing c` to `thing b`, and `thing b` doesn't actually do anything.
I love ascii diagrams, but i never want to construct them by hand. Writing them out in some simple notation like above would be awesome! Also note that i'm not expecting this to be insanely feature packed.. it sort of defeats the purpose of a simple notation. But being able to just construct them quickly as a starting point would be awesome. Advanced tools like Monodraw can take the complicated work.
I've recently discovered plantuml[0]. It does a pretty good job for tasks centered around software design, and the language is simple, yet not too limited for my purposes.
I wrote some simple ascii diagrams inline with readme and code, but never too serious. I wrote this tool to enhance the rendering of the diagram, and publish it opensource. I never did expect some people use it seriously https://github.com/ivanceras/svgbobrus/pull/6
16 comments
[ 4.9 ms ] story [ 41.8 ms ] thread[0]https://news.ycombinator.com/item?id=12621680
The best i've seen is a GUI tool that creates the diagrams. That tool really is awesome (https://monodraw.helftone.com/), but it's a GUI tool and frankly supports complexity/features far greater than i really need most of the time.
I'd love a project that took some type of simple text based flow notation, and converted it to ascii flow diagrams. Eg:
In this mockup, my desired tool would take this simple non-artistic notation and convert it to a flow diagram showing a `something` object leading into an `other thing` object, which branches to three objects called `thing a`, `thing b`, and `thing c`. Each of those have their own flows as well, as noted by their own respective definitions. `thing a` leads over to `thing b`, `thing c` to `thing b`, and `thing b` doesn't actually do anything.I love ascii diagrams, but i never want to construct them by hand. Writing them out in some simple notation like above would be awesome! Also note that i'm not expecting this to be insanely feature packed.. it sort of defeats the purpose of a simple notation. But being able to just construct them quickly as a starting point would be awesome. Advanced tools like Monodraw can take the complicated work.
I know you said you don't want to 'draw' ASCII diagrams, but if you use Emacs, there's a package called artist-mode which I've found helpful.
[0] http://plantuml.com/state-diagram#Simple
Do people actually manually write ASCII diagrams like that?
This is a great place to use Mermaid (https://github.com/knsv/mermaid)
http://casual-effects.com/markdeep/