I use Noir for a few things, and it's been great so far.
You can write Clojure on the front-end as well with Pinot, which is a ClojureScript framework created by the author of Noir (ibdknox).
Noir isn't very large, so it's easy to read through the source if you're not sure how something works.