Hacker News new | ask | show | jobs
Diagrams: A diagram editor for the Mac (diagrams.app)
110 points by timmz 2847 days ago
37 comments

> The Missing Diagram Editor for the Mac

Yes, it is missing. Please repost when it exists.

Is the Alpha download-able somewhere ?
I don't understand why this is bubbling up to the top of hacker news. I presume it is because of high demand and hopes for a native graphing tool, but is there some other reason I am missing? I ask because the project looks to be very early-stage. I see only very simplistic box-and-arrows charts which wouldn't be sufficient for anything but the most basic of ideas -- certainly not for publications or a professional presentation. And the information about its future path and goals is slight-to-none. The team has a very long road ahead to replace full-featured products like LucidChart or OmniGraffle. [edit: grammar]
Generic support for a solo-developer working on a slick MacOS app. At least that's why I started following the project on Twitter a couple of days ago.
Well there's also the fact that you're either buying OmniGraffle or tolerating Dia's dependencies on the Mac platform.
Because options are good? I use Visio on Windows but am constantly needing to do simpler stuff on the Mac at home, and even though PowerPoint works and I have an old OmniGraffle license, I'd love to have something "in between".
I moved to a web-based tool called Moqups, which I absolutely love - you may enjoy it, I think it qualifies as a great in-between.
I’d much rather have a native app, thanks...
I've been looking over a year for something reasonably good and not as messy as Omni. I didn't upvote and it might be manipulated but I did enter my email.
I love how everyone spends years drawing diagrams with mouse torture in visio, OmniGraffle, licid, etc.

eventually everyone will find out about plantuml (puml) which generates diagrams of all kinds via a simple source file and wonder how they could ever live without it.

Pros:

+ It's all plaintext. I love working with plaintext for all the usual benefits, so this fits.

+ PUML renderer is technically a free-to-download JAR, so it can presumably[0] integrate well with my Org-mode life.

Cons:

- Try to draw anything more complicated than three boxes and an arrow, and you'll be spending 90% of the time fighting the layout engine.

- It's even worse when you have your own opinion about the desired layout. No way to do that reliably, the result is very brittle.

I generally like it, but I'd like it 100x more if there was a way to explicitly pin some component to absolute coordinates. Or at least a better way for giving layout hints than soft constraints introduced through invisible links.

--

EDIT: A random idea if anyone is developing something PUML-like:

How about separating out layouting a bit, and letting me type in something like that:

  A     F    G
  B  C  D
           E H
