Electron | Pros And Cons
Electron is a framework which lets us build Desktop Apps using web technologies (HTML, CSS, JS).
Isn’t it amazing! When I first got to know about Electron I was surprised. People like HTML, CSS and JS so much that they have now built many frameworks to do many things like building Desktop Apps and Mobile Apps.
If you are hearing about it the first time then you might be thinking that I am joking. The same thing happened with me but its true! I wasn’t knowing that Atom and Visual Studio Code the two code editors which I used everyday were made using Electron! In fact Electron was originally made for developing Atom.
Many of you would be very eager till now thinking what you can do with it but wait, every thing which has pros has some cons. So, in this post I will be telling you about the pros and cons of Electron.
1. HTML, CSS, JS
Of course this is the most important point. It is amazing that you can now build Desktop Apps using these languages as it is very easy to learn and use them.
2. Electron Apps Are Similar To Web Apps
Part of what makes Electron Apps a good alternative to a native desktop app is the fact that Electron apps behave like Web Apps. What sets them apart is that Web Apps can only download files to the computer’s file system but Electron Apps can access the file system and can also read and write data.
Electron uses Chromium engine for rendering UI. This means that you can get several benefits from this like Developer Tools, Storage Access, etc.
1. Size Matters
As you all know that Electron Apps run on Chromium, this means that each and every Electron App comes with its own version of Chromium. More worse Chromium is made of 20 million lines of code which is nearly the size of a whole Operating System! So it is like installing a whole Operating System on top of other for running a single app! For example a simple “Hello World” app on Electron would need more than 100mb of space.
2. Code Protection
Who will not like their code to be safe and by safe I mean ‘not getting stolen’. The files aren’t encrypted which means that anyone can get a working copy of the code.
3. Cross Platform Builds, Really?
Yes its true. You will have to make your app cross platform. It won’t become cross platform on its own.
If your app has native dependencies, it can be compiled only on the target platform. For example macOS code Signing works only on MacOS.
I still think Electron is great but only for making bigger apps for example you shouldn’t use Electron to make an very simple app! It will be just waste of space.