StackShareStackShare
Follow on
StackShare

Discover and share technology stacks from companies around the world.

Follow on

© 2025 StackShare. All rights reserved.

Product

  • Stacks
  • Tools
  • Feed

Company

  • About
  • Contact

Legal

  • Privacy Policy
  • Terms of Service
  1. Stackups
  2. Application & Data
  3. Frameworks
  4. Cross Platform Mobile Development
  5. Apache Cordova vs Electron

Apache Cordova vs Electron

OverviewDecisionsComparisonAlternatives

Overview

Apache Cordova
Apache Cordova
Stacks686
Followers892
Votes218
GitHub Stars955
Forks345
Electron
Electron
Stacks11.6K
Followers10.0K
Votes148

Apache Cordova vs Electron: What are the differences?

Introduction

Apache Cordova and Electron are two popular frameworks for developing cross-platform desktop and mobile applications. While both frameworks enable developers to build applications using web technologies such as HTML, CSS, and JavaScript, there are several key differences between them. Below are six major differences between Apache Cordova and Electron.

  1. Architecture: Apache Cordova is based on a hybrid architecture, where the UI is rendered inside a native WebView component, providing access to device features through plugins. On the other hand, Electron follows a web-based architecture, where the UI is rendered using Chromium and Node.js, allowing access to both local and web resources.

  2. Platform Support: Apache Cordova is primarily used for developing mobile applications and supports a wide range of platforms, including iOS, Android, Windows Phone, and more. In contrast, Electron focuses on desktop application development and primarily supports Windows, macOS, and Linux operating systems.

  3. Distribution: With Apache Cordova, applications need to be submitted to mobile app stores like the App Store or Google Play Store for distribution. On the contrary, Electron allows developers to distribute applications as standalone executables, making it easier to distribute and install desktop applications without going through an app store.

  4. Native API Access: Apache Cordova provides a vast number of plugins that allow developers to access native device features like camera, accelerometer, and contacts. In Electron, since the application runs on the user's machine, it has direct access to the native operating system APIs without the need for plugins.

  5. User Interface: Apache Cordova applications are built using HTML, CSS, and JavaScript and provide UI components that resemble native mobile interfaces. Electron, on the other hand, supports the use of web technologies but also allows developers to create native-like desktop interfaces with improved flexibility and control.

  6. Performance: Due to its hybrid architecture and reliance on a WebView component, Apache Cordova applications may suffer from performance limitations, especially for complex or resource-intensive tasks. Electron, being based on Chromium, provides better performance as it leverages the capabilities of the underlying browser engine.

In Summary, Apache Cordova and Electron differ in their architecture, platform support, distribution methods, access to native APIs, user interface capabilities, and performance characteristics. These differences make each framework better suited for specific use cases, be it mobile app development with Cordova or desktop app development with Electron.

Share your Stack

Help developers discover the tools you use. Get visibility for your team's tech choices and contribute to the community's knowledge.

View Docs
CLI (Node.js)
or
Manual

Advice on Apache Cordova, Electron

Abigail
Abigail

Dec 10, 2019

Decided

As an network mesh technology, a recurring design challenge for us is to create isomorphic (same-shaped) javascript code that supports FHIR data anwyhere... server, client, database, tooling, microcontrollers, etc. That means compiling our code to both Android and iPhone; and to both Windows and Mac and Linux. Electron gets us our desktop deployment and is our gateway into the world of Windows.

7.68k views7.68k
Comments
Aleksandr
Aleksandr

Contract Software Engineer - Microsoft at Microsoft-365

Dec 23, 2019

Review

What is Proguard?

ProGuard is the most popular optimizer for Java bytecode. It makes your Java and Android applications up to 90% smaller and up to 20% faster. ProGuard also provides minimal protection against reverse engineering by obfuscating the names of classes, fields and methods.

How to use it in Cordova app?

I didn't find any plugins for it. So I've implemented it by myself and shared it on GitHub.

Feel free to use!

119k views119k
Comments
Aleksandr
Aleksandr

Contract Software Engineer - Microsoft at Microsoft-365

Dec 23, 2019

Needs advice

