drawio-github

draw.io GitHub Integration

Please read this for a high-level introduction.

GitHub support is now available https://app.diagrams.net/?mode=github

An example for integration into GitHub wikis is available here: https://github.com/jgraph/drawio/wiki/Embed-Diagrams

Diagram

Edit Edit As New Edit with draw.io

edit-diagram.html does the I/O with GitHub and uses draw.io in embed mode for diagram editing. The page supports the following URL parameters: user, pass, repo, path, ref and action=open (the Edit link above is an example). Using action=open, links for immediate diagram editing in GitHub can be created (requires user and pass parameters). You can also use files on GitHub as templates in draw.io via the url parameter (see Edit As New above).

Supported file formats: .png, .svg, .html and .xml (default)

Dark Mode

SVG dark mode support

Self-editing SVG file

Self-editing Diagram

self-editing.svg is an SVG file with embedded PNG data (as a workaround for missing foreignObject support in Internet Explorer). This combines an image format (eg. for <img src=”…”) with scripting for GitHub integration. (Click on the link, not the image to enable editing.)

Self-editing HTML file

self-editing.html is a HTML file with embedded diagrams. The file uses nanocms.js for GitHub I/O and diagram editing, and Bootstrap and nanocms.css for some fancy CSS styles. HTML is used as a container for mutiple diagrams in different formats, including inline SVG with links.