Created
May 12, 2014 15:58
-
-
Save bendlas/7fb29934ca779692b4e4 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| (ns dev | |
| (:require | |
| cemerick.austin cemerick.austin.repls webnf.server | |
| [net.cgrand.enlive-html :refer [deftemplate content set-attr]] | |
| [net.cgrand.moustache :refer [app]] | |
| [ring.util.response :refer [not-found]] | |
| [ring.middleware.file :refer [wrap-file]])) | |
| (def repl-env) | |
| (defn init-cljs-repl [] | |
| (->> (reset! cemerick.austin.repls/browser-repl-env | |
| (cemerick.austin/repl-env :static-dir ["www/loesen/" "./" "out/"] | |
| :src "src/cljs" | |
| :optimizations :whitespace | |
| :pretty-print true)) | |
| constantly | |
| (alter-var-root #'repl-env)) | |
| ;; return nil to avoid printing and OOM | |
| nil) | |
| (defn cljs-repl | |
| "Turn your Clojure REPL into a ClojureScript REPL tied to that REPL environment" | |
| [] | |
| (cemerick.austin.repls/cljs-repl repl-env)) | |
| (deftemplate dev-page "dev.html" | |
| [] | |
| [:#repl-script] (content | |
| (#'cemerick.austin/repl-client-js (:session-id repl-env)) | |
| (format "document.addEventListener('DOMContentLoaded', function() {clojure.browser.repl.connect.call(null, '%s');});" | |
| (:repl-url repl-env)))) | |
| (def handler | |
| (app | |
| [] (fn [_] | |
| {:headers {"content-type" "text/html"} | |
| :body (dev-page)}) | |
| [&] [(wrap-file "www/loesen") | |
| (wrap-file ".") | |
| [&] not-found])) | |
| (def server) | |
| (defn main [] | |
| (def server | |
| (-> (webnf.server/server {:port 6030}) | |
| (webnf.server/add-vhost! | |
| :main ["localhost"] (webnf.server/make-ring-handler #'handler)) | |
| webnf.server/start!))) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment