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

NativeScript

538
1.1K
+ 1
516
PhoneGap

581
683
+ 1
94
Add tool

NativeScript vs PhoneGap: What are the differences?

Developers describe NativeScript as "Build truly native apps with JavaScript". 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. On the other hand, PhoneGap is detailed as "Easilily create mobile apps using HTML, CSS, and JavaScript". 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.

NativeScript and PhoneGap can be categorized as "Cross-Platform Mobile Development" tools.

Some of the features offered by NativeScript are:

  • 100% Access to Native Platform API
  • NativeScript is free of charge as an open source project
  • Code with JavaScript. Style with CSS

On the other hand, PhoneGap provides the following key features:

  • Android
  • Blackberry
  • iOS

"Access to the entire native api" is the primary reason why developers consider NativeScript over the competitors, whereas "Javascript" was stated as the key factor in picking PhoneGap.

NativeScript and PhoneGap are both open source tools. NativeScript with 17.2K GitHub stars and 1.27K forks on GitHub appears to be more popular than PhoneGap with 4.15K GitHub stars and 974 GitHub forks.

Typeform, Accenture, and WebbyLab are some of the popular companies that use PhoneGap, whereas NativeScript is used by Work Box, Zege Technologies, and GeekyAnts. PhoneGap has a broader approval, being mentioned in 86 company stacks & 36 developers stacks; compared to NativeScript, which is listed in 9 company stacks and 26 developer stacks.

Advice on NativeScript and PhoneGap

Hello,

We're just brainstorming for the moment and we have a few questions.

We have an idea for an app that we want to develop, here are the prerequisites:

1) cross-platform (iOS, Android, and website);

2) as easy to maintain as possible / well documented / widely used;

3) Visual Studio Code and Copilot compatible;

4) Text to speech;

5) Speech recognition;

6) Running in background (screen off with TTS and speech recognition);

7) could be using TypeScript;

8) Monetized through ad and in-App payment for premium version;

9) Display on lock screen (Android only I guess)

So what would you recommend?

I've been trying to review the options available, and I've considered:

  • NativeScript

  • React Native

  • Flutter

  • Any other?

Thanks in advance for your help, and I'm open to any comments.

See more
Replies (2)
Gabriel Alao
Lead Developer at The Web Gurus LLC · | 2 upvotes · 11.5K views
Recommends

Use Flutter and Firebase as a backend service, Firebase also helps to speed up the development and rollout of the app. The cloud-hosted NoSQL database provides a real-time database that helps you store and synchronize data between the clients. This indeed makes it easier for you to access the data using any of the devices.

See more
Recommends
at

Hi there, for cross-platform functionality in terms of 3D assets if any, echo3D can help you with that. It's 3D asset management on the cloud so you can write your references to the objects and update them in the echo3D web browser. echo3D is not yet on this platform but it will be soon!

See more
Needs advice
on
IonicIonicPhoneGapPhoneGap
and
React NativeReact Native

