Native mobile app development in Clojure

Build high-quality, native mobile apps with the language you love.

Vee is alpha-quality software. Its abstractions, tools, and library code will likely change drastically in the near future as it's used to build and ship production apps.

Looking for a way to help out? Use Vee to build something neat and let us know how it went. Find something broken or confusing? Open an issue.

Native UIs and App Logic in ClojureScript

You'll have access to ClojureScript bindings for native UI elements and APIs, including network communication, geolocation, picture and video capture, and push notifications.

;; Create a window with a button titled
;; "Tap Me". Open an alert dialog with the
;; message "Hello Vee!" when the button
;; is tapped.

(ti/win {:background-color "white"}
    {:title "Tap Me"
      (fn [e]
          {:message "Hello Vee!"}))}}))

One Tool, Many Platforms

Vee is built on Titanium, a robust, open-source project which allows you to build native appliations on the iOS, Android, Windows Phone, Blackberry, and Tizen platforms.

You still need to understand the idioms and best practices for the platforms you're targeting, but with Vee you can use the same skillset and tools across the board.

Fast, Robust Development Experience

Make a change and immediately see the results in your simulator or on your device (or both at the same time).

You're free to architect your apps however you want to. Use the built-in abstractions for managing centralized state and dispatching, or bring your own.

Package and share your mobile code in the same way you're used to with your existing Clojure code.

Escape Hatch Included

Titanium provides a mechanism for building the performance-sensitive parts of your app as native modules, which you can interact with from ClojureScript.

Anything you can do in a traditional native app can be done using Vee.

Ready to get started?
Head over to the getting started guide.

Built With Vee


HIPAA-compliant chat for medical professionals.

  • Websockets
  • HTTP/S
  • Push Notifications
  • Address Book Integration
  • Camera Roll Integration
  • Picture / Video Capture
  • SQLite Integration
  • On-Disk AES Encryption


Share your location with friends for 60 minutes.

  • Geolocation
  • HTTP/S


Annotate and share mobile app screenshots.

  • Camera Roll Integration
  • Interactive Canvas Drawing
  • HTTP/S