A smarter client-side in ClojureScript
Shoreleave is a collection of integrated libraries that focuses on:
- Idiomatic interfaces
- Common client-side strategies
- HTML5 capabilities
- ClojureScript's advantages
This is a work in progress
The goal is illustrate how to build a client using partial rendering, and render search results from SOLR via JSONP calls.
You can interactively explore the code base using a Catnip guided tour:
You can also browse the Marginalia docs and run with app with:
Or build the demo from scratch with:
$ rake build:fullhtml[prod] $ lein cljsbuild once $ lein run
Shoreleave makes no assumptions about other libraries you might be using in your app.
This particular demo uses:
Why is there a Rakefile
This demo is built using partial renders. Pages are partially compiled (baked) on the server, then DOM swaps and dynamic interactions are added with ClojureScript.
The Rakefile laces together the partial pieces of HTML into a final, servable page.
You can compile the pages with:
The client/broswer uses the partial HTML snippets to build out pieces of the DOM.
For more information on partial renders, please see Paul's blog post
Copyright © 2012 Paul deGrandis
Distributed under the Eclipse Public License, the same as Clojure.
Please see the
LICENSE_epl.html for details.