Android ♥ Clojure

Simplicity and brevity of Clojure combined with Android platform ubiquity and robustness gives you a powerful dynamic environment to develop your mobile applications.

Get started
Latest news: (26/07/15) Lein-droid update: AAR support, multi-dexing, simpler setup


Clojure is a mature programming language that compiles to JVM bytecode. This fact makes it possible to package AOT-compiled Clojure code into Android applications. But what are the compelling features Clojure can offer compared to Java when it comes to mobile development?

Everything comes with a price. Clojure-Android has a couple of drawbacks and peculiarities you should consider before jumping into development.

Get started

Lein-droid tutorial will help you install all the required tools and get you familiarized with Clojure/Android build process.

Android App Development with Clojure is a very comprehensive step-by-step guide to writing a simple, yet functional Clojure mobile application.


This list contains developer tools that support Clojure-Android initiative or are somehow related to it.

  Project Docs Description
leiningen.jpg lein-droid Wiki, Marginalia Leiningen plugin, a build tool for Clojure-Android projects.
neko.png Neko Wiki, Marginalia Toolkit library for idiomatic Clojure development on Android.
cider.png CIDER Installation Clojure IDE and REPL for Emacs.
emacs.png ac-cider   Auto-complete source for CIDER completion.
nightcode.png Nightcode   A simple IDE for Clojure and Java projects targeting the command line, the desktop, the web, Android, and iOS.


The following list consists of mobile applications that are powered by Clojure-Android tools.

  Project Author Description
clarity.png Clarity Keyboard SwiftKey Greenhouse Clarity Keyboard Beta is an experimental keyboard offering a simple way to type, helping you to focus on what you’re writing and nothing else.
4clojure.png 4Clojure (source) Alex Yakushev Solve short Clojure challenges on your mobile phone.
spaz.png SPAZ Radio App Ken Restivo A radio listening app for the SPAZ streaming radio station.
figurehead.png Figurehead (source) Wei Peng Rule your Android, as the Root, fully programmable, in Clojure.
nightweb.png Nightweb (source) Zach Oakes Nightweb connects your Android device to an anonymous, peer-to-peer social network.


Right now the main communication channel is the mailing list. It is not highly populated, but you will most likely get an answer from one of the developers.

You can also join #clojure-android channel on IRC server and catch someone there.

If you experience troubles with some of the tools, please open an issue in the respective tool's Github repository.