What users are saying about
17 Ratings
25 Ratings
17 Ratings
<a href='https://www.trustradius.com/static/about-trustradius-scoring' target='_blank' rel='nofollow'>trScore algorithm: Learn more.</a>
Score 8.6 out of 101
25 Ratings
<a href='https://www.trustradius.com/static/about-trustradius-scoring' target='_blank' rel='nofollow'>trScore algorithm: Learn more.</a>
Score 9.1 out of 101

Add comparison

Likelihood to Recommend

Apache Cordova

It is suitable for making portable applications, with almost the same code for several platforms. You can access native features of the device or use an open source plug-in from the repository to create a local database and access the internal storage of the device. It is wonderful for the construction of a native application, through the use of standard web code. It is not recommended for enterprise applications.
Carla Borges profile photo

React

React is really great when you want to build something that is highly fluid, with a lot of data driven display elements. It allows you to describe the DOM in programmatic terms, which makes your display output faster and more efficient. But if you have a highly static page, then it adds a lot of overhead just to get something basic up.
Larry Reed profile photo

Pros

  • Cordova is a very powerful tool for a JavaScript developer, since by simply developing in JavaScript one becomes a general developer of software and applications by implementing web technologies for various environments.
  • Cordova is not just an HTML application that runs in a browser, it allows you to write native plugins that work with any of the supported platforms, and a JavaScript container will integrate your HTML application with the native code.
  • Cordova does an amazing job in the field of hybrid application is super easy to use and functional.
Carla Borges profile photo
  • Solid backing by large organization (Facebook) thats committed to keeping the development on the project. In my mind, this is the number one priority for any library because without this: time is wasted on getting up-to speed on a library that you will never use, have a codebase with a library thats hard to maintain because few years down the lane, hiring devs to maintain an unsupported library is very difficult.
  • As with any libraries, open source community's support is critical for success of any framework because this allows for more pre-built components that could be used right out-of-box => makes Development using React a breeze.
  • React's Stateful and Stateless components make organizing your code a breeze. These components would also allow for writing clean Unit Tests on the logic.
  • React's component lifecycle. It offers a variety of lifecycle methods, that allows for handling different scenarios of loading and manipulating data in the UI.
  • I found React's documentation very well maintained with plenty of examples explaining each feature.
  • Responsiveness is a very important criteria in selecting a UI and React is very responsive. It does some neat optimizations on re-rendering using virtual DOM and would only re-render parts of the DOM that changed. These optimizations makes React Applications feel really fast.
  • React Native would allow for building applications that span across web and mobile interfaces (iOS and Android). This makes learning React even more enticing, because using a single library, you could build applications that span across Web, iOS and Android.
  • create-react-app is an effort by Facebook (creators of React) that makes getting started with React really easy. It does all the heavy lifting of configurations for you and allow you to focus on just development.
  • Small footprint, minified React + React DOM is under 150Kb, that makes loading UI's with react really fast.
  • React + Enzyme (backed by Airbnb) + Sinon + Mocha + Chai makes unit testing the UI components fun and improves the overall maintainability of the project.
Anudeep Palanki profile photo

Cons

  • Needs to be fully compatible with mobile machines
  • Support for a wide variety of platforms
  • Needs better backwards compatibility
Andrew Shingleton profile photo
  • React could get very frustrating unless you start thinking in React. React enforces a top down hierarchy of data flow and offers no way for the data to communicate backwards. This is a big shift in mindset coming from Angular 1.x. This constraint is really a big factor that determines how to organize your code and how you might want to write your own Components.
  • Because of the self imposed top down hierarchy, you end up having a heavy parents with dumb children. Because parents would need to the bulk of the work, they usually manage the state, while passing callbacks to the child components. If not properly designed, this could lead to the callback hell, where you could have callbacks passing through like multiple children.
  • As with any library, you will have to iterate through multiple designs to come up with a ways to avoid "heavy parent components" in React. One obvious solution is using some open source tools like Redux, but we opted for a variation of it to suit our needs.
Anudeep Palanki profile photo

Usability

No score
No answers yet
No answers on this topic
React7.0
Based on 1 answer
React is just a bit of a different animal. I was avoiding it for the longest time. I thought for sure I would land on Vue or something else with a more approachable and familiar appearance. But after taking an online course in React, I started realize what people were raving about (and complaining about) and decided to implement it at our office for one of our products.
Joshua Weaver profile photo

Alternatives Considered

PhoneGap is another viable option but lacks the amount of support Apache Cordova receives rendering it worthless.
Andrew Shingleton profile photo
When choosing a front-end framework, you have a ton of choices. There are numerous articles that will try to convince you this way or that about which one is better. I have used Blaze as a UI layer for Meteor Application development quite extensively and have found it to greatly aid development with its simplicity and speed of getting ideas off the ground. It does suffer in certain context from extra code necessary to get things working because of its older handlebars-like patterns. Logic takes more code. With React, you can accomplish a lot of basic tasks more succinctly because it's just javascript all around and you can incorporate broader logic right into the templating.
Joshua Weaver profile photo

Return on Investment

  • Very economic for ROI purposes
  • Scalable for code reusability down the road
  • Convertible, easily switch platforms if Apache Cordova doesn't suit your needs
Andrew Shingleton profile photo
  • Development speed has probably sped up overall
  • Organization of code has improved
  • More flexible future development and maintenance options
Joshua Weaver profile photo

Pricing Details

Apache Cordova

General
Free Trial
Free/Freemium Version
Premium Consulting/Integration Services
Entry-level set up fee?
No
Additional Pricing Details

React

General
Free Trial
Free/Freemium Version
Premium Consulting/Integration Services
Entry-level set up fee?
No
Additional Pricing Details