If you are trying to use JavaScript to build a desktop app, chances are you have at least considered using Electron. Released by GitHub in 2013 for their Atom editor, Electron has been used by many massive companies like Microsoft, Discord, and Slack. Is electron JS worth learning? Electron basically just gives you a window management API and a few bells and whistles here and there. There's not much to learn. That being said, you would need a fair amount of NodeJS skills (for doing what web apps in the browser can't) and a good bit of front-end development skills (for the UI). Is Electron an API? This is a desktop app that interactively and with sample code demonstrates core features of the Electron API. It's built with Electron, too, of course. This app works on Windows, macOS and Linux operating systems. Why Electron? Electron enables you to create desktop applications with pure JavaScript by providing a runtime with rich native (operating system) APIs. This does not mean Electron is a JavaScript binding to graphical user interface (GUI) libraries. Instead, Electron uses web pages as its GUI, so you can also see it as a minimal Chromium browser, controlled by JavaScript. So all the electron apps are technically web pages running in a browser that can leverage your OS APIs. Who Uses Electron? Github developed Electron for creating the text editor Atom. They were both open sourced in 2014. Electron is used by many companies like Microsoft, Github, Slack, etc. Electron has been used to create a number of apps. Following are a few notable apps − Slack desktop Wordpress desktop app Visual Studio Code Caret Markdown Editor Nylas Email App GitKraken git client. Electron Tutorials Guide Electron - Overview Electron - Installation How Electron work? Electron - Hello World Electron - Building UIs Electron - File Handling Electron - Native Node Libraries Inter-Process Communication(IPC) Electron - System Dialogs Electron - Menus Electron - System Tray Electron - Notifications Electron - Webview Electron - Audio & Video Capturing Electron - Defining Shortcuts Electron - Environment Variables Electron - Debugging Electron - Packaging Apps Electron - Resources