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. PhoneGap vs Sencha Touch vs Xamarin

PhoneGap vs Sencha Touch vs Xamarin

OverviewDecisionsComparisonAlternatives

Overview

Sencha Touch
Sencha Touch
Stacks78
Followers90
Votes28
Xamarin
Xamarin
Stacks1.3K
Followers1.5K
Votes785
PhoneGap
PhoneGap
Stacks578
Followers685
Votes94
GitHub Stars4.0K
Forks889

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 Sencha Touch, Xamarin, PhoneGap

William
William

CEO at Stealth Startup

Feb 11, 2021

Needs adviceonlambdalambdaAmazon DynamoDBAmazon DynamoDBWindowsWindows

We are developing an AWS IoT app for large boats. The IoT devices have sensors all over the boat for engine oil pressure, position, water depth, fuel level, crew location, etc. When the boat has internet, we interact with AWS cloud using lambda and Amazon DynamoDB. When the boat is offshore, the captain and crew still need normal and emergency alerts and real-time sensor information. The crew might have an Android or IoS phone or a Windows or macOS PC to receive alerts and interact with sensors. We may use the AWS GreenGrasss edge computing solution and either MQTT or HTML for that function.

Question: We want to develop a cross-platform client to run on Windows, Mac, Android, IOS, and possibly Linux. We are primarily Python programmers, so PyQt or Kivy are options for us, but we have heard good things about React Native, Flutter, Xamarin, and others. We think an AWS Greengrass core on an RPI4 could communicate to the client with MQTT or a local webserver with a client web interface.

Any thoughts would be much appreciated.

464k views464k
Comments
Alejandro
Alejandro

Aug 20, 2021

Needs adviceonJavaJavaPythonPythonAngularJSAngularJS

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.

565k views565k
Comments
Saamer
Saamer

Founder at The First Prototype

Feb 15, 2022

ReviewonExpoExpo

We have experience with React Native, Flutter or Xamarin, the lion share of the native cross-platform tools used. They all allow you to create very good user experiences. You can check their reddit pages to see the beautiful designs people recreate. I highly recommend using cross platform tools vs native if your app has generic functionality that doesn't use advanced functionality of the app like VR/AR. So, for something like a dating app without those features, you would probably be better off with cross platform native instead of single platform native (swift/kotlin). If budget is low, a lot of companies have success just using Expo (a framework on top of React Native). It limits you further, but it's the easiest and most affordable to find developers with. Eventually you might decide to move away from it, but at that time ou ll have a lot more money and react native will be an easy tech to move towards.

Xamarin is the oldest of the cross platform native tools and so there's a lot more documentation and supporting libraries.

Flutter is super fast & fluid, and since it uses pixels(skia), it's even more performant than all the other technologies including native single platform. But it doesn't come with the amazing libraries that Xamarin and React Native is able to leverage

31.6k views31.6k
Comments

Detailed Comparison

Sencha Touch
Sencha Touch
Xamarin
Xamarin
PhoneGap
PhoneGap

Sencha Touch 2, a high-performance HTML5 mobile application framework, is the cornerstone of the Sencha HTML5 platform. Built for enabling world-class user experiences, Sencha Touch 2 is the only framework that enables developers to build fast and impressive apps that work on iOS, Android, BlackBerry, Kindle Fire, and more.

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

