├── Procfile ├── .gitignore ├── README.md ├── project.clj └── src └── sample └── app.clj /Procfile: -------------------------------------------------------------------------------- 1 | web: lein run 2 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /target 2 | /lib 3 | /classes 4 | /checkouts 5 | pom.xml 6 | *.jar 7 | *.class 8 | .lein-deps-sum 9 | .lein-failures 10 | .lein-plugins 11 | *.keystore 12 | .DS_Store 13 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | Hello Clojure/Compojure 2 | ======================= 3 | 4 | A minimal Hello World web app in [Clojure](http://clojure.org/), using the [Compojure](https://github.com/weavejester/compojure) web framework. 5 | -------------------------------------------------------------------------------- /project.clj: -------------------------------------------------------------------------------- 1 | (defproject clojure-sample "1.0.1" 2 | :description "Hello World Clojure Web App" 3 | :dependencies [[org.clojure/clojure "1.4.0"] 4 | [compojure "1.1.1"] 5 | [ring/ring-jetty-adapter "1.1.2"]] 6 | :main ^:skip-aot sample.app) 7 | -------------------------------------------------------------------------------- /src/sample/app.clj: -------------------------------------------------------------------------------- 1 | (ns sample.app 2 | (:require [ring.adapter.jetty :as jetty] 3 | [compojure.core :refer [defroutes GET]])) 4 | 5 | (defroutes handler 6 | (GET "/" [] 7 | {:headers {"Content-type" "text/plain; charset=UTF-8"} 8 | :body "Hello world!"})) 9 | 10 | (defn -main [] 11 | (jetty/run-jetty handler 12 | {:port (Integer. (or (System/getenv "PORT") "8080")) 13 | :join? false})) 14 | --------------------------------------------------------------------------------