Skip to content
This repository has been archived by the owner. It is now read-only.
Simple, fast, easy web applications in idiomatic Clojure.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.



Welcome to Cascade! Cascade is a web application view library for Clojure that emphasizes idiomatic use of Clojure while drawing inspiration from the Apache Tapesty web framework.

Cascade templates are an embedded DSL directly in the Clojure code; this takes some getting used to but ensures that you can take maximum advantage of Clojure when creating your application. Templates are converted to functions.

Cascade converts templates to function, but the output of functions is not markup text; instead, Cascade uses an internal DOM structure as an intermediate format prior to streaming markup. This has some significant advantages,
in that the final output can be manipulated between the rendering stage and the streaming stage.

Cascade is designed to be used as a view technology with Ring and Compojure.

See the Cascade Wiki for more information.


So where’s the progress? Sorry folks, I’ve been busy with several large Tapestry projects, plus Tapestry 5.3, plus Project Jacob (my now 19 month old son) to make any progress on Cascade. I still have high hopes for Cascade, but I’m in the chicken-and-the-egg problem of finding a client that can directly or indirectly support its development.

Cascade started as a full web framework, but has evolved into a view technology that plugs into existing frameworks (Ring and Compojure).


Cascade is a itty-bitty side project of Howard M. Lewis Ship, who should be spending more time on Tapestry.

Care to contribute? Drop me a line!


Cascade is released under the terms of the Apache Software License 2.0.

Cascade bundles the following libraries:

You can’t perform that action at this time.