project.clj 3.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. (defproject com.analogzen.clojure-stack/web-client "0.0.1-SNAPSHOT"
  2. :dependencies [[org.clojure/clojure :clj1.8]
  3. [org.clojure/clojurescript :cljs1.8]
  4. [com.stuartsierra/component :component/clojure1.7+]
  5. ;[reagent "0.5.1"
  6. ; :exclusions [org.clojure/tools.reader]]
  7. ]
  8. :plugins [[lein-modules "0.3.11"]
  9. [lein-environ "1.0.2"]
  10. [lein-cljsbuild "1.1.2"]]
  11. ;
  12. :hooks [leiningen.cljsbuild]
  13. ; :prep-tasks ["compile" ["cljsbuild" "once"]]
  14. :cljsbuild {:builds {:prod {:source-paths ["src"]
  15. :compiler {:main "example.core"
  16. :output-to "resources/public/gen/js/main.js"
  17. :output-dir "resources/public/gen/js"
  18. :asset-path "gen/js"}}}}
  19. ; opinion: two options: 1) start with figwheel for dev. 2) start with main entry point.
  20. :clean-targets ^{:protect false} [:target-path "resources/public/gen"]
  21. ; opinion: dev should be a layer on top of prod. system-map can be updated by dev accordingly, before (start)
  22. :profiles {:dev {:plugins [[lein-figwheel "0.5.0-4"]]
  23. :cljsbuild {:builds {:dev {:source-paths ["src" "dev-src"]
  24. ; if only we could copy these from core...
  25. :compiler {:main "example.dev"
  26. :output-to "resources/public/gen/js/main.js"
  27. :output-dir "resources/public/gen/js"
  28. :asset-path "gen/js"}
  29. ; it's nice to show all the options. editor option could be a projection of defaults,
  30. ; from getting effective project model.
  31. :figwheel {:server-ip "127.0.0.1"
  32. :server-port 3449
  33. :server-logfile "figwheel_server.log"
  34. :http-server-root "public"
  35. :heads-up-display true
  36. :repl true
  37. :nrepl-port 7888
  38. :css-dirs ["resources/public/css"]
  39. :on-jsload example.dev/reload!
  40. ;;; :ring-init example.dev/init! -- no such option
  41. ;:ring-handler example.dev/app
  42. }}}}}}
  43. :min-lein-version "2.5.0")