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

Apache Cordova

705
892
+ 1
218
Onsen UI

40
136
+ 1
11
Add tool

Apache Cordova vs Onsen UI: What are the differences?

## Introduction
Apache Cordova and Onsen UI are popular tools in the world of hybrid mobile app development. While both serve the purpose of creating cross-platform mobile applications, there are key differences between them that developers need to consider.

1. **Supported Platforms**: Apache Cordova is a mobile application development framework that allows developers to build apps for various platforms like iOS, Android, and Windows using web technologies such as HTML, CSS, and JavaScript. On the other hand, Onsen UI is a front-end UI framework specifically designed for developing mobile apps with HTML5 and JavaScript, focusing on providing a rich user interface and user experience across different platforms.

2. **Core Functionality**: Apache Cordova primarily focuses on providing access to device-specific features and native APIs through plugins, allowing developers to easily access and utilize device hardware functionalities. In contrast, Onsen UI is more focused on providing a comprehensive set of UI components and patterns for designing visually appealing and interactive user interfaces, regardless of the underlying platform.

3. **Integration with Frameworks**: Apache Cordova can be integrated with various front-end frameworks like Angular, React, and Vue.js to streamline the development process and enhance the overall user experience. Onsen UI, on the other hand, comes with its own set of built-in components and themes that can be easily customized and extended to create visually stunning mobile applications without the need for additional frameworks.

4. **Community Support**: Apache Cordova has a large and active community of developers, contributors, and plugin creators, which leads to frequent updates, bug fixes, and new features being added to the platform. While Onsen UI also has a supportive community, it may not be as extensive as Cordova's community, potentially affecting the availability of resources, tutorials, and support.

5. **Performance Optimization**: Apache Cordova allows developers to optimize the performance of their apps by using plugins and tools to reduce load times, improve caching mechanisms, and enhance overall responsiveness. Onsen UI, on the other hand, focuses more on providing pre-styled UI components that may require additional optimization techniques to achieve optimal performance on different platforms.

6. **Ease of Learning Curve**: Apache Cordova is relatively easier for web developers to learn and adapt to, especially if they are already familiar with web technologies like HTML, CSS, and JavaScript. Onsen UI, while user-friendly in terms of UI design, may have a steeper learning curve for developers who are not well-versed in front-end development, as it requires a good understanding of the framework's components and styling conventions.

In Summary, Apache Cordova and Onsen UI differ in terms of supported platforms, core functionality, integration with frameworks, community support, performance optimization, and ease of learning curve for developers, making each tool suitable for specific mobile app development requirements.
Advice on Apache Cordova and Onsen UI
Needs advice
on
Apache CordovaApache Cordova
and
Vue NativeVue Native

Heya, I'm very new on here! And I hope I can get advice on this matter :

We are working on a new app. The web version is on Sails.js (V1)/node.js/vue.js. Started with the Web App default settings (including login and payments, which we are using use). We started with a web version to give access to the customer to start creating the data while building the mobile version. (iOS and Android)

I heard of Apache Cordova, that using the same JavaScript/css could be used to not re-code the front-end of the app for iPhones and Androids. I've been told that it is end-of-life now (? - I couldn't find this info myself).

I saw that Vue Native might be an alternative and would only need a few adjustments from our web version as we are using Vue.js for the frontend.

I know next to nothing on this, so I would really appreciate it if you guys could point me to possible solutions you've used and why instead of searching through all the existing solutions. (I'm very open to know if there are alternatives to those two too !!)

We will need to be using the GPS functions of the mobiles, which is a big part of the app.

Thank you!

See more
Replies (1)
ahmed Tirhmert
Fullstack Web Developer · | 3 upvotes · 71.5K views

i don't have any experience with the vue native what so ever but i think Quasar and Ionic are the best options for an HTML/CSS/JS based mobile app ionic has full support of vue and quasar is built on vue you may have to change some configurations in your project files

See more
Decisions about Apache Cordova and Onsen UI
Aleksandr Filatov
Contract Software Engineer - Microsoft · | 2 upvotes · 410K views

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.

See more
Aleksandr Filatov
Contract Software Engineer - Microsoft · | 2 upvotes · 112.6K views
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!

See more
Manage your open source components, licenses, and vulnerabilities
Learn More
Pros of Apache Cordova
Pros of Onsen UI
  • 48
    Lots of plugins
  • 35
    JavaScript
  • 26
    Great community
  • 25
    Easy Development
  • 18
    Easy to learn
  • 15
    Cross platform
  • 7
    Open Source
  • 6
    Easy, fast, not buggy in my experience with my code
  • 6
    Lots of descendants; PhoneGap, Ionic, Intel XDA etc
  • 4
    Can use CSS3
  • 4
    Rich HTML 5
  • 4
    Easy debugging
  • 3
    HTML, CSS and JS
  • 3
    Fast and hot reload
  • 3
    Rich css ui
  • 3
    Use what you code in your browser
  • 2
    Need a light system
  • 2
    Native Web Technologies
  • 2
    Without extra tooling needed
  • 2
    One code base everywhere
  • 3
    Hybrid mobile
  • 3
    Works with any JavaScript framework
  • 3
    Allows for rapid prototyping
  • 2
    Free

Sign up to add or upvote prosMake informed product decisions

Cons of Apache Cordova
Cons of Onsen UI
  • 2
    No native performance
  • 1
    Hard to install
  • 0
    Hard to install
    Be the first to leave a con

    Sign up to add or upvote consMake informed product decisions

    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 Onsen UI?

    Onsen UI helps you develop both hybrid and web apps. If developing hybrid apps, you can use it with the Cordova / PhoneGap command line, or with Monaca tools (CLI, Monaca IDE - cloud-based IDE for Cordova, Localkit - desktop GUI).

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

    What companies use Apache Cordova?
    What companies use Onsen UI?
    Manage your open source components, licenses, and vulnerabilities
    Learn More

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

    What tools integrate with Apache Cordova?
    What tools integrate with Onsen UI?
      No integrations found

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

      Blog Posts

      Vue.jsSpring BootUnity+7
      2
      1245
      What are some alternatives to Apache Cordova and Onsen UI?
      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