mobileframeworks icon indicating copy to clipboard operation
mobileframeworks copied to clipboard

A comparison of JavaScript-based mobile development tools.

Cross-platform Mobile Tools Compared

The following compares three "native" cross-platform mobile development tools: Appcelerator Titanium, Telerik NativeScript, and Facebook ReactNative. Each of these tools promises the features needed to let you build a native, cross-platform mobile app with JavaScript.

It is not:

  • a comprehensive review of these tools.
  • a comparison of all tools available.
  • an endorsement of any one tool vs another.
  • a tutorial.
  • a comparison of web wrapper (e.g. Cordova-type) tools.

Comparison Table

Key:

  • ✅ - yes, supports
  • ❎ = mostly yes, some missing features
  • ⛔ - mostly no
  • ❌ - no / not at all
  • ❓ - unknown
  • ❗ - yes, warning
Feature Titanium NativeScript ReactNative
License Apache / Proprietary Apache 2.0 BSD
Current version 6.0.4.GA 3.0 RC 0.44
Code repo titanium-mobile NativeScript react
iOS apps
Android apps ❎ 🄰
Windows apps
Apple Watch apps ❎ 🄱
tvOS apps ❎ 🄱
Unified x-platform UI 🄲
Direct access
to native APIs
Via modules or Hyperloop JS Via modules
Module-based
extensibility
Reusable UI
components
Alloy Widgets Plugins Components
Styling TSS (proprietary
CSS-like)
CSS subset Flexbox
Debugging Via Studio IDE Chrome debug tools & Visual Studio Code integration In-app & Chrome debug tools
Hot reload ❎🄳
Code encryption
Compile-time license
checks
Run-time license
checks
Testing / crash
reporting
Subscribers Subscribers Parse
Analytics Subscribers Paid add-on Parse
IDE Appcelerator Studio 🄴 ⛔ 🄵 ❌ 🄶
Framework Alloy (MVC-like) Angular (though optional) ❓ 🄷
Biz model Enterprise, MBaaS,
Paid subscriptions
Enterprise support, MBaaS,
Paid add-ons
MBaaS companion Arrow Cloud Telerik Backend Services Parse
Subscriptions/cost Indie: Free
Pro: $99/seat/mo
Enterprise: call
OSS: Free
Seat: $39/mo
Add-ons: vary
Enterprise: call
Free

Footnotes

  • 🄰 - Just released and somewhat at an alpha state
  • 🄱 - "Coming soon" per their web site
  • 🄲 - Meaning, a single means for creating basic UI components that masks basic differences in the native APIs
  • 🄳 - LiveView (from Appcelerator) and TiShadow (community) offers whole-app-reload rather than live reload of the "current screen"
  • 🄴 - Eclipsed-based IDE available to subscribers only; community-created options to support Sublime, Atom, TextMate, etc.
  • 🄵 - Telerik offers plug-ins for Visual Studio and Sublime. They also offer an online code editor and build tools.
  • 🄶 - Atom-based IDE is reported to be in development; community-created plug-ins available.
  • 🄷 - In essence, ReactNative is just the "V" of MVC

Support mechanisms

Customer type Titanium NativeScript ReactNative
Docs link link link
Issues/Tickets Jira GitHub GitHub
Enterprise Varies:
Jira, SLA, phone
Varies: contact-us n/a
Subscriber Jira, self-serve forums Telerik Platform Forum, partners n/a
OSS/Indie/Community Self-serve forums and Titanium Slack Community Community Forum n/a

Discrepancies? Missing Info?

Submit a pull request!

More info / references

  • Most of this info comes from the vendor sites, GitHub repos, blogs, and other vendor-provided resources
  • Josh Jensen's Connect.js 2015 - Building Native Mobile Applications with Javascript slide deck compares the three frameworks
  • http://mobilejs.io/ is a reference ToDo app in all three frameworks, from Josh Jensen
  • http://jolicode.com/blog/crossing-the-native-bridge-to-build-apps-with-javascript
  • react-titanium custom React renderer for Titanium

Disclosure

I used to work for Appcelerator (as lead trainer and later as an engineer). Since then, I've dabbled with NativeScript and React Native though I've used neither for a production app. The info here is as unbiased as I can make it, given my background. It is not meant to endorse or promote any of these tools over another. Please make your own informed choice.