Skip to content
mxGraph is a fully client side JavaScript diagramming library
HTML JavaScript Java C# Other
Branch: master
Clone or download
David Benson [draw.io]
David Benson [draw.io] Added
Latest commit 22adca1 Nov 28, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Bump Oct 8, 2019
docs 4.0.6 release Nov 8, 2019
dotnet 4.0.6 release Nov 8, 2019
etc/build Update GruntFile.js May 14, 2018
java 4.0.6 release Nov 8, 2019
javascript 4.0.6 release Nov 8, 2019
.gitignore Added Gruntfile and package.json for npm install; updated .gitignore Oct 18, 2017
.npmignore 3.9.7 release Jun 22, 2018
CODE_OF_CONDUCT.md Added Nov 28, 2019
ChangeLog 4.0.6 release Nov 8, 2019
LICENSE Create LICENSE Oct 27, 2016
README.md Added comment regarding Java and .NET support Nov 27, 2019
index.html 4.0.6 release Nov 8, 2019
mxgraph-dotnet.sln 3.1.3.0 release Mar 5, 2015
package.json 4.0.6 release Nov 8, 2019

README.md

mxGraph

mxGraph is a fully client side JavaScript diagramming library that uses SVG and HTML for rendering. draw.io is our production-grade example that demonstrates extending the functionality of this library and how to deploy it in a secure, scalable manner. The sources to draw.io are also available.

Note this is the release repo, only each release is pushed here. The development repo is https://github.com/jgraph/mxgraph2, submit PRs there.

The PHP model was deprecated after release 4.0.3 and the archive can be found here.

If you want to build something like draw.io, GraphEditor is the best example to use as a base.

The npm build is here

mxGraph supports IE 11, Chrome 43+, Firefox 45+, Safari 10 and later, Opera 30+, Native Android browser 5.1.x+, the default browser in the current and previous major iOS versions (e.g. 13.x and 12.x) and Edge 31+.

The mxGraph library uses no third-party software, it requires no plugins and can be integrated in virtually any framework (it's vanilla JS).

Getting Started

In the root folder there is an index.html file that contains links to all resources. You can view the documentation online on the Github pages branch. The key resources are the JavaScript user manual, the JavaScript examples and the JavaScript API specificiation.

Support

There is a mxgraph tag on Stack Overflow. Please ensure your questions adhere to the SO guidelines, otherwise it will be closed.

You may post on the issues tracker on this Github project, but we expect a similar degree of input from you as Stack Overflow expects. i.e. "Please help me debug this", not "Write/Research/Architect this for me".

We do not provide commercial support. If you are not experienced in using a non-trivial vanilla JavaScript library in a web application, you will struggle using mxGraph. Writing "I am new to JavaScript" followed by "Write/Research/Architect this for me" will mean you get no answer, like everyone else. Find someone with the appropriate skillset for the task and pay/beg them to do it. We write this so your expectations of whether we might help are set before picking the project, not to be offensive.

We do not support the .NET and Java rendering functionality at all, the source code is just included in the repo for completeness. Non JavaScript rendering questions will be closed and pointed at this README.

License

mxGraph is licensed under the Apache 2.0 license. We do not sell any other license, nor do we have an option for paid support.

History

We created mxGraph in 2005 as a commercial project and it ran through to 2016 that way. Our USP was the support for non-SVG browsers, when that advantage expired we moved onto commercial activity around draw.io. mxGraph is pretty much feature complete, production tested in many large enterprises and stable for many years. We actively fix bugs and add features since it comprises the base of our draw.io stack.

You can’t perform that action at this time.