project.clj 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127
  1. (defproject uspooge-app "0.1.0-SNAPSHOT"
  2. :description "FIXME: write this!"
  3. :url "http://example.com/FIXME"
  4. :license {:name "Eclipse Public License"
  5. :url "http://www.eclipse.org/legal/epl-v10.html"}
  6. :min-lein-version "2.7.1"
  7. :jvm-opts ["-Xmx512M"
  8. "--add-modules" "java.xml.bind"]
  9. :dependencies [[org.clojure/clojure "1.9.0"]
  10. [org.clojure/clojurescript "1.10.439"]
  11. [org.clojure/core.async "0.4.474"]
  12. [baking-soda "0.2.0"]
  13. [reagent "0.8.1" :exclusions [cljsjs/react
  14. cljsjs/react-dom]]
  15. [cljsjs/react "16.3.2-0"]
  16. [cljsjs/react-dom "16.3.2-0"]
  17. [cljsjs/react-transition-group "2.3.1-0"]
  18. [cljsjs/react-popper "0.10.4-0"]
  19. [cljs-http "0.1.44"]]
  20. :plugins [[lein-figwheel "0.5.15"]
  21. [lein-cljfmt "0.6.0"]
  22. [lein-cljsbuild "1.1.7" :exclusions [[org.clojure/clojure]]]]
  23. :source-paths ["src"]
  24. :cljsbuild {:builds
  25. [{:id "dev"
  26. :source-paths ["src"]
  27. ;; The presence of a :figwheel configuration here
  28. ;; will cause figwheel to inject the figwheel client
  29. ;; into your build
  30. :figwheel {:on-jsload "uspooge-app.core/on-js-reload"
  31. ;; :open-urls will pop open your application
  32. ;; in the default browser once Figwheel has
  33. ;; started and compiled your application.
  34. ;; Comment this out once it no longer serves you.
  35. :websocket-host :js-client-host
  36. :open-urls ["http://localhost:3449/index.html"]}
  37. :compiler {:main uspooge-app.core
  38. :asset-path "js/compiled/out"
  39. :output-to "resources/public/js/compiled/uspooge_app.js"
  40. :output-dir "resources/public/js/compiled/out"
  41. :source-map-timestamp true
  42. ;; To console.log CLJS data-structures make sure you enable devtools in Chrome
  43. ;; https://github.com/binaryage/cljs-devtools
  44. :preloads [devtools.preload]}}
  45. ;; This next build is a compressed minified build for
  46. ;; production. You can build this with:
  47. ;; lein cljsbuild once min
  48. {:id "min"
  49. :source-paths ["src"]
  50. :compiler {:output-to "resources/public/js/compiled/uspooge_app.js"
  51. :main uspooge-app.core
  52. :optimizations :advanced
  53. :pretty-print false}}]}
  54. :figwheel {;; :http-server-root "public" ;; default and assumes "resources"
  55. ;; :server-port 3449 ;; default
  56. ;; :server-ip "127.0.0.1"
  57. :hawk-options {} ; slow but lets us work in docker/ssfhs
  58. :css-dirs ["resources/public/css"] ;; watch and update CSS
  59. ;; Start an nREPL server into the running figwheel process
  60. ;; :nrepl-port 7888
  61. ;; Server Ring Handler (optional)
  62. ;; if you want to embed a ring handler into the figwheel http-kit
  63. ;; server, this is for simple ring servers, if this
  64. ;; doesn't work for you just run your own server :) (see lein-ring)
  65. ;; :ring-handler hello_world.server/handler
  66. ;; To be able to open files in your editor from the heads up display
  67. ;; you will need to put a script on your path.
  68. ;; that script will have to take a file path and a line number
  69. ;; ie. in ~/bin/myfile-opener
  70. ;; #! /bin/sh
  71. ;; emacsclient -n +$2 $1
  72. ;;
  73. ;; :open-file-command "myfile-opener"
  74. ;; if you are using emacsclient you can just use
  75. ;; :open-file-command "emacsclient"
  76. ;; if you want to disable the REPL
  77. ;; :repl false
  78. ;; to configure a different figwheel logfile path
  79. ;; :server-logfile "tmp/logs/figwheel-logfile.log"
  80. ;; to pipe all the output to the repl
  81. ;; :server-logfile false
  82. }
  83. ;; Setting up nREPL for Figwheel and ClojureScript dev
  84. ;; Please see:
  85. ;; https://github.com/bhauman/lein-figwheel/wiki/Using-the-Figwheel-REPL-within-NRepl
  86. :profiles {:dev {:dependencies [[binaryage/devtools "0.9.9"]
  87. [figwheel-sidecar "0.5.15"]
  88. [com.cemerick/piggieback "0.2.2"]]
  89. ;; need to add dev source path here to get user.clj loaded
  90. :source-paths ["src" "dev"]
  91. ;; for CIDER
  92. ;; :plugins [[cider/cider-nrepl "0.12.0"]]
  93. :repl-options {:nrepl-middleware [cemerick.piggieback/wrap-cljs-repl]}
  94. ;; need to add the compliled assets to the :clean-targets
  95. :clean-targets ^{:protect false} ["resources/public/js/compiled"
  96. :target-path]}})