Get Advice Icon

Need advice about which tool to choose?Ask the StackShare community!

Apache Cordova
Apache Cordova

511
404
+ 1
129
Node.js
Node.js

28.8K
22.8K
+ 1
7.9K
Add tool

Apache Cordova vs Node.js: What are the differences?

Apache Cordova: Platform for building native mobile applications using HTML, CSS and JavaScript. 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; Node.js: A platform built on Chrome's JavaScript runtime for easily building fast, scalable network applications. Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices.

Apache Cordova and Node.js are primarily classified as "Cross-Platform Mobile Development" and "Frameworks (Full Stack)" tools respectively.

"Lots of plugins" is the top reason why over 31 developers like Apache Cordova, while over 1320 developers mention "Npm" as the leading cause for choosing Node.js.

Apache Cordova and Node.js are both open source tools. It seems that Node.js with 35.5K GitHub stars and 7.78K forks on GitHub has more adoption than Apache Cordova with 762 GitHub stars and 327 GitHub forks.

reddit, Slack, and MIT are some of the popular companies that use Node.js, whereas Apache Cordova is used by Die Coder GmbH, BetRocket, and Dial Once. Node.js has a broader approval, being mentioned in 4055 company stacks & 3897 developers stacks; compared to Apache Cordova, which is listed in 96 company stacks and 45 developer stacks.

What is Apache Cordova?

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.

What is Node.js?

Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices.
Get Advice Icon

Need advice about which tool to choose?Ask the StackShare community!

Why do developers choose Apache Cordova?
Why do developers choose Node.js?

Sign up to add, upvote and see more prosMake informed product decisions

    Be the first to leave a con

    Sign up to add, upvote and see more consMake informed product decisions

    What companies use Apache Cordova?
    What companies use Node.js?

    Sign up to get full access to all the companiesMake informed product decisions

    What tools integrate with Apache Cordova?
    What tools integrate with Node.js?

    Sign up to get full access to all the tool integrationsMake informed product decisions

    What are some alternatives to Apache Cordova and Node.js?
    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.
    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.
    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.
    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.
    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.
    See all alternatives
    Decisions about Apache Cordova and Node.js
    No stack decisions found
    Interest over time
    Reviews of Apache Cordova and Node.js
    Avatar of mihaicracan
    Web Developer, Freelancer
    Review ofNode.jsNode.js

    I have benchmarked Node.js and other popular frameworks using a real life application example. You can find the results here: https://medium.com/@mihaigeorge.c/web-rest-api-benchmark-on-a-real-life-application-ebb743a5d7a3

    How developers use Apache Cordova and Node.js
    Avatar of MaxCDN
    MaxCDN uses Node.jsNode.js

    We decided to move the provisioning process to an API-driven process, and had to decide among a few implementation languages:

    • Go, the server-side language from Google
    • NodeJS, an asynchronous framework in Javascript

    We built prototypes in both languages, and decided on NodeJS:

    • NodeJS is asynchronous-by-default, which suited the problem domain. Provisioning is more like “start the job, let me know when you’re done” than a traditional C-style program that’s CPU-bound and needs low-level efficiency.
    • NodeJS acts as an HTTP-based service, so exposing the API was trivial

    Getting into the headspace and internalizing the assumptions of a tool helps pick the right one. NodeJS assumes services will be non-blocking/event-driven and HTTP-accessible, which snapped into our scenario perfectly. The new NodeJS architecture resulted in a staggering 95% reduction in processing time: requests went from 7.5 seconds to under a second.

    Avatar of Trello
    Trello uses Node.jsNode.js

    The server side of Trello is built in Node.js. We knew we wanted instant propagation of updates, which meant that we needed to be able to hold a lot of open connections, so an event-driven, non-blocking server seemed like a good choice. Node also turned out to be an amazing prototyping tool for a single-page app. The prototype version of the Trello server was really just a library of functions that operated on arrays of Models in the memory of a single Node.js process, and the client simply invoked those functions through a very thin wrapper over a WebSocket. This was a very fast way for us to get started trying things out with Trello and making sure that the design was headed in the right direction. We used the prototype version to manage the development of Trello and other internal projects at Fog Creek.

    Avatar of AngeloR
    AngeloR uses Node.jsNode.js

    All backend code is done in node.js

    We have a SOA for our systems. It isn't quite Microservices jsut yet, but it does provide domain encapsulation for our systems allowing the leaderboards to fail without affecting the login or education content.

    We've written a few internal modules including a very simple api framework.

    I ended up picking Node.js because the game client is entirely in JavaScript as well. This choice made it a lot easier for developers to cross borders between being "client side" game developers and "server side" game developers. It also meant that the pool of knowledge/best practices is applicable almost across the company.

    Avatar of Tony Manso
    Tony Manso uses Node.jsNode.js

    Node.js is the foundation for the server. Using Express.js for serving up web content, and sockets.io for synchronizing communications between all clients and the server, the entire game runs as Javascript in Node.js.

    I don't know how well this will scale if/when I have hundreds of people connected simultaneously, but I suspect that when that time comes, it may be just a matter of increasing the hardware.

    As for why I chose Node.js... I just love JavaScript! My code is all original, meaning that I didn't have to inherit anyone's bad Javascript. I'm perfectly capable of creating my own bad Javascript, thank you! Also, npm rocks!

    Avatar of Tarun Singh
    Tarun Singh uses Node.jsNode.js

    Used node.js server as backend. Interacts with MongoDB using MongoSkin package which is a wrapper for the MongoDB node.js driver. It uses express for routing and cors package for enabling cors and eyes package for enhancing readability of logs. Also I use nodemon which takes away the effort to restart the server after making changes.

    Avatar of papaver
    papaver uses Apache CordovaApache Cordova

    used in conjunction with ionic to build out ios and android app for a client. a little slow to run on devices but saves a ton on development time.

    Avatar of Ralic Lo
    Ralic Lo uses Apache CordovaApache Cordova

    Used Apache Cordova to package single page web application written HTML/CSS/javascript as a iOS/Android application.

    Avatar of MobiBoats
    MobiBoats uses Apache CordovaApache Cordova

    Used with Ionic to support various plugins and integrations with the native environment of iOS and Android.

    Avatar of João Alvarenga
    João Alvarenga uses Apache CordovaApache Cordova

    Compilar o webapp, transformando-o em aplicativos nativos

    Avatar of Evan Luc
    Evan Luc uses Apache CordovaApache Cordova

    Cross platform mobile development framework.

    How much does Apache Cordova cost?
    How much does Node.js cost?
    Pricing unavailable
    Pricing unavailable
    News about Apache Cordova
    More news