This repository has been archived on 2023-07-11. You can view files and clone it, but cannot push or open issues or pull requests.
toascii/src/main.clj

32 lines
937 B
Clojure

(ns main
(:require [ring.middleware.file :refer [wrap-file]]
[ring.middleware.file-info :refer [wrap-file-info]]
[ring.server.standalone :refer [serve]]
[toascii.handler :refer [handle-app init destroy]])
(:gen-class))
(defonce server (atom nil))
(defn get-handler []
(-> #'handle-app
(wrap-file "resources")
(wrap-file-info)))
(defn start-server [& [port]]
(let [port (if port (Integer/parseInt port) 3000)]
(reset! server
(serve (get-handler)
{:port port
:init init
:auto-reload? true
:destroy destroy
:open-browser? false
:join? false}))
(println (str "You can view the site at http://localhost:" port))))
(defn stop-server []
(.stop @server)
(reset! server nil))
(defn -main [& args]
(start-server))