Electron logo

Electron

Build cross platform desktop apps with JavaScript, HTML, and CSS
11.3K
9.9K
+ 1
148

What is Electron?

With Electron, creating a desktop application for your company or idea is easy. Initially developed for GitHub's Atom editor, Electron has since been used to create applications by companies like Microsoft, Facebook, Slack, and Docker. The Electron framework lets you write cross-platform desktop applications using JavaScript, HTML and CSS. It is based on io.js and Chromium and is used in the Atom editor.
Electron is a tool in the Cross-Platform Desktop Development category of a tech stack.
Electron is an open source tool with GitHub stars and GitHub forks. Here’s a link to Electron's open source repository on GitHub

Who uses Electron?

Companies
604 companies reportedly use Electron in their tech stacks, including Slack, Payhere, and Intuit.

Developers
10202 developers on StackShare have stated that they use Electron.

Electron Integrations

Sentry, WebStorm, Quasar Framework, Capacitor, and Agora are some of the popular tools that integrate with Electron. Here's a list of all 22 tools that integrate with Electron.
Pros of Electron
69
Easy to make rich cross platform desktop applications
53
Open source
14
Great looking apps such as Slack and Visual Studio Code
8
Because it's cross platform
4
Use Node.js in the Main Process
Decisions about Electron

Here are some stack decisions, common use cases and reviews by companies and developers who chose Electron in their tech stack.

Needs advice
on
ElectronElectron
and
Qt5Qt5

The appropriate programming language is required to deploy GUI programs used by small people for continuous updates. I'm currently developing with PyQt, but I'm having trouble implementing the update. So when I make my next program, I want to use a development language with a lot of community or documents, which one is good, Electron or PyQt? Or are there other options such as Java or C lang?

See more
Needs advice
on
ElectronElectron
and
JavaFXJavaFX

I create desktop applications that use a database for storing data. My applications are used as management tools in supermarkets, stores, warehouses, and other places. I don't know which one to use; Electron or JavaFX. Can anyone advise me on this matter?

See more
Smith Gajjar
Senior Full Stack Developer at Tekie · | 8 upvotes · 19.4K views
Needs advice
on
.NET.NETElectronElectron
and
JavaFXJavaFX

I am building a desktop application for Windows. I have worked with Electron earlier but it doesn't seem to work on a few Windows systems, also has no support for win7. Which language/framework should be chosen to cover a wide range of Windows versions including 7 or should I stick to Electron only?

See more
Needs advice
on
ElectronElectronNode.jsNode.js
and
Raspberry PiRaspberry Pi

Kiosk App on Raspberry Pi

  • I have a personal project that I'm developing into a Kiosk app and am considering deploying it on a RaspberryPi as a semi-portable controller user interface.
  • I'm new to RaspberryPi, I know my way around Debian though, and so I've researched a few Electron tutorials on using Electron on a RaspberryPI and they seem to be what I'm looking for.
  • However, I'd love to hear your comments and suggestions in working with Electron on the RaspberryPi, in particular in Kiosk with a touchscreen for user input.
  • What's the performance like, are there memory constraints, any reliability issues I should be aware of?
  • Once the project is at a working stage I plan to open source it on my GitHub for further input and development.
  • I'm a long term JavaScript developer (since the late 90's for real I was there when JS was first released, unashamed Vanilla.JS fanboi)
  • I write for the browser and server backend environments using Web technologies and Node.js.
See more
Needs advice
on
ElectronElectron
and
RubyRuby

Hello friends. This is my first "post" here. I'm new to programming :)

Is it possible to use Electron in a web application that has Ruby on the backend?

See more
Needs advice
on
ElectronElectronUnityUnity
and
WebGLWebGL

We want to create a 3D web and desktop(Windows and macOS) application with a lot of functionalities. This is a 3D furniture customization application in which we give options to add, delete, scale, move, rotate objects. Something like a floor planner. We are also going to add AR and VR.

I am thinking about using Electron or Unity. Please recommend what should I choose for this purpose. Please consider that we have to develop for web and desktop (windows and mac) all platforms.

See more

Blog Posts

Electron's Features

  • Use HTML, CSS, and JavaScript with Chromium and Node.js to build your app.
  • Electron is open source
  • maintained by GitHub and an active community.
  • Electron apps build and run on Mac, Windows, and Linux.
  • Automatic updates
  • Crash reporting
  • Windows installers
  • Debugging & profiling
  • Native menus & notifications

Electron Alternatives & Comparisons

What are some alternatives to Electron?
Photon
The fastest way to build beautiful Electron apps using simple HTML and CSS. Underneath it all is Electron. Originally built for GitHub's Atom text editor, Electron is the easiest way to build cross-platform desktop applications.
React Native Desktop
Build OS X desktop apps using React Native.
React Native
React Native enables you to build world-class application experiences on native platforms using a consistent developer experience based on JavaScript and React. The focus of React Native is on developer efficiency across all the platforms you care about - learn once, write anywhere. Facebook uses React Native in multiple production apps and will continue investing in React Native.
React
Lots of people use React as the V in MVC. Since React makes no assumptions about the rest of your technology stack, it's easy to try it out on a small feature in an existing project.
JavaScript
JavaScript is most known as the scripting language for Web pages, but used in many non-browser environments as well such as node.js or Apache CouchDB. It is a prototype-based, multi-paradigm scripting language that is dynamic,and supports object-oriented, imperative, and functional programming styles.
See all alternatives

Electron's Followers
9879 developers follow Electron to keep up with related blogs and decisions.