Electron logo

Electron

Build cross platform desktop apps with JavaScript, HTML, and CSS
9.8K
8.9K
+ 1
140

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
562 companies reportedly use Electron in their tech stacks, including Slack, Intuit, and Bepro Company.

Developers
8950 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 21 tools that integrate with Electron.
Pros of Electron
66
Easy to make rich cross platform desktop applications
51
Open source
13
Great looking apps such as Slack and Visual Studio Code
7
Because it's cross platform
3
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.

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
Shared insights
on
ElectronElectron

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
Shared insights
on
UnityUnityElectronElectronmacOSmacOSWindowsWindows

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
Dieudonné ALLOGNON
Junior Fullstack Developer · | 5 upvotes · 178.3K views

Hey! I am actually in internship and have an app to create for my structure. It will be an intern app which will allow crud dashboard actions with some data provided by the use of an API of one of the structure partner and make a correspondence to data contained in a private database. Since it's an intern app, I thought about Electron for a desktop app because I did a lot of web with Laravel and the structure goes more for the desktop app. But it will be my first occasion working with this tech.

Is Electron a good choice? Wich ORM should be more complete and adapted to this between Sequelize and TypeORM? (Database will be MySQL) Some charts will be displayed in the app. Is there a library (preferably without jQuery) that suits this stack?

Thank you !

See more

I would like to share my stack in Web/Mobile application Development for Mid Sized Applications.

Project-1 : Laravel + jQuery + Android Java + IOS Swift

Project-2 : Node.js + React + React Native + Electron.

This is my current Stack, Can you comment on my selection and add your thoughts if my choice is a perfect match? Thanks

See more
Fernando Albertengo

I'm currently doing some research to build a full cross-platform system that our personnel will use for various management and selling purposes, this is just a first step to migrate (and clean, lots of cleaning) a gigantic and obsolete system made in Java 7 with a nightmarish coupling between logic and view layers.

Since the system itself is considerably large, we are currently migrating the essential modules of its logic to an ExpressJS driven Restful API.

As a complementary project, I must find a way to share the highest possible amount of view code while achieving said cross-platform capacity.

My approach is the following:

  • Angular 7+ and Ionic 5 for Android and iOS.
  • Angular 7+ for the web.
  • Angular 7+ and Electron for Desktop.

While Angular is the common part, and considering that Ionic can work on any platform, i'm wondering what is the best way to achieve a non-conflicting integration of Electron.js to the very-commonly-used Angular+Ionic Stack for both Mobile and Web development?

I've stumbled with a quite good template build called Polyonic but I would love to hear more about the matter before taking such a long-lasting decision.

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.
JavaFX
It is a set of graphics and media packages that enables developers to design, create, test, debug, and deploy rich client applications that operate consistently across diverse platforms.
See all alternatives

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