Fork me on GitHub
#cljsrn
<
2016-12-30
>
dvcrn01:12:46

@nikki I would say focus on what it gives you over react native

dvcrn01:12:56

> Exponent lets web developers build truly native apps that work across both iOS and Android by writing them once in just JavaScript. That's exactly what React Native does

dvcrn01:12:53

Most of the target audience are engineers, so a more in depth detail is better than a sales pitch 🙂

nikki02:12:46

that's a good point, thanks!

nikki02:12:17

to answer that: the main difference is that with RN you still have to write some native code, esp. if you want to have other stuff like push notifications etc. that aren't already there

nikki02:12:32

exponent is more about having the full environment for mobile dev vs. just a UI lib with some addons or such

nikki02:12:31

i agree that on our landing page it would be useful to make it easier to get to that

tiensonqin02:12:50

@dvcrn @nikki Sorry for the late response. Like nikki said, a intended design of exponent is you don’t write native codes. exponent team create a lot of native apis and bridging them to JS, like barcode scan, google & facebook login, opengl(nikki did). So it saves your time, you don’t need to react-native link, open Xcode or Android Studio to write boilerplate code.

nikki02:12:21

haha yeah the recent thing i'm excited about is that i directly bound opengles to JS in a webgl-like API 🙂

nikki02:12:26

working on making it so that you can send camera / react native view / video textures into OpenGL and apply shaders on them -- right now you can include opengl views as part of the RN view hierarchy -- so you could make a game and use RN for the UI or use an OpenGL view for like a drawing app in your UI and so on

tiensonqin02:12:02

Also exponent’s name from expo for components, so it’s started to make mobile development more web experience, you can easily publish your app to exponent, get a url, then you can share it to your friends. That’s important for me.

dvcrn02:12:23

how trivial is it to add exponent to an existing project?

tiensonqin02:12:42

To solve the you only write pure Javascript(Clojurescript), no native codes problem, they recently added exp detach (experiment), basically you start with exponent, then when you need custom native modules, you can detach to create correspond Xcode and Android Studio projects, that’s very exciting to me.

tiensonqin02:12:33

You could copy exponent’s specific modules to your project, I haven’t tried that yet.

dvcrn02:12:01

hmm I see

tiensonqin02:12:13

@dvcrn If you’d like to give it a try, you could run lein new exponent your-project, basically it will give you a pretty stable environment(reload, nrepl) in minutes.

tiensonqin02:12:36

I’m working to add boot support too.

dvcrn02:12:25

I might try that for the next project! Thanks Currently the only thing I'm missing is push notifications but that doesn't seem that hard either

tiensonqin02:12:49

No problem! I’ve used Onesignal and react-native-push-notifications for push notifications. I heard Pusher is also completely free.

nikki02:12:50

yeah @dvcrn it's probs easiest to use on a new project vs. converting an existing project if you already have a project going!

tianshu08:12:40

@tiensonqin Hi, I saw you attempt to use clojurescript with exponent. is that possible to write our own exponent that ships figwheel and RN package server? make re-natal easy to use

tianshu08:12:03

or some tool like that?

tiensonqin11:12:50

@doglooksgood Hi, I basically copy re-natal and add auto-generate externs to https://github.com/tiensonqin/exponent-cljs-template.

tiensonqin11:12:04

If you need custom native modules, you could fork exponent.

vikeri12:12:08

Does anyone else have problems with reload not working in boot-react-native. I noticed that I have double output of Running application in the log:

RCTLog.js:38
Running application Pilloxa ({
    initialProps =     {
    };
    rootTag = 1;
})

infoLog.js:17 
Running application "Pilloxa" with appParams: {"rootTag":1,"initialProps":{}}. __DEV__ === true, development-level warning are ON, performance optimizations are OFF
Is anyone else seeing this?

vikeri12:12:36

@pesterhazy Nope, just tried cloning brn/master and it still doesn’t work :thinking_face:

pesterhazy12:12:05

in SimpleExampleApp?

vikeri12:12:51

Can confirm that I get the same double message in a fresh react-native init so maybe that’s not an issue...

pesterhazy12:12:21

you get the same issue with plain js?

vikeri12:12:12

Yep, hence not sure if it is an issue. You don’t get it in the console?

pesterhazy13:12:55

no, I don't think I do (in 0.30)

vikeri13:12:10

Ok weird...