Need advice about which tool to choose?Ask the StackShare community!
Electron vs Qt5: What are the differences?
Electron: Build cross platform desktop apps with web technologies. Formerly known as Atom Shell, made by GitHub. 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; Qt5: *A free and open-source widget toolkit *. It is a full development framework with tools designed to streamline the creation of applications and user interfaces for desktop, embedded, and mobile platforms.
Electron and Qt5 belong to "Cross-Platform Desktop Development" category of the tech stack.
Some of the features offered by Electron are:
- 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.
On the other hand, Qt5 provides the following key features:
- full development framework
- Internationalization support
- embedded toolchains
Electron is an open source tool with 75.9K GitHub stars and 9.94K GitHub forks. Here's a link to Electron's open source repository on GitHub.
According to the StackShare community, Electron has a broader approval, being mentioned in 291 company stacks & 1933 developers stacks; compared to Qt5, which is listed in 4 company stacks and 3 developer stacks.
Pros of Electron
- Easy to make rich cross platform desktop applications66
- Open source51
- Great looking apps such as Slack and Visual Studio Code13
- Because it's cross platform7
- Use Node.js in the Main Process3
Pros of Qt5
- Fast enough1
- Very good documentation1
- C++1
- Open source1
- Cross platform1
- Easy to learn and use1
Sign up to add or upvote prosMake informed product decisions
Cons of Electron
- Uses a lot of memory18
- User experience never as good as a native app8
- No proper documentation4
- Does not native4
- Each app needs to install a new chromium + nodejs1
- Wrong reference for dom inspection1