Compojure is a small, open source web framework for the Clojure programming language.
Here's a small web application written using Compojure and Ring.
(ns hello-world
(:use compojure.core, ring.adapter.jetty)
(:require [compojure.route :as route]))
(defroutes main-routes
(GET "/" [] "<h1>Hello World</h1>")
(route/not-found "<h1>Page not found</h1>"))
(run-jetty main-routes {:port 8080})
As of version 0.6.0, Compojure no longer adds default middleware to
routes. This means you must explicitly add the wrap-params
and
wrap-cookies
middleware to your routes.
To make this a little easier, the compojure.handler namespace provides functions that add common middleware functions to your routes.
The easiest way to use Compojure in your own projects is via Leiningen. Add the following dependency to your project.clj file:
[compojure "0.6.3"]
To build Compojure from source, run the following commands:
lein deps
lein jar
Compojure has a Google Group. This is the best place to ask questions and report bugs.