cider-nrepl was mostly inspired by swank-clojure.
It started life as an attempt to push as much of CIDER’s functionality as possible to the nREPL layer,
with the assumption that this would make it easier to develop CIDER and would open up the possibility
to build complex features like an interactive debugger. Fortunately, the assumption turned out to be correct.
cider-nrepl provides pretty much everything that a Clojure development environment might need (and more).
We quickly realized that there was nothing CIDER specific in those middleware and we've started to encourage more tool authors to leverage them. Today `cider-nrepl` is developed and released independently from CIDER and is used by most of the nREPL-based editors and IDEs out there, which is a great example of team work. Eventually `cider-nrepl` served as the inspiration for more similar middleware libraries - e.g. `refactor-nrepl`, `iced-nrepl` and `sayid`.
You can check out this talk, which explores the birth of