


Most of Electron's APIs are written in C++ or Objective-C and then exposed directly to the application code through JavaScript bindings. menus, shell commands, lifecycle events), and can then launch multiple renderer processes by instantiating an instance of the BrowserWindow class, which loads a window that appears on a user's screen rendering HTML and CSS.īoth the main and renderer processes can run with Node.js integration if the nodeIntegration field in the main process is set to true The main process runs the logic for the application (e. There is the "main" process and several "renderer" processes.

Įlectron applications comprise multiple processes. Electron is the main GUI framework behind several open-source projects including Atom, GitHub Desktop, Light Table, Visual Studio Code, WordPress Desktop, and Eclipse Theia. Additionally, it also uses various APIs to allow things such as native integration with Node services, and an Inter-process communication module. The framework is designed to create desktop applications using web technologies (mainly HTML, CSS, and JavaScript, though other technologies such as frontend frameworks and Web Assembly are possible) which are rendered using a flavor of the Chromium browser engine, and a backend using the Node.js runtime environment. C++, JavaScript, Objective-C++ and Objective-CĮlectron (formerly known as Atom Shell ) is a free and open-source software framework developed and maintained by GitHub.
