One of the challenges when starting out with Clojure is piecing together a web
development stack. There is no single dominant framework like Rails in the Ruby
world, or Django for Python. Instead the focus is on small composable libraries.
Figuring out which ones you need, what they do, and how to put them together can
be a real challenge.
The Luminus project seeks to remedy this. It gives you everything you need to
get started in a single package. Luminus comes with comprehensive documentation,
including information on security, testing, and how to deploy your app to
In this episode, and the next one, I’ll take you on a quick tour through Luminus
by building a simple wiki application.
lein new luminus lambwiki +postgres
Luminus comes as a template for leiningen, so I’m generating my application
skeleton with the
lein new command. I’ll be using PostgreSQL to store the
data. It’s a tried and trusted database that I’m confident to use both during
development and in production.
The directory layout is pretty standard. Most code lives under the
directory. Configuration that only relates to a specific environment, such as
development, or production, goes under
resources directory contains