cljsrn

https://github.com/drapanjanas/re-natal | https://github.com/drapanjanas/re-natal/wiki/FAQ | https://github.com/condense/mercury-app/wiki | https://github.com/seantempesta/expo-cljs-template/ https://www.npmjs.com/package/create-expo-cljs-app
vikeri 2020-01-24T07:30:50.004400Z

@ericihli We just have three cljs builds that accomplish the same thing more or less. We have env/dev/env/config.cljs , env/prod/env/config.cljs etc. and then we just change the src config in the cljs build option to include the relevant dir.

vikeri 2020-01-24T07:30:57.004600Z

No external libs needed.

Wes Hall 2020-01-24T11:29:50.008200Z

Hey folks, with sincere apologies, as this is probably a question that gets asked hundreds of times, but I have been playing with some app development stuff and currently doing that thing of alternating between ideas of using the native languages, doing some react native in JS, or going for the full abstract and trying to put things together with RN and CLJS. Clojure is my language of choice these days, but I also worry about too many levels of abstraction and the state of the tooling. Are there any particularly shining examples of good RN+CLJS projects that anybody can link me to, so I can have a bit of a browse as to how all this stuff looks when crafted by somebody who knows what they are doing? šŸ™‚

vikeri 2020-01-24T11:31:51.008700Z

@wesley.hall https://github.com/status-im/status-react is the biggest open source one afaik

vikeri 2020-01-24T11:32:44.009600Z

In general Iā€™d say that itā€™s an exceptionally productive and powerful setup for developing mobile apps. The tooling can at times be quite difficult to get right though.

Wes Hall 2020-01-24T11:37:53.011400Z

Thank you @vikeri. Will have a look through that project. Looks like lots going on in there. Judging by the channel title, I assume re-natal is still the goto for most people doing this stuff? I have been hearing some good things about expo, but this whole world is pretty new to me. Done a lot of server side and web stuff, but haven't really taken the leap into native mobile in a serious way.

vikeri 2020-01-24T11:38:51.012400Z

Actually I think shadow-cljs is the preferred setup nowadays. And if you donā€™t need specific native features Iā€™d definitely go with expo.

ā˜ļø 3
Wes Hall 2020-01-24T11:39:55.012700Z

Great info. Thank you.

danielneal 2020-01-24T11:56:15.013500Z

@wesley.hall if you havenā€™t come across it, you might find my talk useful, thereā€™s a link to a demo app in it, but the demo app is a bit experimental šŸ™‚

šŸ‘ 1
danielneal 2020-01-24T11:56:30.013700Z

https://www.youtube.com/watch?v=BZR4N5cY64U

danielneal 2020-01-24T11:56:43.014300Z

our prod app isnā€™t open source Iā€™m afraid though

2020-01-24T13:26:53.016800Z

@wesley.hall You can check this repo, if you want try "Shadow-CLJS + Expo + Re-frame" instead Re-natal https://github.com/PEZ/rn-rf-shadow

šŸ‘ 3
1
jgood 2020-01-26T21:26:56.025600Z

I did something very similar but with a few more dependencies. šŸ˜‰ https://github.com/jgoodhcg/shadow-cljs-expo-starter

šŸ‘ 1
Wes Hall 2020-01-24T14:30:30.018400Z

Thanks folks. Just going to be in a bit of a meeting fest for the rest of the day but will look at both tonight :)

dotemacs 2020-01-24T15:45:00.020Z

Another repo you might want to consider, is this one (not a lot in the README, but plenty of detailed explanations in the comments on how to structure the app and how to use react-navigation) https://github.com/eihli/cljs-react-native-starter /cc @wesley.hall

šŸ‘ 1
anson 2020-01-24T15:58:26.020400Z

Hi everyone šŸ™‚ I want to share a library that I just published that helps you write modern React components with CLJS (yet another!). I started on a CLJS/RN project recently and felt that the various frameworks libraries out there didnā€™t try hard enough to get out of my way - surely itā€™s a matter of preference, but I really just wanted to define components using defn instead of some DSL or helper. I left state management out of scope, and I think ended up with a nice API that achieves the goal with strong extensibility. Broadcasting here because Iā€™m happy with it and hope someone out there finds it useful šŸ˜ Feedback welcome! Link below https://github.com/anrosent/rct

1
vikeri 2020-01-24T16:00:30.021500Z

Interesting! Iā€™m personally very happy with reagent and re-frame. Did you try those and if you did what did you find the issues to be?

vikeri 2020-01-28T15:51:43.027500Z

Interesting. re-frame is pretty killer. Would be very interesting if you could switch out reagent for your implementation.

anson 2020-01-24T17:40:39.021600Z

Thanks. I started the RN project with reagent/re-frame from the stencil, but my thinking was: 1. Saw hooks/async render/scheduler improvements in recent/upcoming React core dev 2. ^ Gives leverage to a small library focused on mapping to native components 3. Skeptical of the leverage of reagentā€™s reactivity/rendering solutions in light of ^^. Wondered if reagentā€™s solutions wouldnā€™t track these improvements due to all the custom mechanics. 4. I vaguely recall being petty about the way I had to use r/adapt-class and interop with native components, whether using native components in reagent components or vice-versa with react-navigation. I forget if this pettiness was justified, but wanted to be closer to native components to minimize problems. 5. Was focused on ergonomics of my current problems, probably neglecting most of the reasons that the other frameworks are so built out. So I started writing the library. Of course I then had to implement a state-management library, which made it less of a win since I recall re-frame looking really nice but coupled with reagentā€¦ In any case, thatā€™s more or less the origin story :)

šŸ‘ 1