Overview of Electron JS and it's Purpose
Electron is a popular open-source framework that allows developers to build cross-platform desktop applications using web technologies such as JavaScript, HTML, and CSS. It was first developed and open-sourced in 2013 by GitHub, and since then, it has gained a significant following among developers for its ease of use and versatility.
The purpose of Electron is to provide a way for developers to create desktop applications that can run on Windows, macOS, and Linux using a single codebase. This eliminates the need for developers to write separate code for each operating system, which can be a time-consuming and costly process. With Electron, developers can write their code once and then package it for distribution on multiple platforms.
One of the key features of Electron is its use of Chromium, the open-source web engine that powers Google Chrome, as its rendering engine. This allows developers to leverage the power of web technologies to create desktop applications that are fast, responsive, and feature-rich. Additionally, Electron provides a built-in JavaScript runtime, Node.js, which allows developers to access the operating system's file system, as well as other functionality, from within their applications.
Some popular examples of Electron-based applications include Visual Studio Code, Slack, and GitHub Desktop. These applications are used by millions of people daily, and they demonstrate the power and versatility of the Electron framework.
Benefits of Electron
- Cross-Platform Compatibility
One of the biggest benefits of Electron is its cross-platform compatibility. As previously mentioned, developers can write their code once and then package it for distribution on multiple platforms. This eliminates the need for developers to write separate code for each operating system, which can be a time-consuming and costly process.
- Access to Native Functionality
Electron provides developers with access to native functionality, such as the file system, through its built-in JavaScript runtime, Node.js. This means that developers can create desktop applications that can perform tasks such as reading and writing files, as well as accessing other system-level functionality.
- Large and Active Community
Electron has a large and active community of developers who contribute to the framework and provide support to others. This means that developers can find answers to their questions and solutions to their problems quickly, which can be a major benefit when working on a project. Additionally, the community is constantly working to improve the framework and add new features, which means that Electron is continually evolving and improving.
- Large Number of Available Libraries
Electron also has a large number of available libraries that developers can use to add functionality to their applications. These libraries can be used to add features such as notifications, file dialogs, and more, which can save developers a significant amount of time and effort.
How to Get Started with Electron
- Install Node.js
The first step in getting started with Electron is to install Node.js, as Electron is built on top of Node.js. This can be done by visiting the Node.js website and downloading the installer for your operating system.
- Install Electron
Once Node.js is installed, you can install Electron by running the following command in your terminal:
npm install -g electron
- Create a New Electron Project
To create a new Electron project, you can use the Electron boilerplates, which provides a basic template for an Electron application.
hear is the list of some useful electron boilerplates
- electron-quick-start (10k stars) : A basic starter project that demonstrates how to build an Electron app using JavaScript, HTML, and CSS.
- electron-react-boilerplate (20k stars): A boilerplate for building Electron apps with React.
- electron-vue-boilerplate: A boilerplate for building Electron apps with Vue.js.
- electron-nextjs-boilerplate: A boilerplate for building Electron apps with Next.js.
- electron-forge: A tool for creating, publishing, and managing Electron projects.

.png)