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