I've done some Hybrid Mobile apps with both technologies Apache Cordova and React Native and described my experience in my blog.

In a few words, I would suggest to use each technology in accordance what what is your current code base and what do you want to achieve.

React Native is a great option if you need that extra edge in performance with multi-threading and native UI rendering. Or you already have a web app based on React which you want to port to mobile.

On the other hand, if you have an existing web application code and you want to reuse some or all, including the ability to use web third-party libraries, then Cordova is the best option.

429k views429k
Comments

Detailed Comparison

Apache Cordova
Apache Cordova
Electron
Electron

Apache Cordova is a set of device APIs that allow a mobile app developer to access native device function such as the camera or accelerometer from JavaScript. Combined with a UI framework such as jQuery Mobile or Dojo Mobile or Sencha Touch, this allows a smartphone app to be developed with just HTML, CSS, and JavaScript.

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.

Cross-platform (CLI) workflow;Platform-centered workflow;Hundreds of plugins
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
Statistics
GitHub Stars
955
GitHub Stars
-
GitHub Forks
345
GitHub Forks
-
Stacks
686
Stacks
11.6K
Followers
892
Followers
10.0K
Votes
218
Votes
148
Pros & Cons
Pros
  • 48
    Lots of plugins
  • 35
    JavaScript
  • 26
    Great community
  • 25
    Easy Development
  • 18
    Easy to learn
Cons
  • 2
    No native performance
  • 1
    Hard to install
  • 0
    Hard to install
Pros
  • 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
Cons
  • 19
    Uses a lot of memory
  • 8
    User experience never as good as a native app
  • 4
    No proper documentation
  • 4
    Does not native
  • 1
    Wrong reference for dom inspection

What are some alternatives to Apache Cordova, Electron?

Ionic

Ionic

Free and open source, Ionic offers a library of mobile and desktop-optimized HTML, CSS and JS components for building highly interactive apps. Use with Angular, React, Vue, or plain JavaScript.

Flutter

Flutter

Flutter is a mobile app SDK to help developers and designers build modern mobile apps for iOS and Android.

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.

Xamarin

Xamarin

Xamarin’s Mono-based products enable .NET developers to use their existing code, libraries and tools (including Visual Studio*), as well as skills in .NET and the C# programming language, to create mobile applications for the industry’s most widely-used mobile devices, including Android-based smartphones and tablets, iPhone, iPad and iPod Touch.

NativeScript

NativeScript

NativeScript enables developers to build native apps for iOS, Android and Windows Universal while sharing the application code across the platforms. When building the application UI, developers use our libraries, which abstract the differences between the native platforms.

Framework7

Framework7

It is a free and open source mobile HTML framework to develop hybrid mobile apps or web apps with iOS native look and feel. All you need to make it work is a simple HTML layout and attached framework's CSS and JS files.

Qt

Qt

Qt, a leading cross-platform application and UI framework. With Qt, you can develop applications once and deploy to leading desktop, embedded & mobile targets.

PhoneGap

PhoneGap

PhoneGap is a web platform that exposes native mobile device apis and data to JavaScript. PhoneGap is a distribution of Apache Cordova. PhoneGap allows you to use standard web technologies such as HTML5, CSS3, and JavaScript for cross-platform development, avoiding each mobile platforms' native development language. Applications execute within wrappers targeted to each platform, and rely on standards-compliant API bindings to access each device's sensors, data, and network status.

Expo

Expo

It is a framework and a platform for universal React applications. It is a set of tools and services built around React Native and native platforms that help you develop, build, deploy, and quickly iterate on iOS, Android, and web apps.

Vue Native

Vue Native

Vue Native is a mobile framework to build truly native mobile app using Vue.js. Its is designed to connect React Native and Vue.js. Vue Native is a wrapper around React Native APIs, which allows you to use Vue.js and compose rich mobile User Interface.

Related Comparisons

Bootstrap
Materialize

Bootstrap vs Materialize

Laravel
Django

Django vs Laravel vs Node.js

Bootstrap
Foundation

Bootstrap vs Foundation vs Material UI

Node.js
Spring Boot

Node.js vs Spring-Boot

Liquibase
Flyway

Flyway vs Liquibase