Built on HTML5 Technology- Sencha Touch 2, a high-performance HTML5 mobile application framework, is the cornerstone of the Sencha HTML5 platform.;Smoother Scrolling and Animations- Sencha Touch 2 provides a user experience unparalleled in HTML5. Fluid Adaptive Layouts- Sencha Touch’s novel layout engine leverages HTML5 in powerful ways to let developers build complex applications that respond, load, and layout in a snap.;Navigation View- The new Navigation View component makes it easy to make applications that feature beautiful animated transitions between screens as well as providing automatic back button management.;Class System- Sencha Touch 2 builds on the class system from Ext JS 4. Developers can take advantage of powerful features like dynamic loading and mixins, all making it easy to create minified custom builds for your application.;Component DataView- The new Component DataView enables you to build beautiful interfaces based on a Model and a Store. It’s easy to create a template that has full featured components instead of simple HTML templates so you can bind, listen, and control components inside of a DataView.;Advanced List Plugins- Lists are one of the most popular components in Sencha Touch, and with 2.0 we’ve updated two of the most powerful plugins: Pull to Refresh and Load More. These plugins, activated with a single line of code, deliver a fantastic List experience out of the box.;Infinite Carousel- Carousels are a great way of showing multiple screens of information in a constrained space. In Sencha Touch 2 they get even more powerful, with a data-bound Carousel supporting an infinite number of items. No need to worry about performance, or memory — Sencha Touch manages it for you, so scrolling is consistently smooth.;Config System- Sencha Touch 2 has a great API thanks largely to its config system. Almost any configuration of any component can be changed at run time, with a consistent and predictable API.;AJAX - Sencha Touch provides full AJAX support, including CORS and JSON-P;DOM manipulation - Full DOM manipulation support available;Feature Detection - Automatically detects the presence of features like geolocation, canvas and orientation support;Geolocation - Provides a simple wrapper around geolocation on devices that support it;Icons - 300 icons included;Example apps - 8 full example apps included;Touch events - Provides a full range of touch events and gestures like tap, swipe and pinch
Cross-platform development- Thinking about supporting iOS, Android, Mac and Windows? Xamarin allows you to write it all in C#.;Reuse existing code- Use your favorite .NET libraries in Xamarin apps. Easily use third-party native libraries and frameworks.; Discover as you type- Explore APIs as you type with code autocompletion.;Visual Studio or Xamarin Studio- Create, build, debug, and deploy apps in Visual Studio. Or use Xamarin Studio, a fully-featured IDE that is built for mobile app development.;Native UI, Native Performance- Xamarin delivers high performance compiled code with full access to all the native APIs so you can create native apps with device-specific experiences.; Point and Click UI Design- Xamarin provides a world class Android UI designer. Use Apple Xcode UI designer to create interfaces and Storyboards that automatically sync with your Xamarin.iOS project.
Android;Blackberry;iOS;Windows Phone;Windows8
Statistics
GitHub Stars
-
GitHub Stars
-
GitHub Stars
4.0K
GitHub Forks
-
GitHub Forks
-
GitHub Forks
889
Stacks
78
Stacks
1.3K
Stacks
578
Followers
90
Followers
1.5K
Followers
685
Votes
28
Votes
785
Votes
94
Pros & Cons
Pros
  • 8
    Structured code
  • 5
    PhoneGap intergation
  • 5
    Mvc
  • 3
    Customised Component
  • 2
    Easy Data Binding
Pros
  • 121
    Power of c# on mobile devices
  • 81
    Native performance
  • 79
    Native apps with native ui controls
  • 73
    No javascript - truely compiled code
  • 67
    Sharing more than 90% of code over all platforms
Cons
  • 9
    Build times
  • 5
    Visual Studio
  • 4
    Price
  • 3
    Complexity
  • 3
    Scalability
Pros
  • 46
    Javascript
  • 13
    Backed by Adobe
  • 11
    Free
  • 9
    Easy and developer friendly
  • 6
    Support more platforms
Cons
  • 2
    Never as good as a native app
  • 1
    Hard to see
  • 1
    Not build for high performance
  • 1
    Created for web pages, not for complex Apps
  • 1
    Poor user experience

What are some alternatives to Sencha Touch, Xamarin, PhoneGap?

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.

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.

Apache Cordova

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.

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.

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.

Shoutem UI

Shoutem UI

Shoutem UI is a set of styleable components that enables you to build beautiful React Native applications for iOS and Android. All of our components are built to be both composable and customizable.

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