In this section we will look at the technical terms often used in the development of Electron.

ASAR

ASAR stands for Atom Shell Archive Format (Atom Shell Archive Format), and an ASAR file is simply a.tar file, meaning that the associated text files are formatted into a separate file. And Electron can read any file in it without decompressing the entire file.

The ASAR format was created primarily to improve performance on the Windows platform.

Brightray

Simply apply LibChromiumContent to a static library in your application, the term coined specifically for Electron.

DMG

DMG refers to the MacOS disk image packaging format used on MacOS. DMG files are typically used to distribute the application’s installers. Electron-Builder supports the use of DMG as a compile target.

IPC

IPC stands for inter-process Communication. Electron uses IPC to send serialized JSON messages between the main process and the renderer process.

CRT

The CRT (or C Runtime Library) is part of the C++ standard library that includes the ISO C99 standard library. The Visual C++ library that implements it supports native code development as well as a mix of native and managed code. It is also used for purely managed code for.NET development.

IME

Input method editor, is a program that allows users to find characters and symbols that do not exist on the input keyboard. For example, users can enter Chinese, Japanese, Korean and Indian characters on a Latin keyboard.

libchromiuncontent

A separate open source library that contains Chromium modules and all dependencies.

main process

The main process, which generally means the main.js file, is the entry file to which each Electron is applied. It controls the entire App life cycle, from start to finish. It also manages the native elements of the system, such as menus, menu bars, the Dock, tray, and so on. The main process is responsible for creating each of the APP’s renderers, and the entire Node API is integrated into it.

The main process file for each APP is defined in the main property of package.json because electron.. Be able to know which file to use to launch.

native modules

Native modules (also called addons in Node.js) are modules written in C or C++ that can be loaded in Node.js or by using the require() method on Electron. It is primarily used to bridge libraries running Node.js and C/C++ on JavaScript.

Electron supports native Node modules, but Electron will most likely install a different V8 engine encoded in the Node binary, so you will need to specify the specific Electron local header file when packaging native modules.

MAS

MAS is an acronym for the Mac App Store on Apple’s system.

NSIS

NSIS is short for Nullsoft Scriptable Install System, which is a script-driven installation and production tool on Microsoft Windows platform.

process

A process is an instance of the execution of a computer program. In Node.js and Electron, each running process contains a process object. This object provides global information about the current process and its operations. As a global variable, it can be fetched anywhere in the application without require().

renderer process

The renderer process is a browser window in our application. It differs from the main process in that it can be multiple and run in different processes. They can also be hidden.

Squirrel

Squirrel is an open source framework that allows the Electron application to be automatically updated to new versions.

userland

The term “userland” or “userspace” comes from the UNIX community when programs run outside of the operating system kernel.

v8

V8 is Google’s open source JavaScript engine, written in C++ and used in the Google browser. V8 can be run standalone or embedded in any C++ application.

webview

The WebView is used to integrate guest content within our Electron application, similar to an iframe. But the difference is that each WebView runs in a separate process. It has different permissions as a page and all interactions between embedded content and application are asynchronous, which ensures that our application is secure against embedded content.