News for hackers. Stuff that matters.

jesseruder

Definitely! http://www.reactnativeexpress.com/ uses it and it works really well for them.
We just deployed a change to make the modal overlay more transparent. Hopefully this will make it more obvious that there's an editor underneath the modal.
That's a great idea! We need to add an accounts system before we can do that, but I'll add that to our list.
If you click save and then re-scan the QR code, that url should work without the webpage open. Let me know if it doesn't work.
Re:Introducing Create React Native App on Tuesday March 14, 2017 @02:48PM (#13870306)
I think right now it makes sense for us to be separate from React Native. Adding all of these libraries adds QA overhead and if Facebook doesn't use them internally it'd be hard for them to keep them up to date. In addition there are some other features we support that definitely don't make sense in core. For example we embed multiple versions of the React Native runtime in our app so that people can choose when they upgrade and we don't break old projects when we push a new version.
Those examples are using this library: https://github.com/necolas/react-native-web. It's really fast but the downside is that you can't use any native APIs, so things like gyroscope and push notifications won't work. Since we have an actual app we're able to support all those APIs.
There's this project: https://github.com/necolas/react-native-web that's similar to what you're describing. The downside is that you don't have access to any of the native APIs. Since we have an actually app we're able to support contacts, camera views, geolocation, etc.
Oh the first example should be a heart that explodes when you touch it. Sounds like something went wrong loading it. Sorry about that.
Well you either need to scan or click the "Preview" button to open up Appetize. We thought it'd be good to push people towards the mobile apps since they have better performance.
Those are all really good points. We wanted to push people to download the apps because the performance is so much better than Appetize, but maybe that's not the right tradeoff.

Thanks for letting me know the OpenGL demo is crashing, I'll take a look at that.

edit: It looks like we have a bug with our iOS simulator build. We'll update that but for now Android Appetize works.

Ah interesting point. Maybe we could make the overlay slightly more transparent?
Thanks! I really like how shadertoy show previews of each shader. Maybe that's something we could add eventually.

Also - you can use OpenGL with this: https://sketch.expo.io/rJiYksBse

Here's an example we made using the Animated library: https://sketch.expo.io/HyobXP7oe

And a basic SVG example: https://sketch.expo.io/H1ucC8Xsg

Re:Introducing Create React Native App on Tuesday March 14, 2017 @12:18AM (#13864956)
Yes a lot of times the issue is that libraries only support certain version of React Native, so for certain sets of libraries there are no versions of React Native compatible with all of them.

Expo has audio (https://docs.expo.io/versions/latest/sdk/audio.html), file system (https://docs.expo.io/versions/latest/sdk/asset.html), and other APIs built in (https://docs.expo.io/versions/latest/sdk/index.html). We don't have sqlite right now but are actively working on it!

The idea is that we provide a lot of nice things out of the box and then if you still need to write native code you can detach (https://docs.expo.io/versions/latest/guides/exponentkit.html) and only write the native code you need while keeping all our other APIs. You can still use `react-native link` after detaching if you want.

Re:Introducing Create React Native App on Monday March 13, 2017 @09:34PM (#13864236)
Hey I work on Expo - this is one of the big pain points we're trying to improve. Since Expo is responsible for the native code in these apps we can do the work of keeping all the libraries up to date. You're just responsible for updating the JS code, which normally has minimal breaking changes. Many people have been able to update versions by only changing their dependencies in package.json.
Re:Introducing Create React Native App 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.
Re:Introducing Create React Native App on Monday March 13, 2017 @03:35PM (#13861517)
Like dikaiosune said, the standalone app workflow isn't part of CRNA. The scripts used by the build servers are open sourced though: https://github.com/exponent/exponent#standalone-apps
> I suggest NativeScript as an alternative that's very similar in scope but far more mature

NativeScript has been around longer than React Native (at least for Android), but going by Github activity (not the greatest metric, but not aware of a better one) React Native[1] is much more active than NativeScript[2].

Some differences between Exponent and NativeScript:

- Exponent supports building iOS and Android apps on macOS, Windows, and Linux. With NativeScript you need a Mac to build iOS apps.

- Exponent also allows you to push updates to published apps, while publishing with NativeScript is identical to publishing regular iOS and Android apps.

[1] https://github.com/facebook/react-native [2] https://github.com/NativeScript/NativeScript

Some of these issues don't apply to Exponent:

> if you have native libraries for x86 or arm 64 in your app it immediately breaks it completely

We handle all the native code for you, so you'll never hit this.

> half the examples and half the dependencies on the web out there crash immediately because they decided you have to import React and Component from "react" instead of "react-native" now

We support multiple React Native versions in our client app, so if you target an old version of React Native it'll keep running on that version even when we upgrade.

The redux 3 vs. 4 part is still an issue, but you should only hit it when you're specifically upgrading your app.

We're planning on doing an AppImage for Linux since we're using Electron Builder (https://github.com/electron-userland/electron-builder). Just haven't had time for it yet!
Ah sorry, misread your comment. The dev tools will run on Windows 10, but the client apps won't. The client apps run on iOS and Android and the dev tools run on macOS, Windows, and Linux.
We support taking images with the camera but no video yet: https://docs.getexponent.com/versions/latest/sdk/imagepicker....
card.io isn't supported right now, but it's definitely on our list! If you want to use it right now you can send us a PR or just maintain a fork of our clients.

We have some plans to allow custom native modules without forking the client but that's probably a few months out. If you join our slack we'll let you know about any updates: https://slack.exponentjs.com/

We don't support Windows Phone - just iOS and Android.

Android tablets should work. We don't have native iPad support but we're planning on adding it.

We don't have a binary for Linux yet (keep meaning to do it, want to get to it soon) but building from source works! https://github.com/exponentjs/xde#build-from-source
Hello! I work on Exponent. We don't support Bluetooth right now but it's high on our priority list. We have docs for Facebook here: https://docs.getexponent.com/versions/latest/sdk/facebook.ht...
I think Appcelerator Titanium is more comparable to React Native than to Exponent. Here's a post by Brent about the differences between Exponent and React Native: http://stackoverflow.com/questions/39170622/what-is-the-diff.... You can join us on Slack if you want to discuss more! https://slack.exponentjs.com/

(I work on Exponent)

Hey! I work on Exponent. Basically, we don't make money right now. Our plan is to eventually help developers make money and take some cut of that. We're open source so you'll never be locked in if we start doing anything you don't agree with. We talk about it a little more at https://docs.getexponent.com/versions/latest/introduction/fa...
Hey Joe. I work on Exponent.

When you're developing you can use Exponent's apps from the App Store/Play Store, so you can get started immediately and let other people test your app easily. Once you're ready to put your app in the stores you start a build using our CLI and we build it on our servers (see https://docs.getexponent.com/versions/latest/guides/building...). We want to make it easy for people on Windows and Linux to build apps so don't require you to use Xcode or Android Studio. If you don't want the builds to happen on our servers our clients are open source so you can do it yourself if you want (https://github.com/exponentjs/exponent).