We stand with Ukraine to help keep people safe. Join us
EN
When you purchase through links on our site, we may earn an affiliate commission

Electron for Mac

Build cross-platform apps with JS, HTML, and CSS.

Free
In English
Version 44.3.0
3.0
Based on 2 user rates

Electron overview

Electron makes it easier than you think. If you can build a website, you can build a desktop app. Electron is a framework for creating native applications with web technologies like JavaScript, HTML, and CSS. It takes care of the hard parts so you can focus on the core of your application.

Features
  • Web Technologies Electron uses Chromium and Node.js so you can build your app with HTML, CSS, and JavaScript.
  • Open Source - Electron is an open source project maintained by GitHub and an active community of contributors.
  • Cross Platform - Compatible with Mac, Windows, and Linux, Electron apps build and run on three platforms.

What's new in version 44.3.0

Features
  • Added the ELECTRON_DEBUG_DRAGGABLE_REGIONS environment variable, which visualizes and logs draggable regions in unpackaged apps to help debug custom title bars. #53627 (Also in 43, 45)
Fixes
  • File System Access permission requests and the file-system-access-restricted event are scoped to the requesting document, grants are reset when the origin's last page closes, and write access works in in-memory sessions. #53691 (Also in 42, 43, 45)
  • Fixed Ctrl+Y not yanking text killed with Ctrl+K in text fields on macOS. #53714 (Also in 45)
  • Fixed Tray icons not appearing when running inside Flatpak or Snap sandboxes on Linux. #53653 (Also in 45)
  • Fixed app.getGPUInfo('complete') stalling the GPU process for several seconds on some Windows systems. #53644 (Also in 45)
  • Fixed session.setPermissionCheckHandler receiving the top-level origin and a null webContents for hid and usb checks made from a subframe. #53688 (Also in 42, 43, 45)
  • Fixed webContents.on(), removeListener() and removeAllListeners() throwing "Object has been destroyed" for console-message listeners after the WebContents was destroyed. #53494 (Also in 42, 43, 45)
  • Fixed a crash on Linux when process.env was written while another thread was reading the environment, and a memory leak when a worker thread exits. #53509 (Also in 42, 43, 45)
  • Fixed a possible crash on Windows when a file dialog was shown for a window that was being closed at the same time. #53583 (Also in 42, 43, 45)
  • Fixed a renderer crash when the main process sent IPC to, or a page navigated, a same-process window.open() child whose contextIsolation differed from its opener's. #53539 (Also in 42, 43, 45)
  • Fixed a spurious node_init error being logged when creating a ShadowRealm with Node.js integration enabled. #53579 (Also in 45)
  • Fixed crashes in setDisplayMediaRequestHandler when the granted frame had been destroyed or another tab was granted by id. #53672 (Also in 42, 43, 45)
  • Fixed several non-functional DevTools integrations: the Security panel's "View certificate" button, Ctrl+wheel zooming inside DevTools, and DevTools keyboard shortcuts (e.g. F8) while the inspected page has focus. #53630 (Also in 43, 45)
  • Fixed window state not being persisted when a window entered or left fullscreen, or was maximized or unmaximized, without also being moved or resized. #53576 (Also in 45)
  • Internal , window.close() and executeJavaScript reply IPCs are validated against the sending frame. #53723 (Also in 42, 43, 45)
  • without allowpopups also blocks links opened into a new window by modifier-click, and such windows navigate as the clicking document rather than as a browser-initiated load. #53721 (Also in 42, 43, 45)
  • getUserMedia with chromeMediaSource: 'desktop' no longer accepts WebContents source ids; use chromeMediaSource: 'tab' with webContents.getMediaSourceId() or setDisplayMediaRequestHandler to capture a WebContents. #53709 (Also in 42, 43, 45)
  • nodeIntegrationInWorker now applies only to workers created by frames that themselves have Node integration; enable nodeIntegrationInSubFrames to keep Node in workers created by subframes. #53711 (Also in 42, 43, 45)
  • openExternal permission requests started by a frame that has since gone away are attributed to that frame's origin rather than to the navigating page. #53699 (Also in 42, 43, 45)
  • pointerLock and keyboardLock permission requests now report the requesting frame, and execCommand('paste') requires user activation in the frame that calls it. #53693 (Also in 42, 43, 45)
Other Changes
  • Fixed the app becoming unresponsive when a page has a very large number of app-region draggable elements. #53597 (Also in 43, 45)
  • Updated Chromium to 152.0.7977.78. #53523

Electron for Mac

Free
In English
Version 44.3.0
Write a detailed review about Electron

Write your thoughts in our old-fashioned comment

MacUpdate Comment Policy. We strongly recommend leaving comments, however comments with abusive words, bullying, personal attacks of any type will be moderated.
3.0

(3 Reviews of Electron)

  • Comments

  • User Ratings

Iliketrash
Iliketrash
Feb 8, 2026
40.2.1
0.0
Feb 8, 2026
0.0
Version: 40.2.1
For all of its advantages for cross-platform programs, Electron is probably the primary source of code bloat. IEEE Spectrum ran an article on software security with emphasis that programmers use vast amounts of code for which security is unknown. As a corollary to this discussion, the author discussed code bloat and the garage door opener that takes 50 million lines of code.
Mcr
Mcr
Dec 24, 2025
39.2.7
0.0
Dec 24, 2025
0.0
Version: 39.2.7
For many years developers complained about managing system wide libraries and packages supporting multiple apps, Linux for example. One app requires version xx.yy of package A, another requires version xx.zz. So then now we have flatpacks and appimages and snap packages, but then complaints of duplicated and wasted disk space for redundant code that for the most part is the same for everyone, as is the case with Electron apps. Centralized system wide architectures like Java have the issue that if something breaks, they ALL break, and who governs or 'owns' the standard, what gets in/out, fixed. No perfect solution. Personally, I think the convenience of quickly buidling cross platform apps outweighs the overhead, IF cross platform is important to you.
Aargl
Aargl
Dec 22, 2023
28.0.0
0.0
Dec 22, 2023
0.0
Version: 28.0.0
As a user: The trouble with Electron based apps is that you end up with wasted GB of duplicate frameworks, if you use many such apps. I've tried symlinking them to have only one copy of Electron somewhere but it doesn't work. It would be nice to have an option to install it system wide, like Java.
Simon3
Simon3
Feb 4, 2024
28.2.0
1.0
Feb 4, 2024
1.0
Version: 28.2.0
Sandro-Bilbeisi
Sandro-Bilbeisi
Oct 22, 2021
1.0.0
5.0
Oct 22, 2021
5.0
Version: 1.0.0