If you are interested in using Web Development skills for developing apps for different desktop platforms like Windows, Linux or macOS, Electron is the perfect framework that suits your needs. Let’s start with a brief introduction to Electron.
ElectronJS: Electron was developed lately in 2013 by the open-source and version control giant, GitHub. Electron uses NodeJs in its core to serve pages built on HTML and CSS as a desktop app. This implies that developers comfortable in HTML5 or Android Development can easily switch their platform to Electron.
The Electron app may be categorized into two main processes, namely, Main and Renderer process.
Performing Culture: There are two process in the Electron performing Culture:
BrowserWindowinstances. Individual BrowserWIndow instance renderes a webpage in its renderer process. Destroying a BrowserWindow instance implies that the corresponding renderer process is also terminated.
Electron supports various APIs for both the main and renderer processes, which helps to interact with the desktop operating system and its resources.
Prerequisites: The main prerequisites which may be considered important for starting on with Electron are listed below.
- HTML and CSS for User Interface.
- Node.js and npm
Installing Electron: Let’s start with the building blocks of development with Electron.
npm install electron --save-dev
will download necessary node_modules, required by electron to render a page.
npm run start, start being the script which we have defined in package.json.
- Frameless Window in ElectronJS
- Inter-Process Communication (IPC) in ElectronJS
- Custom Notifications in ElectronJS
- Desktop Operations in ElectronJS
- Network Logging in ElectronJS
- File Upload in ElectronJS
- Integrate Angular 7 with ElectronJS
- Custom Messages in ElectronJS
- Hot Reload in ElectronJS
- Generate PDF in ElectronJS
- Save Files in ElectronJS
- Printing in ElectronJS
- Prevent System from Entering Sleep mode in ElectronJS
- Dynamic Styling in ElectronJS
- How to Find Text on Page in ElectronJS ?
- Clipboard API in ElectronJS
- Monitor System Power States in ElectronJS
- Drag and Drop Files in ElectronJS
- Managing Themes in ElectronJS
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to email@example.com. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.