Hacker News new | ask | show | jobs
by wlindner 4117 days ago
How does Nativescript compare to Appcelerator Titanium or React Native? I know React Native hasn't been released, but they described their approach at the recent React Conf and was curious if it's similar.
3 comments

I don't know about React native, but I used Titanium for a while and this looks very similar. The biggest conceptual difference from what I can see is that Nativescript allows you to make calls to any native API method. With Titanium you can only call those native APIs that have been wrapped.

With Titanium, I suppose you could say that the cross-platform wrapper API and the product are one in the same. Nativescript promotes their abstracted cross-platform API as a kinda optional add-on to the platform.

That's just my thoughts after looking at it for 5 minutes.

I just took a look at Titanium and holy moley their documentation was overwhelming. I haven't used a "native" hybrid app framework yet (only have experience with ionic), but NativeScript looks a bit more accessible to me than Titanium does.
I say the documentation is pretty ok once you get familiar with how the API is laid out. And for everything else they have the developer QA section, which is like a self-hosted stack-overflow.

I've been building a couple of simple apps on it the last few months, and it has been a pleasure.

I should be clear here -- I've been using Titanium, not Alloy.

A self hosted QA is pretty awesome. I think another thing that threw me off was how every section I clicked opened up a tab.

I'm still new to the hybrid app world and have only used ionic. I want to eventually try one of these "native" frameworks though.

I agree, Titanium classic is really great to work with once you get up and running. I tried Alloy but quickly realized it slows things down and makes it harder to develop.

So, lesson for me was use titanium classic and NOT Alloy.

Also, I would advise building your own small framework with views (things like title bars etc). Just makes it so much easier to make it look and work exactly how you want on iOS and Android.

They lost me with the switch to Alloy.
Exactly, I started on Alloy and quickly found that there was too much magic in going from templates to js code.

Once I took a step back to Titanium it all felt a lot more sane. Yes it is a little more verbose, but at least I can follow the data flow in code.

Appcelerator is going through some changes as of this week[1] which I hope will improve the documentation and ecosystem around the product.

[1] - http://techcrunch.com/2015/03/04/appcelerator-slashes-staff/

Also, their by far best evangelist, Kevin Whinnery, left for Twilio a year or two ago.
Titanium's Hyperloop/Ti.next tackles this problem, too bad the timeframe for release seems to always be 6 months from whenever you happen to check.
Not everyone is a fan of react.js, this is a nice alternative for people who want to use vanilla js.
Or Cordova/Ionic/PhoneGap?
Those are rendered with a webview. Nativescript is rendered with native components.
How do "native" hybrid apps such as, react native, titanium, etc. access the native components of the phone?

I have been developing a side project using ionic and have had a fairly positive experience so far, but from what I understand ionic/phonegap apps are just wrapped web browsers is that right?

It's pretty much identical at a high level: there is a proxy layer that is much like a message passing system. A component (web view, JS engine, etc.) says, "Take a photo with the camera" and the proxy layer calls the native code needed to take the photo with the camera.

The actual camera data is just abstract data, it doesn't care if it was generated from a JS call or from a native call.

PhoneGap and Cordova are, at the core, just a standard proxy layer and plugin API. The other "pure JS" solutions have their own custom layers.

That's pretty cool, thanks for the insight!