How can I use clojure to create a mobile application (versions for Android and IO)

I have already seen that there are several tools for creating mobile applications from clojure, but I would like to know more detailed information about libraries, environments, flaws, profiling and real working examples.

thanks

+7
clojure clojurescript
source share
3 answers

Using ClojureScript with React Native is now an excellent answer to this question:

  • The effectiveness of React Native is excellent.
  • Existing React libraries, such as Om and Reagent, work with React Native.
  • You can benefit from the reuse of the knowledge "know once, write somewhere."
  • It’s beneficial for you to use the stack and language in which there are meaningful communities.

And the most compelling reason: React Native allows you to write mobile applications using the power of ClojureScript as a functional language, avoiding the imperative style, mutation and state.

+12
source share

So far, here is my research result:

To create my own mobile applications, I found 2 available plugins:

  • Native Android: Lane Droid . Let you compile, deploy, install, and live with the usual lein commands [lein droid doall, lein droid install, lein droid compile].
  • Native iOS: lein-fruit . Leiningen plugin for creating native iOS applications in Clojure and Java using RoboVM bytecode for a native translator.

There is also another interesting way to create an iOS application in the same way as clojurescript to get javascript. In this case, from Clojure to a scheme with C clojure -scheme

And on the ir # clojure channel, David Nolen and others suggest the following ways:

[6:27pm] dnolen: tangrammer: w/ iOS you'll have better luck with the JavaScriptCore bridge and ClojureScript [6:27pm] dnolen: tangrammer: I've tried it works great and I know other people are experimenting with it as well [6:28pm] dnolen: tangrammer: it does limit you to iOS 7, but you could take the Ejecta approach for earlier OSs [6:38pm] dnolen: tangrammer: core.async on iOS works great [6:38pm] dnolen: tangrammer: you can also do multithreaded CLJS on iOS 
+6
source share

Why and How Clojure on Android is a great starting point and covers it better than I could here. From what I've seen, the lein-droid plugin leiningen is the easiest way to get started, although the process is sometimes not entirely smooth.

+4
source share

All Articles