Fork me on GitHub
#hoplon
<
2019-06-14
>
George Ciobanu15:06:37

I'd like to use the Hoplon model to develop mobile apps - I really really like it more than React/Native. I looked into the best ways to do this and have some thoughts: 1. Transpile Clojure to Dart and use Flutter (really involved process, might create weird interactions since Flutter itself has some kind of reactivity (though I think they can coexist). Note that Flutter also has a web version https://flutter.dev/web 2. Use Gluon Mobile (https://gluonhq.com/products/mobile/javafxports/) which is interesting since it turns out GraalVM is a JVM running on iOS and Android and it can run Clojure (like all good JVMs do). So then I'd just have to rewrite/adapt HLisp to render JavaFX mobile elements instead of HTML css etc. Javelin and Castra should work the same way 3. Compile Clojure to ObjC/ Swift for iOS, and to... Java? Just deploy? for Android. For iOS it Seems like a huge endeavor. Any other thoughts on how to approach this? My goal is to create a web (or desktop) visual editor similar to http://Bubble.is but for mobile. The user draws the UI in an HTML page and when they deploy to iOS or Android the UI looks the exact same way.

George Ciobanu15:06:43

Another, somewhat related question, that I could not figure out from watching videos and reading documentation: what happens when a cell triggers an update? Is the dom node and everything below it just rebuilt? I know that for some items just the innerHTML is changed

flyboarder16:06:51

@geo.ciobanu this is a loaded question, regarding the mobile development, you can choose any of the methods, there is already a hoplonfx in the works for desktop, I imagine this would work on mobile too

flyboarder16:06:40

I personally think phonegap would be easiest since hoplon is a html/js lib - progressive apps would be the way to go IMO

George Ciobanu19:06:46

I took some time to research and think about PWAs and they seem like it's a great option for Android and (of course) web. I can always handle iOS differently. Anyway thank you for mentioning and know that I'm thinking through it!

flyboarder16:06:19

When a cell is changed the attribute is updated, whatever that attribute does is then applied to the DOM object

šŸ‘ 4
George Ciobanu16:06:12

Thank you @flyboarder! Didn't mean to make it a loaded question, just want to know what options exist to use the Hoplon paradigm on mobile šŸ™‚ This is a personal preference but I want to generate native code - not a huge fan of webviews and even of the RN adapter. Flutter is ok because although it has its own rendering engine it's got native-like performance. Looking at HoplonFx now. The only thing is, how does one create apps that look like the native ones? JavaFx does not have iOS/Android specific component libraries so any app developed based on it will look very Java like.

flyboarder16:06:15

Yeah Iā€™m not sure what libraries are available for java mobile stuff, but if you find something you like we can help make it hoplon compatible!

George Ciobanu17:06:48

@flyboarder I think I found 2: https://www.codenameone.com/ and Guon Glisten https://gluonhq.com/category/gluon-mobile/glisten/. Although Glisten doesn't seem to have lots of documentation (or at least not well advertised) the repo for it seems to be kept up to date: https://mvnrepository.com/artifact/com.gluonhq/charm-glisten?repo=gluonhq-releases

flyboarder17:06:22

Yep looks like it

George Ciobanu18:06:39

I need to wrap my head around hoplonfx and how it would work with these component libraries - thank for helping me so far, I'll get back with some questions/ideas once I clarify it for myself šŸ™‚

George Ciobanu19:06:46

I took some time to research and think about PWAs and they seem like it's a great option for Android and (of course) web. I can always handle iOS differently. Anyway thank you for mentioning and know that I'm thinking through it!