I'm experimenting with a similar setup and I'm interested in any feedback about how to make it work better.
Currently I do this:
1) nrepl-jack-in from project.clj
2) nrepl and connect to the same port as from (1). At this point the two repls are basically the same.
3) rename the buffers to keep them straight
4) launch a server on clj repl
6) Now if I'm working in a .clj buffer I manually nrepl-make-repl-connection-default for the clj repl
7) Also I don't reload the core.clj where the server function is, or the views.clj where the hiccup layout for the home page is; I guess this shouldn't matter with nrepl-make-repl-connection-default but I'm not sure. In views.clj I :require other namespaces which I do modify and reload.
8) refreshing the home page to see changes from reloaded .clj files usually works OK with the cljs browser repl thanks to Austin, sometimes I have to refresh the browser a couple of times to get the connection back.
So steps 6-8 are the sticking points currently. If anyone has done work to improve this part of the workflow I'm interested in hearing it.
Also I've tried setting up some of the buffer-local variables to point .clj buffers to the appropriate repls but my experiments haven't really seemed to work -- is anyone using that approach?
thanks, George