TopGit
GitHub Repo Review

draw.io Desktop: Offline Diagram Editor

jgraph/drawio-desktop
DTopGit review image for jgraph/drawio-desktop
Review by Topgit.dev for jgraph/drawio-desktop, with GitHub repository stats and README context.
Quick verdict

draw.io Desktop is the offline, Electron-based build of the draw.io editor, built around keeping your diagrams off the network. Reach for it if you want a flowchart and UML tool that stores everything locally and only talks to the internet for a disableable update check. Skip it if you need vendor support with real guarantees or plan to submit code changes, since the project runs support informally and stays closed to outside contributions.

Stars
★ 62.7k
Forks
⑂ 5.8k
Language
JavaScript
License
Apache-2.0
Topic
Automation
Updated
Aug 2026
Homepage
GitHub

Understanding draw.io Desktop

draw.io Desktop is the official Electron build of the draw.io editor, packaged for offline diagramming on Windows, macOS, and Linux. It wraps the browser-based draw.io interface, used for flowcharts, UML diagrams, and other visual communication, inside a desktop application whose Content Security Policy blocks remotely loaded JavaScript. Isolation is the stated goal, not feature growth.

Core Features and Security Focus

  • Packages the core draw.io editor (jgraph/drawio, pulled in as a git submodule) inside an Electron shell built specifically for offline use.
  • Three separate Windows distribution formats: a per-machine NSIS installer, a per-user MSI installer, and a portable no-installer executable, plus a Microsoft Store (APPX) build.
  • The Content Security Policy blocks remotely loaded JavaScript and keeps the app's own network calls limited to itself.
  • The only default outbound connection is a startup check against github.com for a newer version, fetched from an S3 bucket that GitHub owns on AWS.
  • Update checks can be disabled with the DRAWIO_DISABLE_UPDATE=true environment variable or a --disable-update launch flag.
  • No diagram content or usage analytics leaves the app by default, per the README, though a diagram embedding an external image, background, or font URL will fetch that resource on open.
  • Local and session storage live in a per-user AppData-style folder rather than any cloud sync target.
How this repository's GitHub stars have grown over time. Source: star-history.com.View the star history

Installing draw.io Desktop

Prebuilt binaries live on the GitHub releases page, so most users don't need to build anything. On Windows there are three options: the NSIS draw.io-<version>-windows-installer.exe, which needs administrator rights because it drops the app system-wide under Program Files; the .msi package, which installs per-user with no admin rights required; and draw.io-<version>-windows-no-installer.exe, a portable build that skips installation entirely but won't register file-type associations. A Microsoft Store (APPX) build is also available and installs per-user without admin rights. macOS and Linux binaries sit on the same releases page, though the README doesn't spell out platform-specific install steps beyond that. Building from source means cloning recursively (git clone --recursive, since draw.io itself is a git submodule), running npm install, then npm start from the project root; personal-use builds are documented separately in doc/BUILDING_FOR_PERSONAL_USE.md.

Advantages of Using draw.io Desktop

  • Network access is locked down by default: the CSP blocks remotely loaded JavaScript, and the only outbound call is a disableable update check.
  • Windows installs cover different privilege situations: per-machine NSIS, no-admin MSI, or a fully portable build.
  • Apache-2.0 licensing permits commercial use, as-is.
  • Disabling the update check is a single environment variable or launch flag, useful for centrally managed fleets.
  • The README documents exactly where local and session data land on disk, on both macOS and Windows.

Important Considerations

  • Support runs through the GitHub repo only, on what the README calls a 'reasonable business constraints basis' with nothing contractually binding, and there's no private ticketing for non-paying users.
  • A draw.io for Confluence or Jira purchase doesn't extend to commercial support for the desktop build, per the README.
  • The project doesn't take outside code contributions; the README says a submitted PR would likely be rewritten from scratch rather than merged, given how easily changes break other parts of the app.
  • A diagram that points to an external image, a background picture, or a font file by URL still fires a network request when opened, which can expose your IP address to whoever hosts that file.
  • The isolation claim has one built-in exception: the update process itself reaches out to github.com and an S3 bucket on AWS unless you turn it off.
View on GitHubHomepage

Exploring Other Diagramming Solutions

draw.io — the browser editor (jgraph/drawio) this desktop build wraps; use it directly if you don't need offline storage or want it embedded in Confluence or Jira.Excalidraw — an open-source sketching and whiteboard tool with a hand-drawn look, aimed more at quick wireframes and brainstorming than formal UML or network diagrams.drawdb — a narrower, database-schema-focused diagramming tool rather than draw.io Desktop's general-purpose editor.next-ai-draw-io — an AI-assisted interface layered on top of draw.io's editor, for generating diagrams instead of drawing them by hand.

Common Questions About draw.io Desktop

Can I use draw.io Desktop for commercial purposes?

Yes: draw.io Desktop is licensed under Apache-2.0, and the README's own FAQ confirms you can use it for any purpose, commercial included, as long as you leave the code unmodified and accept it as-is.

Does draw.io Desktop transmit my diagram data online?

By default, no diagram content or usage analytics leaves the app, per the README. The one exception is a diagram embedding an external image, background, or font URL, which gets fetched when that diagram is opened.

Are administrator rights required to install draw.io Desktop on Windows?

Only for the NSIS installer, which installs per-machine into Program Files. The MSI package and the portable no-installer build both install per-user without admin rights.

Is draw.io Desktop open for community code contributions?

No: the README states the project is closed to outside code contributions except in rare cases a maintainer permits, citing how much testing even small changes require.

Where does draw.io Desktop store user data?

Local and session storage sit in ~/Library/Application Support/draw.io on macOS and C:\Users\<USER-NAME>\AppData\Roaming\draw.io\ on Windows, per the README.

How do I disable automatic updates in draw.io Desktop?

Configure DRAWIO_DISABLE_UPDATE=true as an environment variable, or supply --disable-update when starting the application; both are documented in the README for centrally managed installs.

The problem it solves

Most browser-based diagram editors assume it's fine to route your flowcharts through a vendor's servers for storage, account login, or sync. draw.io Desktop exists for people who can't accept that trade-off: someone on a machine without an approved SaaS allowlist, an air-gapped workstation, or a developer who just doesn't want diagram content leaving the laptop. It takes the same draw.io editor used in the browser and wraps it in a desktop shell whose network access the README says is deliberately locked down to one thing: a startup check for updates.

Best use cases

  • Diagramming on a locked-down or air-gapped machine where a browser tool that phones home isn't acceptable.
  • Running flowcharts and UML diagrams locally without a Confluence or Jira plugin license, since the README notes that purchase doesn't cover desktop support anyway.
  • Handing a portable, no-install build to non-admin users on shared or managed Windows machines.
  • Locking update checks off entirely across a centrally managed fleet with the DRAWIO_DISABLE_UPDATE variable.

Who should try it — and who should skip

Try draw.io Desktop if you want a flowchart and UML editor that keeps diagrams on disk and off the network by default, especially on Windows where the MSI or portable build sidesteps admin rights entirely. Skip it if you need support with real guarantees or want to contribute code upstream — the README is explicit that support is informal and the project doesn't merge outside pull requests.

Related repositories

Source & attribution

Facts and quotes sourced from the jgraph/drawio-desktop GitHub repository and its README.

GitHub data · last synced Aug 14, 2026Reviewed by Henry
Back to TopGit

Want a second opinion on drawio-desktop?

Ask an AI that can read this page — one click and you get its take on drawio-desktop.

GitHub