And then continue with regular PUML code:

  package "core" #A {
     [something]
     [something-else]
  }

  ...

  [some-component #D]-->[some-component #E]

  ...
Basically, I wish I could draw a picture representing the rough layout of key image components, and have this as a hard constraint on positioning other elements.

--

[0] - Presumably, because I gave up on it after couple large-ish diagrams, just before my use has reached the threshold above which I consider Emacs integration.

This is my main gripe with plantUML as well. It's an awesome tool, but you either have to surrender to the layout engine or lose your sanity.

It is especially frustrating when you add one item to a diagram and ALL the items shift around to completely new places.

I hope you don't mind, but I submitted your excellent idea to the Mermaid diagram folks: https://github.com/knsv/mermaid/issues/270#issuecomment-4170...
I don't; in fact, I very much appreciate it. This is a kind of thing I'd pursue if I didn't already have higher-priority work and personal projects, so I'd love if someone else could try this out.
Mermaid js does that though, and many notetaking apps integrate with it

Personally Draw.io is the best freeapp already out there (online based or desktop), but lucidchart for paid is great too (much better print capabilities)

Mermaid.js is excellent, and takes very little time to learn. The quick render is VS Code is super useful for throwing together diagrams quickly
Let me help you with that…

http://plantuml.com

I agree the diagrams from text is what's needed, since they can be maintained in version control, or even just maintained. Since so many diagrams I look at are produced to share a message and become out of date almost instantly. Developers work in text, so should the visualization tools.
Also https://www.planttext.com/, which is a website with a text field linked to a PlantUML instance somewhere. It's what I use when I'm too lazy to install PlantUML locally.
Not so sure about that - I spent a few weeks this spring trying to badger PlantUML into generating the diagrams I wanted to include in a piece of documentation, and I'd much rather have used an ordinary mouse-based graphics tool where I could have simply put things where I wanted them to go.
Is it possible to have best of both worlds, not having to worry about layout engines. But you can check into version control
Back in my day, everyone just used graphviz. Heck, OmniGraffle's diagram support was (is?) based on graphviz. Have things gotten much better since then? Graphviz was always hard to beat.
> The Missing Diagram Editor for the Mac

I’ve been using OmniGraffle for this purpose for ten plus years. They’re gone downhill since moving into the App Store but there certainly are diagramming tools for Mac...

Draw.io is also pretty capable, interchangeable with non-Mac users and they have a native-ish app
What happened in the App Store?
Hi! Here is Lukas, the founder of Diagrams. We launched our website on Monday and announced it on Twitter only. I must say I’m astonished to see us on position three of Hacker News today!

At this time we’re in the middle of the development. However, this week’s support really encourages us to work even harder on a perfect product. And we’re also very happy to have several offers from developers and designers who offered collaboration!

It’s great to read your feedback in form of ideas, expectations and questions. You can be assured we read them all attentively. Please keep on posting. We will try to give as many answers as possible in future blog posts.

We also got several requests for beta testing - we will announce the opportunity to apply for an upcoming beta phase via our mailing list, which you can enter here: https://diagrams.app/

Have a good time. Lukas

BTW you can also follow us on Twitter: https://twitter.com/diagramsapp
Y'know what'd be useful?

ASCII export, so I can put nice diagrams in comments and docstrings. Also possibly (assuming those nice diagrams are unambiguous) a parsing bridge which lets me convert them into data.

Not exactly what you might be looking for, but check out https://monodraw.helftone.com/ and http://asciiflow.com/
Asciiflow is what I've been using so far, but you have to hand-roll graphs.

The screenshot on monodraw's home look good, might be what I've been looking for.

I've used monodraw and I can say it's great
I use Monodraw (https://monodraw.helftone.com/), it is perfect for this.
+1 for monodraw! Great application!
Agree. Monodraw is fantastic.
We use yEd, it's a free, cross platform written in Java that's served us well for many years.

https://www.yworks.com/products/yed

As one of the developers that at least contributes to yEd Live (our in-browser equivalent; yEd is based on our Java library which I'm not working on), thank you :-)

That being said, as a UX guy I always love to look at competitors and find ways how editing can be improved or streamlined (and yEd has many features already, so some parts of it can be more complicated than I'd like).

I looked at yEd, and dropped it because it doesn't seem to support rotating shapes. I was quite surprised, since that is a fundamental feature of most drawing applications.
yEd is actually not really a drawing application, as you cannot (easily) draw generic drawings. What you see and edit is always a graph, consisting of nodes and edges.

For yEd the lack of rotating shapes is a deliberate decision based on implementation difficulty (it's based on an older yFiles library version), workarounds are available (importing arbitrary shapes), and the fact that in a graph drawing application there are several things that don't play well with rotated nodes, such as automatic layout and ports. For yEd Live we are considering to add the feature, but we're still trying to figure out how to lessen the impact where things don't work well together. After all, automatic layout is one of our main selling points. We have already implemented rotatable nodes as a demo [1], so simply adding that to yEd Live would be trivial from a technical standpoint, but we like to care about UX as well.

Other applications may not have the same constraints (graph vs. generic drawing) or may disregard some of the problems (e.g. in draw.io you get overlapping shapes when you arrange a diagram with rotated nodes, since for the arrange feature all nodes are apparently axis-aligned and not rotated).

[1] https://live.yworks.com/demos/complete/rotatablenodes/index....

I was using yed and I'm very happy with it (although it is using Java internally): https://www.yworks.com/downloads#yEd
I was just about to recommend it. I've been using it on a Mac for a while now and it's been more than enough for my diagramming needs.
I would like to share another gem in this category: https://whimsical.co One can design some sleek looking flowchart in minutes. Super time saver.
So here's a question I've been wanting to figure out for ages:

Are there any resources you recommend for learning to make good diagrams? Ie, I love documenting things but I don't have experience in drawing diagrams. I don't know conventions for displaying order of execution, what arrows should indicate (in A->B is A giving information to be? is B requesting information from A? etc).

Are there any good tutorials/classes/whatever on drawing good diagrams? Good at conveying information, but also consistent with what educated people would expect?

I'm not the biggest fan of UML everywhere, but one benefit of it is that certain diagram types are standardized.

https://en.wikipedia.org/wiki/Unified_Modeling_Language

Check out interaction diagrams for what you describe. Two parties (A and B) would be represented as two columns, moving down the diagram means moving forward in time. The arrow going from one to the other is a message (either an actual message or a function call or something). So A->B means A is signaling (the text and context describe how) B. If B is requesting information, you'd have two arrows. First B<-A, and then A->B with the response (attempted plain text version):

   t A     B
   0 |     |
   1 |---->| A sends data to B
   2 |     |
   3 |<----| B requests more information from A
   4 |---->| A responds
A and B could be people, processes, classes/objects, servers, whatever. The interaction points are described with the context of the diagram and text. (NB: t is not meant to be explicit here, I've included it to illustrate the passage of time going down the diagram.)
If you just want a sequence diagram like that I suggest https://www.websequencediagrams.com/

It's now as a website, but I have the server version and use it at least once a week to crank out interactions

I have this exact same question. I've found some conventions over the years that have been helpful, but haven't found anything comprehensive.

With regards to what the arrows indicate, I've done dotted line arrows are synchronous, with a solid arrowhead meaning request body and an outlined arrowhead being the response. Then used solid black line with a single solid arrowhead for an asynchronous request.

I've used FMC[1] with decent results. C4 modelling[2] is another option, but I personally haven't used it yet.

1. http://www.fmc-modeling.org/quick-intro

2. https://c4model.com/

My favorite tool for flow charts is Whimsical. It offers just the right amount of control and the output charts look fantastic.

https://whimsical.co/flowcharts/

That's really nice, usually when I start playing with something like this the UI glitches out or is just un-intuitive but this one is pretty solid, nice work.
I've used ~10 times, it works pretty great. adding icons as easy is very nice
For less structured diagrams, I really like Scapple: https://www.literatureandlatte.com/scapple/overview
Worth mentioning Draw.io: https://about.draw.io which can also be run totally "offline".

The types of diagrams you can create is quite extensive: https://about.draw.io/features/examples/

and the diagrams generated are easily integrated into MediaWiki installations, with full editability.

draw.io online is a free-to-license web application for everyone. It is completely free to use for any purpose, there is no premium pay-for functionality, watermarking, or other limitations. You own the content you produce with draw.io and may use it for any purpose, including commercially. We don’t sell your personal information or data. We don’t store your data. You own your data and the application is open source.

Code here: https://github.com/jgraph/drawio

So, are you actually getting access to the Alpha when you sign up or are we just getting grabbed to someday down the line get Beta access?

I'd advise you to post this again when you have an actual software to show, that people can test out. I won't sign up for anything and I believe a lot of people don't really want anymore newsletters and sales pitches in their inbox.

I'm surprised that no one in this thread has mentioned TikZ yet. I've always found it easy to use and sufficient for my needs.
Yes, I was especially confused when I saw Monodraw (do you really illustrate your documents with ASCII?!?), But no mention of TikZ.
A few people have mentioned alternative diagramming software projects as well as a desire for ASCII output. To this end, I'll throw in a mention of Graphviz[0] and Graph::Easy[1]. While I have not used the latter, I have used Graphviz/DOT and can recommend giving it consideration.

0 - http://graphviz.org/

1 - https://codeyarns.com/2017/10/21/how-to-convert-dot-graph-to...

Maybe it's a bit dated but IPE was always easy to use.

https://github.com/otfried/ipe

It would be nice to improve the interface a bit.

What will pricing structure look like? Free? One time? Subscription?
I’m still waiting for the missing “free” diagram editor for Mac. Or, even better: “Open source”.

Because most decent Mac apps become shareware once they hit version 1.0.

Also, there’s no doubt in my mind that all these utility apps will be web-based in the future. Google Docs and Google Drawings are great examples of this.

Having said that, I wish you the best of luck with your project.

In the meantime before this launches, shout out to the people over at https://whimsical.co/ for launching this product earlier this year. I've been using that (browser based), and loving it. Excited to see what this app is once it launches.
Is there any way to do sequence diagrams with that?
It seems to have purpose-built interactions for certain kinds of diagrams, foremost flowcharts. This is a major benefit for those kinds of diagrams where you can then tailor the editing gestures towards things that make sense while editing, but of course may not work so well for general-purpose diagrams or other special kinds.
This is pretty cool. I typicallly use Drakon, which is an old but good program with a lot of programmtic diagramming capability: https://github.com/stepan-mitkin/drakon_editor
I often prefer to draw diagrams on paper, take photo and then use software to covert it to SVG. Ideally I find a good too that can convert it to an easily editable format. Any ideas?

I think better on paper. Or I'm on the go and have to get my idea down.

Their introductory blog post talks about UML being part of the inspiration for this project. If Diagrams uses UML as its file format, or has first rate UML export, this would be a standout feature that sets it apart from Omni Graffle and the like.
I dislike the way fledgling projects don't provide any details about pricing. Even if they haven't figured out the model they want to go with, just a simple statement saying as much is helpful and transparent.
Diagrams for macOS will be released later this year

Draw.io has a macOS version right now. Works pretty good, especially for a free program. Though it's clearly a port and uses some non-standard interface conventions.

How will this compare with Omnigraffle in terms of features and pricing?
I've found monodraw to be very useful: https://monodraw.helftone.com/
For simple box diagrams, I usually just use the Google Drawings, one of the Google Drive applications. It's free and pretty damn good.
Multi-platform isn't a thing anymore?
Really? This is a native macOS app. It would have to be entirely recreated for other platforms, which is a waste of time and resources for an MVP. If this were a multiplatform Electron app, it would be getting criticism for being an Electron app.
To be fair, it never really was. Mac and Linux were always after thoughts to Windows. Now things are trending towards Mac first, leaving Linux and Windows looking outside in.
In what world do you live that apps are created Mac first?
Presumably the design/visualisation one.
Why is this an eu sponsored (?) project?
Seems to be specific for the Sachsen region (a state in Germany) to reduce unemployment. I see they offer 20k Euro (to be paid back) for new businesses, also money for starting a secondary education (50%) and re-joining the workforce after long unemployment (funds partly reimburses employers). http://strukturfonds.sachsen.de/esf.html

To incorporate a GmbH company (which is similar to an Inc or Limited) you need 25k Euro in Germany.

I'd love to know if calling it "diagrams" is a fantastic or terrible move in terms of SEO?
I am wondering how it compares to draw.io which, although online, has been pretty good in my experience.
How does this compare with omnigraffle and yed?
the color theme in the example screenshot leaves much to be desired. It has that out of the box Vizio look n' feel
Is there a method for HN to get beta access?
LibreOffice Draw is a good free solution.
A Mac-only app?

The 90's are on the horn, they want to know when this will be shrinked-wrapped and sold at Best Buy.

Why is this even on HN?

I don’t see your point. Why shouldn’t this be on Hacker News?