This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2016-12-30
Channels
- # adventofcode (11)
- # beginners (155)
- # boot (627)
- # cider (64)
- # cljs-dev (110)
- # cljsrn (36)
- # clojure (290)
- # clojure-austin (21)
- # clojure-russia (2)
- # clojure-spec (2)
- # clojure-uk (21)
- # clojurescript (81)
- # code-reviews (2)
- # core-async (33)
- # cursive (6)
- # datomic (9)
- # emacs (1)
- # hoplon (472)
- # instaparse (1)
- # lein-figwheel (4)
- # luminus (9)
- # om (2)
- # protorepl (10)
- # re-frame (10)
- # reagent (48)
- # schema (2)
- # sql (5)
- # untangled (17)
- # vim (1)
- # yada (108)
> 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
Most of the target audience are engineers, so a more in depth detail is better than a sales pitch 🙂
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
exponent is more about having the full environment for mobile dev vs. just a UI lib with some addons or such
more on that here: https://docs.getexponent.com/versions/v12.0.0/introduction/faq.html#what-is-the-difference-between-exponent-and-react-native
@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.
haha yeah the recent thing i'm excited about is that i directly bound opengles to JS in a webgl-like API 🙂
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
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.
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.
You could copy exponent’s specific modules to your project, I haven’t tried that yet.
@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.
I’m working to add boot support too.
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
No problem! I’ve used Onesignal and react-native-push-notifications for push notifications. I heard Pusher is also completely free.
yeah @dvcrn it's probs easiest to use on a new project vs. converting an existing project if you already have a project going!
@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
@doglooksgood Hi, I basically copy re-natal and add auto-generate externs to https://github.com/tiensonqin/exponent-cljs-template.
If you need custom native modules, you could fork exponent.
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?@pesterhazy Nope, just tried cloning brn/master and it still doesn’t work :thinking_face:
in SimpleExampleApp?
Can confirm that I get the same double message in a fresh react-native init
so maybe that’s not an issue...
you get the same issue with plain js?
no, I don't think I do (in 0.30)