Skip to content

Instantly share code, notes, and snippets.

@realgenekim
Created September 5, 2018 18:17
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save realgenekim/441c931ca7e8dc75ccc716aee24cde67 to your computer and use it in GitHub Desktop.
Save realgenekim/441c931ca7e8dc75ccc716aee24cde67 to your computer and use it in GitHub Desktop.
attempt to get multiple entry points running using figwheel.main
(defproject trello-workflow "0.1.0-SNAPSHOT"
:dependencies [[org.clojure/clojure "1.9.0"]
[org.clojure/clojurescript "1.10.339"]
;[org.clojure/clojurescript "1.9.946"]
[org.clojure/core.async "LATEST"]
[org.clojure/test.check "0.10.0-alpha2"]
[reagent "0.7.0"]
[re-frame "0.10.5"]
[day8.re-frame/http-fx "0.1.6"]
[secretary "1.2.3"]
[compojure "1.6.1"]
[yogthos/config "1.1.1"]
[ring "1.6.3"]
[ring/ring-json "0.4.0"]
[me.bsima/trello "0.3.0"]
[cheshire "5.8.0"]
[fipp "0.6.12"]
; client
[cljs-http "0.1.45"]
[cljs-ajax "0.7.4"]
[cljsjs/mousetrap "1.5.3-0"]
[cljsjs/linkify "2.1.4-0"]
[cljsjs/moment "2.22.2-0"]
[testdouble/clojurescript.csv "0.3.0"]
; server side
[clj-oauth "1.5.5"]
[org.clojure/core.async "LATEST"]
[figwheel-sidecar "0.5.16"]
[com.novemberain/monger "3.1.0"]
; allows great debugging messsages in clj/cljs
[philoskim/debux "0.4.12"]
; makes clojure.test output more readable
[pjstadig/humane-test-output "LATEST"]
[ring/ring-mock "0.3.2"]
[peridot "0.5.1"]
[gnl/ghostwheel "0.2.3"]]
:plugins [[lein-cljsbuild "1.1.7"]
[lein-ring "LATEST"]
[lein-cooper "1.2.2"]
[lein-ancient "0.6.15"]]
:min-lein-version "2.5.3"
:jvm-opts ["-Xmx2g" "-server"]
; can't put "externs" in :source-paths, otherwise get "duplicate externs" error upon min build
:source-paths ["src/clj" "script"]
:test-paths ["test/clj"]
:clean-targets ^{:protect false} ["resources/public/js/compiled"
"target"
"test/js"]
:figwheel {:css-dirs ["resources/public/css"]}
; :ring-handler trello-workflow.handler/dev-handler}
:cooper {"server" ["make" "server"]
"cljstest" ["make" "cljstest"]
"cljautotest" ["make" "cljautotest"]}
:profiles
{:dev
{:dependencies [[binaryage/devtools "0.9.10"]
[day8.re-frame/re-frame-10x "0.3.3"]
[com.cemerick/piggieback "0.2.2"]
[re-frisk "0.5.4"]]
:repl-options {:nrepl-middleware [cemerick.piggieback/wrap-cljs-repl]}
:plugins [[lein-figwheel "0.5.16"]
[lein-doo "0.1.10"]
[com.jakemccrary/lein-test-refresh "LATEST"]]
; The following code will be evaluated once at the beginning
; of every lein task (including `repl`, but excluding `jar` and `uberjar`)
; So this is like an 'init' stuff.
:injections [(require 'pjstadig.humane-test-output)
(pjstadig.humane-test-output/activate!)]}
;
; TEMPORARILY DISABLING CLJS TO SPEED UP COMPILES
; no need for uberjar in dev environment?
:uberjar {:prep-tasks [["cljsbuild" "once" "min"]
["cljsbuild" "once" "iphone-min"]
"compile"]}}
:doo {:paths {:phantom "phantomjs --web-security=false"
:karma "./node_modules/karma/bin/karma"
:slimer "./node_modules/slimerjs/src/slimerjs --debug=true --ignore-ssl-errors=true"}}
:cljsbuild
{:builds
[{:id "dev"
:source-paths ["src/cljs"]
:figwheel {:on-jsload "trello-workflow.core/mount-root"}
:compiler {:main trello-workflow.core
:output-to "resources/public/js/compiled/app.js"
:output-dir "resources/public/js/compiled/dev/out"
:asset-path "js/compiled/dev/out"
:infer-externs true
:externs ["externs/externs.js"]
:install-deps true
:parallel-build true
:npm-deps {:moment "2.20.1"}
:source-map-timestamp true
:optimizations :none
:preloads [devtools.preload
day8.re-frame-10x.preload
re-frisk.preload]
:closure-defines {"re_frame.trace.trace_enabled_QMARK_" true}
:external-config {:devtools/config {:features-to-install :all}
:ghostwheel {}}}}
{:id "min"
:source-paths ["src/cljs"]
:jar true
:compiler {:main trello-workflow.core
:output-to "resources/public/js/compiled/app.js"
;:output-dir "resources/public/js/compiled/min/out"
:optimizations :advanced
:infer-externs true
; "externs" is already in src path, so this causes duplicate extern error
:externs ["externs/externs.js"]
:npm-deps {:moment "2.20.1"}
:install-deps true
:closure-defines {goog.DEBUG false}
:pretty-print false}}
{:id "test"
:source-paths ["src/cljs" "test/cljs"]
:compiler {:main trello-workflow.runner
;:asset-path "base/resources/test/out"
;:asset-path "js/compiled/test/out"
:output-to "resources/public/js/compiled/test.js"
:output-dir "resources/public/js/compiled/test/out"
:externs ["externs/externs.js"]
:parallel-build true
:npm-deps {:moment "2.20.1"}
:install-deps true
:optimizations :none}}
{:id "node-test"
:source-paths ["src/cljs" "test/cljs"]
:compiler {:main trello-workflow.runner
:output-to "resources/public/js/compiled/node-testable.js"
:output-dir "resources/public/js/compiled/node-testable/out"
:target :nodejs}}
{:id "iphone-dev"
:source-paths ["src/cljs"]
:figwheel {:on-jsload "trello-iphone.core/mount-root"}
:compiler {:main trello-iphone.core
:output-to "resources/public/js/compiled/iphone.js"
:output-dir "resources/public/js/compiled/iphone/out"
:asset-path "js/compiled/iphone/out"
:infer-externs true
:externs ["externs/externs.js"]
:install-deps true
:parallel-build true
:source-map-timestamp true
:optimizations :none
:preloads [devtools.preload
day8.re-frame-10x.preload
re-frisk.preload]
:closure-defines {"re_frame.trace.trace_enabled_QMARK_" true}
:external-config {:devtools/config {:features-to-install :all}
:ghostwheel {}}}}
{:id "iphone-min"
:source-paths ["src/cljs"]
:jar true
:compiler {:main trello-iphone.core
:output-to "resources/public/js/compiled/iphone.js"
:output-dir "resources/public/js/compiled/iphone-min/out"
:optimizations :advanced
:infer-externs true
; "externs" is already in src path, so this causes duplicate extern error
:externs ["externs/externs.js"]
:npm-deps {:moment "2.20.1"}
:install-deps true
:closure-defines {goog.DEBUG false}
:pretty-print false}}]}
:main trello-workflow.server
:aot [trello-workflow.server]
:ring {:handler trello-workflow.handler/dev-handler}
:uberjar-name "trello-workflow.jar")
; this looks good, but it does weird things like "lein ring" compiling
; the clojurescript files... let's comment it out...
;
; :prep-tasks [["cljsbuild" "once" "min"] "compile"])
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment