Yeah -- it seems crazy that you have to reinvent things like your defendpoint macro.
I know Clojure is all about composable libraries, not frameworks, etc, etc but just as compojure has become the de facto standard for routing, I imagine more libs will emerge higher up the web stack. It'll mean opinionated libraries, but that is the only way to get more people writing apps that deliver value instead of spending time creating macros that ensure (for instance...) the presence of int IDs in API requests.
I know Clojure is all about composable libraries, not frameworks, etc, etc but just as compojure has become the de facto standard for routing, I imagine more libs will emerge higher up the web stack. It'll mean opinionated libraries, but that is the only way to get more people writing apps that deliver value instead of spending time creating macros that ensure (for instance...) the presence of int IDs in API requests.