Introduction to drawio-desktop
drawio-desktop is a versatile and user-friendly diagramming and whiteboarding application. Built using the Electron framework, drawio-desktop leverages the robust core of the draw.io editor. This app is perfect for users who need to create diagrams offline, with security and privacy as paramount concerns.
Free Usage
One of the standout features of drawio-desktop is its cost. Users can access the full capabilities of the app at no charge, as it is licensed under the Apache 2.0 license. This allows users to use the software for any purpose as long as they do not modify the code and agree to its "as-is" condition.
Security Features
Security is at the forefront of drawio-desktop's design. The app operates in an isolated environment, meaning it does not interact with the internet during normal operations. The only exception is during the update process, where it checks for updates from GitHub and downloads them securely. To enhance security, the app does not execute code from external sources, reducing the risk of malicious software interference.
Importantly, users can rest assured that no data from their diagrams is sent outside the app. Additionally, drawio-desktop does not collect or report usage analytics, ensuring user privacy. However, this means that certain functions that lack a JavaScript implementation, such as importing .vsd and Gliffy files, are not available in the desktop version.
Support and Assistance
Support for drawio-desktop is provided under general business practices, which means it is available but not guaranteed through any contractual agreement. All support is available through the project’s GitHub repository, without any private support option.
If a user purchases draw.io integrations for Atlassian's Confluence or Jira through Seibert Media, they should note that this does not include commercial support for the desktop app, as Seibert Media does not contribute to this particular project.
Development and Contribution
For those interested in developing or debugging, drawio-desktop is accessible through GitHub. Developers need to clone the repository recursively due to the app's structure, which involves draw.io as a submodule. Once they have access, developers can set up the environment and run the app using npm commands.
However, it's essential to understand that the project is closed to external contributions. The developers appreciate bug reports, feature requests, and community feedback, but they have decided to maintain the project's integrity by keeping development in-house. This approach is due to the project's complexity and the extensive testing required for even minor changes.
Releasing and Maintenance
Releasing new versions of drawio-desktop involves a series of steps, including updating the draw.io submodule, completing builds, and ensuring proper signing and uploading of files. The release process is methodically documented, ensuring that updates are rolled out efficiently and securely.
The app stores data in a local directory depending on the operating system, making it easily accessible for users who may need to manage or back up their data.
In summary, drawio-desktop is a powerful, free tool for creating diagrams with an emphasis on security and user privacy. While contributions are not open, the project benefits from community involvement and remains a valuable resource for its users.