What one thing does this app need for you to dump Visio for it?
diagram.ly
diagram.ly
Don't see an option to actually display the grid (minor point but I kind of like it).
Yeah, the grid, we had this discussion yesterday, it's actually "snap", so your shapes snap to a grid without it being visible. But yes, we're going to make the grid visible by default next release.
In the company I used to work for we started using Atlassian Confluence for all our documentation purposes. Two plugins - Balsamiq Mockups and Gliffy really helped the adoption process of the whole ecosystem.
Your product looks nice, but here are two features that made Gliffy stand out (yes I am aware that the use case is different since one is a plug in and the other is a standalone product), references between diagrams - on one page you would lay out general architecture and comment on it, then on subpages you would work out the details. Gliffy allows the generated inline diagram to link to other pages/diagrams via generated imagemap. Another is UML support - yes UML sucks, but comes handy now and then.
And there is one more "feature" request that EVERYBODY working on this kind of tooling forgets about. When you draw a complex diagram, line connectors form spaghetti nightmare - its hard to see what goes where. So there would be two options - create loops where wire is passing over a wire (like in EC diagrams) or you could introduce nodes that would be used when wires are supposed to form a crossed node.
So my advice would be look into integrating this thing into some existing frameworks/extensible products.
UML and edge loops, both very good, moved up the todo list.
Currently, when using Visio, we have to up load, down load, and then recommit any changes. It's slow, frustrating, and makes my skin crawl.
The app is just a div, could be placed anywhere, including a wiki. Certainly, worth a look, we give the Confluence folks a free license actually, not sure if they ever used it. Maybe you should give them a nudge :).
Apart from that, this app is really awesome. I also like how it automatically choses my language.
This study is obviously not comprehensive, especially regarding current UIs. I just want to encourage you to consider it an area for potential innovation, one where further study with a sizeable pool of novice users would be worthwhile.
.
Don't really want to get into us storing the diagrams since we don't want to charge for this. But maybe we could look at storing just the raw XML, that would be pretty cheap on Amazon, even for a lot of diagrams.
Good point with the bookmarking, we want the tab to show the drawing name, but that BM isn't helpful. We'll look it that.
Nice work!
You can technically put your own images in nodes currently, but the UI isn't explicit about how to do it. If you right click on a node, select format->style, the style string of the shape comes up. So pasting in "shape=image;image=http://www.jgraph.com/images/plug-image.png (not the quotes) puts a pretty plug in there.
But yes, you're quite right, we need to expose an easy way to do this on the UI
Deleted comment
Questions:
(1) Are you using ExtJS, GWT, jQuery?
(2) What's on the backend?
(3) How will you make money from this?
(4) Since your source code is out in the open, do you have the (a) will and (b) resources to sue people in far corners of the world who will simply copy your js file, make a few tweaks and set up a competing business (assuming you have an answer to (3) above)?
Regardless of your answer to (4), I assume the problems inherent in that issue are the same reasons more people don't build businesses on the basis of a client-side js file.
1) ExtJS for the application bits, but that's only about 500 lines of code at the top. The drawing canvas is 25k lines raw JS using no framework.
2) It's Jetty, but the thing is, we barely need a backend. The whole idea of this was to do it all in the client so we have virtually zero server costs, see this <a href="http://mxgraph.blogspot.com/2011/01/mxgraphcom-business-mode....
3) We don't need to. We make a lot of money selling the drawing component, this is a project more for fun to create an online visio pretty much entirely on the client. We have the component and just thought how easy such an app would be to write and give away for free (storage is local, so doesn't cost us either). What you see took 2 weeks (OK, the component took 5 years...).
4) a) No b) No. Life's too short :).