Looking for some advice: we are planning to create a hybrid app for both iOS and Android; this app will consume a REST API. We are looking for a tool for this development with the following attributes:

  • Shallow learning curve; easiness to adopt (all team is new into mobile development, with diverse backgrounds: Java, Python & AngularJS),

  • Easiness to test (we discarded Angular-based tools already: creating a unit test in Angular we considered time-consuming and low value. At this point of the project, we cannot afford UI testing with Selenium/Appium based tools).

  • So far, we are not considering any specific capability of the device. Still, in the mid/long term, we would require the usage of GPS (geolocalization) and accelerometer (not sure if it's possible to use it from a hybrid app). Suggest any other tool if you wish.

See more
Replies (4)
Alcides Costa
CEO, Co-founder at inPlace · | 5 upvotes · 59.8K views
Recommends
on
KivyKivy

If your team has a strong background in Python and you want to release some prototype soon, you could try Python and Kivy. Kivy is an open-source, cross-platform Python framework for rapid development of mobile GUIs. It supports both iOS and Android. I have passed a similar situation recently: to start a mobile app with no background in mobile development. Kivy saved me a lot of time. I could develop a prototype and release it faster than I thoght.

See more
Frederico Bezerra
Recommends
on
ExpoExpoReact NativeReact Native

To be honest , You need to think these points :

  • Developer Experience

  • Tooling

  • Maintainability

My vote for now is going with React Native with Expo , using Typescript...

With this stack You could follow some patterns and principle that the Java and python programmers are familiar with.

Typescript is a javascript Superset that you can follow Procedural , Functional and OOP approaches and an easy learning curve.

With Expo you need to concern only with the shared layer (Typescript) and the Native ones will be expo responsibility.

Please check Expo.com and try to get started using typescript.

Good performance and with EAS (paid plan) you can create a full CI CD pipeline for your app connected to the stores(Apple and Android).

See more
Recommends
on
CapacitorCapacitorIonicIonic

If you already know how to build web apps, give Capacitor a try. You can think of it like "electron for mobile" in that you can build a web app but access native functionality. Pair it with Ionic if you want a UI kit that is optimized for mobile, or build your own UI from scratch.

A bonus to Capacitor is your app will run without modification on the web as a PWA, iOS, Android, and more.

See more
Recommends
on
React NativeReact Native

Other tools have very slow performance. They are usually selected because someone on the team likes Angular, but your customers won't care what framework you're using. They'll just know the app is slow.

See more
Decisions about NativeScript and PhoneGap
James Bender
Lead Application Architect at TekPartners · | 5 upvotes · 51.2K views

I've yet to see a non-native application that I felt performed as well and/or provided the same user experience with Cordova/PhoneGap/Xamarin. Frankly, at best they all seemed like underpowered web applications deployed to a sandbox that ran on a phone. They didn't feel "slick" or "mobile-first" and in some cases the performance was unacceptable. At previous companies, we built a few of these apps at the client's insistence, and in every case, they re-engaged us about 18 months later to re-write the app(s) natively.

We are doing some research on React Native and Flutter, but I am not yet convinced that they can provide the same level of experience and performance as native, though I am trying to keep an open mind.

See more
Gabor Galazzo

As a startup, we need the maximum flexibility and the ability to reach our customers in a more suitable way. So a hybrid application approach is the best because it allows you to develop a cross-platform application in a unique codebase. The choice behind Ionic is Angular, I think that angular is the best framework to develop a complex application that needs a lot of service interaction, its modularity forces you (the developer) to write the code in the correct way, so it can be maintainable and reusable.

See more
Aleksandr Filatov
Contract Software Engineer - Microsoft · | 2 upvotes · 108.3K 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
Get Advice from developers at your company using StackShare Enterprise. Sign up for StackShare Enterprise.
Learn More
Pros of NativeScript
Pros of PhoneGap
  • 75
    Access to the entire native api
  • 47
    Support for native ios and android libraries
  • 46
    Support for javascript libraries
  • 46
    Angular 2.0 support
  • 44
    Native ux and performance
  • 37
    Typescript support
  • 35
    Backed up by google and telerik
  • 29
    Css support
  • 27
    Cross-platform declarative ui and code
  • 25
    Fully open source under apache 2.0 license
  • 11
    Vuejs support
  • 9
    60fps performance
  • 6
    Powerful data visualization with native UI
  • 5
    VS Code integration
  • 5
    Angular, typescript and javascript support
  • 5
    No need for Mac to build iOS apps in Telerik Platform
  • 4
    Extended CLI support
  • 4
    Cloud builds as part of Telerik PLatform
  • 4
    Truly Object-Oriented with Typescript
  • 4
    On-device debugging
  • 4
    Extensibility
  • 3
    Access to entire native api
  • 3
    Live reload
  • 3
    Easiest of all other frameworks
  • 3
    Easy to learn
  • 3
    Backed by google
  • 3
    0 day support for new OS updates
  • 3
    Publishing modules to NPM
  • 2
    Vue.js support out of the box
  • 2
    VueJS support
  • 2
    Svelte support
  • 2
    Powerfull mobile services as part of Telerik Platform
  • 2
    Native ui with angular
  • 2
    Vue support
  • 1
    Playground
  • 1
    Hot Reload
  • 1
    HMR via webpack
  • 1
    Very small app size
  • 1
    Write once, use anywhere
  • 1
    Easy to use, support for almost all npm packages
  • 1
    Rich ecosystem
  • 1
    Compile to Apple/Google Stores via CloudCompiler
  • 1
    Has CSS ;-)
  • 1
    It works with Angular
  • 1
    Code reuse with your website
  • 0
    Dart
  • 46
    Javascript
  • 13
    Backed by Adobe
  • 11
    Free
  • 9
    Easy and developer friendly
  • 6
    Support more platforms
  • 3
    It's javascript, html, and css
  • 2
    Common code base across all mobile platform
  • 1
    Not bound to specific framework
  • 1
    Powerful Framework
  • 1
    Runs on mobile browser
  • 1
    Similar UI across all platform
  • 0
    Free easy fast and not buggy in my experience

Sign up to add or upvote prosMake informed product decisions

Cons of NativeScript
Cons of PhoneGap
  • 5
    Lack of promotion
  • 1
    Slower Performance compared to competitors
  • 2
    Never as good as a native app
  • 1
    Created for web pages, not for complex Apps
  • 1
    Poor user experience
  • 1
    Not build for high performance
  • 1
    Hard to see

Sign up to add or upvote consMake informed product decisions

What is 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.

What is 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.

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

What companies use NativeScript?
What companies use PhoneGap?
See which teams inside your own company are using NativeScript or PhoneGap.
Sign up for StackShare EnterpriseLearn More

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

What tools integrate with NativeScript?
What tools integrate with PhoneGap?

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

What are some alternatives to NativeScript and PhoneGap?
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.
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.
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.
React
Lots of people use React as the V in MVC. Since React makes no assumptions about the rest of your technology stack, it's easy to try it out on a small feature in an existing project.
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.
See all alternatives