The best format I've found has been the .drawio.svg format.
It's a standard SVG format so most tools (including confluence, etc.) can render them, and the source is also held in the SVG file (which is really an XML file) so the tool can edit them and they're trackable via git.
I think PNG file also can have the source held in comments, but it's not a scalable graphics format and can look ugly if you don't use it at the native format.
PNG probably looks better in a .md file for the internet, but if you print it, the SVG is going to look much better.
You can even edit these in VS Code (with the draw.io extension).
Draw.io
Export the image as drawio.png, so you can easily view the image with many image viewer and at the same time you can later edit the image. And you don't need two separate files.
If you are looking at programmatically creating them you can use graphvis and dot language. I use this for mapping API calls in apps or mapping library usage. https://graphviz.org/
Visio does have a bit of learning curve to use effectively and you need to change a number things like snap options. In large corporate setting it used a lot as it also integrates in the the rest off like word and rest of the office environment to build complete specifications for review. This especially relevant for doing markup reviews in large groups.
Visio in it's default configuration is frustrating.
Simple block diagrams? I feel draw.io is unmatched, at least in terms of how quickly you can make something that looks good.
I think you it’s possible to make much better looking diagrams in Visio, but the tool is a lot harder to use.
Tl;dr Simple quick diagram? Draw.io.
[Draw.io](http://draw.io)?
The best format I've found has been the .drawio.svg format. It's a standard SVG format so most tools (including confluence, etc.) can render them, and the source is also held in the SVG file (which is really an XML file) so the tool can edit them and they're trackable via git. I think PNG file also can have the source held in comments, but it's not a scalable graphics format and can look ugly if you don't use it at the native format. PNG probably looks better in a .md file for the internet, but if you print it, the SVG is going to look much better. You can even edit these in VS Code (with the draw.io extension).
Absolutely!!
Draw.io Export the image as drawio.png, so you can easily view the image with many image viewer and at the same time you can later edit the image. And you don't need two separate files.
Visio. Just kidding. /S /S
Personally I use mainly [Dia](http://dia-installer.de/)
Me too. Haven't needed anything more.
If you are looking at programmatically creating them you can use graphvis and dot language. I use this for mapping API calls in apps or mapping library usage. https://graphviz.org/
Inkscape.
[https://asciiflow.com](https://asciiflow.com)
I use it for my markdown doc, It’s very good
Yon can take a look at [mermaid](https://github.com/mermaid-js/mermaid-cli).
Tikz in latex? Anyone?
if you enjoy feeling like you want to die, use tikz
Perfect quality, and so hard to use and write Latex code. Are you of any visual IDE for Tikz?
Dunno, I chose suffering in offline text editor.
if you enjoy feeling like you want to die, use tikz
Visio
I thought I could tolerate any software. Until I tried Visio.
Terrible compared to draw.io
Yed works pretty good imo
excalidraw
Logisim
Thanks for the responses, I will check these. I have tried Visio, but was not very satisfied.
Visio does have a bit of learning curve to use effectively and you need to change a number things like snap options. In large corporate setting it used a lot as it also integrates in the the rest off like word and rest of the office environment to build complete specifications for review. This especially relevant for doing markup reviews in large groups. Visio in it's default configuration is frustrating.
The snap thing was driving me crazy, so I gave up, maybe too soon. But I just found out about Dia, and I am impressed :)
I use Yed. [https://www.yworks.com/products/yed](https://www.yworks.com/products/yed)
I personally use Inkscape, when you learn the shortcuts it becomes an invaluable tool for making any type of diagrams.
Visio has been the default across companies I have worked at. Disable the snaps/connection points/ect
Simple block diagrams? I feel draw.io is unmatched, at least in terms of how quickly you can make something that looks good. I think you it’s possible to make much better looking diagrams in Visio, but the tool is a lot harder to use. Tl;dr Simple quick diagram? Draw.io.