News for hackers. Stuff that matters.
Re:Introducing Create React Native App by zerr on Monday March 13, 2017 @04:11PM (#13861885)
I find React Native dev/build environment quite straightforward (and I'm not even a "JavaScript developer"), so what exactly Expo adds to that?

Slight off-topic: is it possible to use C++ code cross-platform way for performance-critical parts? i.e. to have single C++ code for iOS and Android, in React Native.

Re:Introducing Create React Native App by nikki93 on Monday March 13, 2017 @04:28PM (#13862027)
Re: the C++ thing.

Yup you can! That's actually how Expo's `GLView` (which exposes OpenGL ES as a WebGL'y API in React Native's JS context) works. The binding is done in common C++ code for both iOS and Android. Calling to that from Obj-C is straightforward, for Java you use JNI. This is binding is done manually and built once (not auto-exposed), then you can use the GL stuff in JS!

https://github.com/exponent/exponent/blob/master/cpp/EXGL.cp... Here's the code

Re:Introducing Create React Native App by evv on Monday March 13, 2017 @06:26PM (#13863098)
The native build environment is tricky for a few reasons. On iOS it takes a slow download of Xcode and simulator, plus an Apple Developer account. Before CRNA, there was no open-source way to get start building an iOS app on Windows or Linux. As for Android, there are a long list of native build dependencies and environment variables that need to be correctly established before you can build your app.

It is definitely possible to create a cross-platform C++ library to share performant across platforms, but unfortunately you need to do the plumbing for each platform by hand.

Re:Introducing Create React Native App by zerr on Monday March 13, 2017 @06:56PM (#13863322)
As I remember, DropBox put some tool/lib for making plumbing (JNI & friends) easier.
Re:Introducing Create React Native App by jesseruder on Monday March 13, 2017 @05:04PM (#13862359)
One of the big advantages is that you can develop for your iOS device using Linux or Windows.