Fork me on GitHub
#cljsrn
<
2020-09-26
>
zackteo02:09:32

Hello! If re-natal - https://github.com/drapanjanas/re-natal only supports figwheel, does that mean I'll be unable to import in js libraries? 😮

Oliver George04:09:35

It will work with react native libraries.

Oliver George04:09:14

That particular project is a bit dated. Figwheel, ShadowCljs and Krell are candidates.

zackteo07:09:22

I have to admit I have been struggling quite abit with how/where exactly to start. I tried some of the links above. Got quite far with Expo, only to learn that there's an issue on the latest android app version

Oliver George07:09:35

This stuff is an order of magnitude messier than a regular clojurescript webapp.

👍 12
zackteo07:09:46

Glad to know 😅

Oliver George07:09:06

Are you comfortable with react native?

zackteo07:09:02

Unfortunately, i have say not really ;x Are there any tips/guides that you recommend? If i try venturing into it again

Oliver George05:09:04

My advice would be to start without CLJS. Build up screens that way. You can do that in JS or CLJS. There's less friction in pure JS (the interop on some components gets quite annoying from CLJS). The place where CLJS shines for me is in state management (e.g. re-frame providing state and an event loop).

Oliver George05:09:42

That's only an opinion. Something I've come to over time. Others might disagree.

zackteo05:09:50

What is CLJS actually? I was thinking that it should mean clojurecript? :o (you mean +cljs in the template right) doesn't that add clojurescript?

Oliver George05:09:39

Sorry, by CLJS I mean clojurescript

zackteo06:09:04

So clojure backend and then js frontend?

Oliver George06:09:33

I think lots of people will have opinions varied opinions about this stuff.

Oliver George06:09:35

My main advice would be to be systematic about picking up each layer of technology on the frontend.

Oliver George06:09:59

1. get comfortable with react native to build components

Oliver George06:09:32

2. think about state management. I have used re-frame for years so I'm probably a bit biased.

Oliver George06:09:50

Right now I'm exploring breaking up the problem

Oliver George06:09:51

1. build components (e.g. UX) as stateless react JS components.

Oliver George06:09:58

2. hook things up into a stateful app

Oliver George06:09:42

StorybookJS seems a good way to develop the UX components so they are good/polished before moving onto the complexities of building out a stateful app.

Oliver George06:09:33

Components take a lot of effort to get right. For mobile apps the polish matters - transitions, layouts on different screens...

Oliver George06:09:50

Working with the somewhat quirky/stateful/opinionated react native components can be irritating from CLJS

zackteo06:09:14

I see i see! I've been trying to work with clojure to build something. But so far haven't managed to really do anything yet. The closest I've come is making a simple telegram bot. Part of it stems from the clojure ecosystem being pretty daunting. Think I havent really been approaching the task incrementally