Some notes about what I did here: you start the server by running (go), you can quit the CLJS repl easily by typing in :cljs/quit as normal and return to the user namespace and then safely (stop) or (reset), stop will stop the server and reset will refresh all of your Clojure namespaces (useful if you're writing macros in Clojure for use in ClojureScript).
Aside from this, just turn on cljsbuild auto with :optimizations :none, and code recompiles are sub-second.
Thank you. I will definitely take a look at these over the weekend. User.clj seems particularly useful. Reloaded workflow reminds me of IPython, where you need to reload modules and reset the object instances for the new code to take effect.
I personally use Emacs and Austin to hook the browser REPL into nrepl. Here are some sample files that you can take a look at.
Here's a sample project.clj: https://github.com/aamedina/foundation/blob/feature/cljs/pro...
I've become a fan of Stuart Sierra's Reloaded workflow: http://thinkrelevance.com/blog/2013/06/04/clojure-workflow-r...
Here's my dev/user.clj
https://github.com/aamedina/foundation/blob/feature/cljs/dev...
Some notes about what I did here: you start the server by running (go), you can quit the CLJS repl easily by typing in :cljs/quit as normal and return to the user namespace and then safely (stop) or (reset), stop will stop the server and reset will refresh all of your Clojure namespaces (useful if you're writing macros in Clojure for use in ClojureScript).
Aside from this, just turn on cljsbuild auto with :optimizations :none, and code recompiles are sub-second.
Hope any of this helps you.