[HN Gopher] Diagrams: Open-Source Alternative to Lucidchart ___________________________________________________________________ Diagrams: Open-Source Alternative to Lucidchart Author : synergy20 Score : 165 points Date : 2022-03-23 16:22 UTC (6 hours ago) (HTM) web link (www.diagrams.net) (TXT) w3m dump (www.diagrams.net) | spellcard199 wrote: | I 'm an heavy user of diagrams to take notes while learning | topics in biology and medicine. I think the most interesting | feature of diagrams.net is its extensibility, which is not | frequently mentioned. If you run in the javascript console... | var editorUi; Draw.loadPlugin(app => editorUi = app) | var editor = editorUi.editor var graph = editor.graph | | ... then you can automate changes to the diagram using mxGraph's | api [1] on the `graph' variable from the console. | | Around this plugin mechanism I wrote some dirty hacks for | personal use to make the editor behave more to my likings [2] | (some features stopped working with recent versions of the | desktop app), and an even dirtier Emacs mode for editing labels | and having the js REPL available directly from Emacs when I need | to run some code to fix my diagrams programmatically [3] (based | on Indium [4] + the fact that electron apps can be launched with | --remote-debugging-port=...). It's not pretty, but works enough | for me, and it's only thanks to the customizability that | diagrams.net allows. | | [1] https://jgraph.github.io/mxgraph/docs/js- | api/files/view/mxGr... | | [2] https://gitlab.com/spellcard199/drawio-plugin-eight- | droves-o... | | [3] https://gitlab.com/spellcard199/emacs-drawio | | [4] https://github.com/NicolasPetton/Indium | Veuxdo wrote: | Diagrams is a great drag-and-drop tool, but drag-and-drop tools | shouldn't be used for serious system diagramming: | https://www.ilograph.com/blog/posts/its-time-to-drop-drag-an... | abraae wrote: | We opted for Mermaid (mentioned in your article) and auto- | layout in our new offering. | | As you would expect, it has its pros and its cons. As diagrams | get bigger and more complex, mermaid's auto-layout gets more | and more challenged and more and more acres of white space | start to appear. Of course drawing those same large diagrams | manually would be a bitch too. | | At small scale, auto-layout is a no-brainer, but the jury is | still out for us on large, real world diagrams. | alexott wrote: | I like PlantUML a lot | lmc wrote: | Take a look at Structurizr - https://structurizr.com/ | | The guy that makes it is super helpful on twitter as well. | | Ah, I've just realised, the article above pointed to a quote | by Simon Brown - he is the Structurizr guy :-) | abraae wrote: | Thanks for the link. All the examples look pretty simple | and only use straight line connectors. We're building a no- | code for HR platform, so the diagrams are large and really | need curved connectors to maximise use of the space. | mnahkies wrote: | I completely agree with the sentiment of that post. | | I've generally always found it difficult to find something in | this space that produces a layout that's easy to follow, and | easy to experiment with. | | I think I'd like something that had: - layout constraints | similar to the android relative layout - something like | excalidraw that could dump the hand drawn diagram out to code | for a bit of cleanup before going into VCS | | I'm imagining you could solve the ability to inject new | sections with the constraints relatively easily but still | retain a good amount of creative control to better tell the | story. | | Any suggestions for tools to checkout? | chrisweekly wrote: | It's a slight tangent but as an Obsidian user, the Obsidian- | Excalidraw plugin^1 is kind of jaw-droppingly, amazingly good | at combining the many things each tool does well into a | seamless, customizable UX. | | 1. https://github.com/zsviczian/obsidian-excalidraw-plugin | wafer-bw wrote: | The way that article suggests adding more ELBs to the diagram | would take a lot of work with a drag and drop tool is | hilariously bad, maybe the author should learn how to use drag | and drop tools or maybe they are using terrible ones that don't | let you also drag to select? | dtjb wrote: | Different uses for different audiences. That article addresses | engineering use cases. But diagramming is also useful when | discussing (and constantly revising) concepts and workflows | with business users before any code is written. Drag and drop | fits the bill just fine there. | politician wrote: | It's sad that nothing beats OmniGraffle. | | Ideally, I want diagrams-as-code with a supporting layout-as- | code document for fine-tuning the presentation and a wysiwyg | tool for manipulating that layout-as-code document. | | But I understand why none of this exists: the MVP is too big. | jotm wrote: | Wow, this is... awesome! | | I was looking for something like this for a while, OneNote works | but it's quite tedious. Just a canvas for | mindmaps/diagrams/ideas. | | This is one of the reasons I keep coming here, to discover new, | useful software. Google is rather bad for that these days. | | Thank you very much! | | I'll see if I can contribute anything. | igetspam wrote: | Is this supposed to be a clever way of announcing that draw.io | has been renamed to diagrams.net? | dljsjr wrote: | They wanted to move off .io for several reasons, they announced | it a while back: https://www.diagrams.net/blog/move-diagrams- | net | IshKebab wrote: | Ha that complaint about British Imperialism is hilarious. The | British forced the original inhabitants off the island in the | colonial era, thus denying their descendants the right to | profit from an internet domain?? Madness. | davidjgraph wrote: | "Between 1967 and 1973, the Chagossians..." | (https://en.wikipedia.org/wiki/Chagossians). That's the | colonial era? They are plenty of Chagossians alive today | that were evicted. | yboris wrote: | Related: _yEd_ graph editor with my favorite feature: automatic | diagram untangling / re-arrangement / reflow. | | https://www.yworks.com/products/yed | argella wrote: | My company is forcing everyone back to Visio from diagrams.net | because "it's included with m365". | | Shit deal. | alpb wrote: | Isn't this the well known https://draw.io rebranded? | csunbird wrote: | It definitely is! | synergy20 wrote: | it is, I especially like its offline desktop version(for all | OSes). I don't think Lucidchart has a desktop version. | | and of course, it's totally free unless you want its paid | Apps+cloud version, which in my case I don't. | dtjb wrote: | I'm not affiliated but if anyone is looking for BPMN diagramming | I've found cawemo.com to be the best option out there. | Lightweight, simple, online, free, and can be used for downstream | automation. | jrvarela56 wrote: | If you're looking for a simpler drawing tool | https://www.tldraw.com lets you draw and associate all kinds of | shapes. | hnarn wrote: | I thought this was about the Python module "diagrams". | tgsovlerkhgsel wrote: | This is how the example chart on their homepage looks on my | machine: https://i.imgur.com/al67CoQ.png - ugly font, labels | crossing their boxes. | | I think they're sending me an SVG that my browser renders poorly, | but that's a horrible first impression. | | That said, the tool itself looks pretty solid, much better than | the only other open source alternative I know (dia). Like many | open source tools the UI design looks a bit old and it's chock | full of advanced features that make the basic ones hard to | find/use, but it's certainly usable. | | And it's browser based, which means it runs anywhere, including | Chromebooks. | toastshaman wrote: | This is also excellent. https://github.com/mingrammer/diagrams | davidjgraph wrote: | For those finding the UI too complex, there is the option of a | simpler UI - https://app.diagrams.net/?splash=0&ui=sketch . That | can be set under extras->theme->sketch. | houqp wrote: | I love the product, not only does it have an easy to use | web/offline app, I am also able to checkin the diagram source | into git for version control, see: | https://github.com/roapi/docs/blob/main/src/images/roapi.dra.... | Then I can use automations to generate images based off that | source file: | https://github.com/roapi/docs/blob/main/src/images/roapi.svg. | the_arun wrote: | How can I share a link for the diagram with a friend/team | member & collaborate? | shagie wrote: | Depends on how its shared... but... if you pull up | https://app.diagrams.net | | Do an 'Open from' > 'URL...' and paste in | http://shagie.net/wp-content/uploads/2015/05/Untitled- | Diagra... (an example diagram I made several years ago) - its | a png itself and you can open that up as a png, but I also | exported it with the drawing embedded. | | So when you open that up in the app, you'll get the _drawing_ | - not the raster version. | | Also consider that I created that png _7 years ago_ - other | drawing document formats have been less stable over that | timeframe. I 'm quite impressed with it. | davidjgraph wrote: | Save it to Google Drive or OneDrive and share that with them. | stevesimmons wrote: | You can also save your drawings using the option that embeds | the drawio diagram source into the rendered svg or png file, | and check that single file into git. | | Then (a) no need for an automation to generate the image; (b) | any image or svg is directly editable. | thedougd wrote: | You can also embed the source into a png or svg and commit | those to the repo. Diagrams.net will allow you to open from the | source embedded png or svg. | riidom wrote: | You can also use it as a wireframing/prototyping tool, or as some | kind of free-form typing tool. Write something about the topic at | hand in a box, make a list of things in another box, draw some | sketch with some basic shapes in a 3rd box, arrange it all later | on so similar things are together, etc. And then export to pdf | (or html, but I'm more familiar with the pdf export) | 725686 wrote: | "When companies pay us money it should be because we add value, | not because they are locked in." ___________________________________________________________________ (page generated 2022-03-23 23:00 UTC)