- Use the scratchpad or create a new library by clicking File, New Library
- Once the library appears in the sidebar, you can drag and drop cells and images from the diagram or your harddrive
- Supported image formats are PNG, JPG, SVG and GIF (including animated GIFs). If you are adding SVG files, you can make the colors of the SVG configurable using this method: https://www.drawio.com/doc/faq/svg-edit-colours
- When all elements have been added, click the pen icon, add titles to the entries and click Export
- This will download the library file to your computer
- To share it, the file must be uploaded to the web and made available via a public URL. One way to do this is to upload it to a public GitHub repository.
- If you are using GitHub, use the RAW URL of the library which is of the form https://raw.githubusercontent.com/ORG/REPO/REF/PATH/FILENAME.xml, eg. https://raw.githubusercontent.com/jgraph/drawio-libs/master/libs/templates.xml
- Once you have the URL of the library, you can share it by encoding the URL and adding it the clibs parameter. To encode the URL, paste it into the text box at https://jgraph.github.io/drawio-tools/tools/convert.html and click URL Encode. For our example, this will yield https%3A%2F%2Fjgraph.github.io%2Fdrawio-libs%2Flibs%2Ftemplates.xml
- Then add this to https://app.diagrams.net/?splash=0&clibs=U, eg. https://app.diagrams.net/?splash=0&clibs=Uhttps%3A%2F%2Fjgraph.github.io%2Fdrawio-libs%2Flibs%2Ftemplates.xml (where splash=0 bypasses the splash screen). Multiple libraries can be specified by separating them with semicolons. Each value must be prefixed with a U if it's a URL, eg. https://app.diagrams.net/?splash=0&clibs=Uhttps%3A%2F%2Fjgraph.github.io%2Fdrawio-libs%2Flibs%2Fun-ocha-icons-bluebox.xml;Uhttps%3A%2F%2Fjgraph.github.io%2Fdrawio-libs%2Flibs%2Fun-ocha-icons.xml
- You can then share this link and clicking on it will open and install your custom libraries in draw.io
Libraries consist of an enclosing <mxlibrary>
node containing a JSON array, which in turn contains entries with either an xml
property with a compressed or uncompressed mxGraphModel or a data
property with an image data URI (in PNG, JPG or SVG). All entries must have a w
and h
property for the width and height of the cell(s) or image in the entry and an optional title
property for the title in the sidebar and preview. For entries with a data
property, an optional "aspect": "fixed"
may be specified to add aspect=fixed
to the style of the image cell, and an optional style
attribute can be specified to be added the default style of the image cell. Eg. for "data": "data:image/png,[...]", "aspect": "fixed", "style": "resizable=0;rotatable=0;"
the resulting cell style will be shape=image;verticalLabelPosition=bottom;verticalAlign=top;imageAspect=0;aspect=fixed;image=data:image/png,[...];resizable=0;rotatable=0;
For uncompressed xml
properties, <
must be writter as <
, >
must be written as >
and "
must written as \"
(escaped), eg. "xml": "<mxGraphModel><root><mxCell id=\"0\"/><mxCell id=\"1\" parent=\"0\"/><mxCell id=\"2\" value=\"Test3\" style=\"whiteSpace=wrap;html=1;fillColor=#ffffff;strokeColor=#000000;\" vertex=\"1\" parent=\"1\"><mxGeometry width=\"120\" height=\"60\" as=\"geometry\"/></mxCell></root></mxGraphModel>"
The compressed XML may be obtained by clicking on the Encode button at https://jgraph.github.io/drawio-tools/tools/convert.html, eg. "xml": "jVBLDoMgED3N7BE2XVdbV131BKROhASE4LTq7TsVWuPCpAuS95lH3gyo2s9t0tHcQocO1AVUnUKgjPxco3Mghe1ANSCl4AfyeuBWqyuiTjjQPwGZAy/tnpiVLIy0uCJwwMaRyXkylvAe9ePjTNyZNUOeSzcVw5D00GP5EBPhfFhqlUqjFoNHSguPTLYjkydOubcwaHtDe02Pmfe/5LYhg7Lkl27HXL3drd8="
- Templates: A sample library with basic building blocks for technical diagrams. The Comic template needs Humor Sans.
- UN-OCHA Icons: United Nations Office for the Coordination of Humanitarian Affairs (OCHA) Humanitarian Icons 2012.
- Genogram: A library with icons for genograms (also known as family diagrams).
- DigitalOcean: A library with icons for DigitalOcean resources (scraped from https://do.co/diagram-kit and https://www.digitalocean.com/press).
- WARNING: No license is given by DO for these icons. Use at your own risk!
- Apache Foundation logos: The icon set by Cir02 of Apache foundation logos.
- Checkout & Delivery Icons: The icon set by EpicPxls contains 35 icons depicting various actions and entities for the common checkout process on an e-commerce site.
- OSA Icons: Open source free technical icons to create security architecture or other technical drawings Open Security Architecture/.
- Flat Color Icons: A set of colorful flat icons.
- Voyage Icons: 40 free icons to spice up your travel agency or the airline website by PrintExpress.
- Gesture and Fingerprints Icons: 100 useful gesture and fingerprints line icons by TheSquid.
- Material Design Icons: Material design icons are the official icon set from Google that are designed under the material design guidelines by Google.
- Chart Icons: A set of light color chart icons.
- Windows 10 Icons: A set of Windows 10 icons.
- Gnome Icons: Network icons scheme based on Gnome Gorilla's theme.
- Font Awesome: The iconic font and CSS toolkit Font Awesome.
- Arista Icons: A set of Arista networking icons.
- Commvault Icons: A set of Commvault networking icons.
- Fortinet Icons: A set of Fortinet networking icons.
- Integration Icons: A set of MS Integration icons.
- Kubernetes Icons: A set of Kubernetes icons. Obsolete, as there is currently an integrated set in the app.
Click on a link above to open a library or go to File, Open Library from URL in draw.io and enter an URL of the form https://jgraph.github.io/drawio-libs/libs/templates.xml