Fork me on GitHub

I’m trying to wrap my head around Stuart Sierra’s component architecture and how it has been implemented as part of Chestnut. Something that’s been quite troublesome for me is coding server-side and client-side simultaneously. First, it’s not immediately clear that a separate Ring is spawned on port 10555 (while Figwheel’s own http-kit is spawned on port 3449). Second, if I run cljs-repl I lose my server context unless I connect to it via nREPL separately. Lastly, every time I make a change to the server, I need to issue a reset that basically drops everything and I lose my cljs-repl session. I have the feeling that I’m doing something terribly wrong because Clojure development via REPL is usually a lot more fun than this. The current workflow I’ve described above has drained the joy out of iterative development. What are your thoughts?