Release of Electron 12.0.0, a platform for building applications based on the Chromium engine

The release of the Electron 12.0.0 platform has been prepared, which provides a self-sufficient framework for developing multi-platform user applications based on Chromium, V8 and Node.js components. The significant version number change is due to updates to the Chromium 89 codebase, the Node.js 14.16 framework, and the V8 8.9 JavaScript engine.

In the new release:

  • The transition to the new LTS branch of the Node.js 14 platform has been made (the 12.x branch was previously used).
  • A new webFrameMain API has been added to allow access from the main process to information about RenderFrames running on separate WebContents instances. The webFrameMain API is equivalent to the webFrame API but can be used from the main process.
  • Added BrowserWindow.isTabletMode() and win.setTopBrowserView() methods to the BrowserWindow API, as well as the webPreferences.preferredSizeMode parameter and the system-context-menu, resized (Windows/macOS), and moved (Windows) events.
  • By default, the contextIsolation and worldSafeExecuteJavaScript settings are enabled, which enable additional isolation and protection mechanisms when executing JavaScript.
  • The crashReporter.start({ compress }) setting is enabled by default. Removed deprecated crashReporter API.
  • Provided the ability to access non-object APIs through the exposeInMainWorld method in contextBridge.
  • Separate elements of the chrome.management API have been added to the add-on development API.
  • The obsolete "remote" module has been replaced with "@electron/remote".

Recall that Electron allows you to create any graphical applications using browser technologies, the logic of which is defined in JavaScript, HTML and CSS, and the functionality can be extended through the system of add-ons. Developers have access to Node.js modules, as well as an extended API for creating native dialogs, integrating applications, creating context menus, integrating with the notification display system, manipulating windows, and interacting with Chromium subsystems.

Unlike web applications, Electron-based programs are delivered as self-contained executables that are not tied to a browser. At the same time, the developer does not need to worry about porting the application for various platforms, Electron will provide the ability to build for all systems supported in Chromium. Electron also provides tools to organize automatic delivery and installation of updates (updates can be delivered either from a separate server or directly from GitHub).

Of the programs built on the basis of the Electron platform, one can note the Atom editor, the Nylas and Mailspring mail clients, the GitKraken toolkit for working with Git, the WordPress Desktop blogging system, the WebTorrent Desktop BitTorrent client, as well as official clients for services such as Skype, Signal , Slack, Basecamp, Twitch, Ghost, Wire, Wrike, Visual Studio Code and Discord. In total, 1016 applications are presented in the Electron software catalog. To simplify the development of new applications, a set of sample demo applications has been prepared, including code examples for solving various problems.

Source: opennet.ru

Add a comment