Fork me on GitHub

@limist: duct is pretty good… and I’m a huge fan of integrant, which is at the heart of it. (Integrant is miles better than mount and component IMHO). We have quite a large multi-tenant duct project underway just now, and it takes some getting used to but it works well, especially if you just want to wire together a plain old ring stack. Duct definitely has some problems just now due to its immaturity… Firstly the router (ataraxy) is pretty bare bones just now and lacks path helpers etc… Also it’s not written in cljc, so can’t be reused on the cljs side if you have one… I plan to look at using bidi for routing, or maybe just trying to patch the problems with ataraxy. Duct modules can be a bit magic, and have unrestrained power. Some modules hide a lot of default config in clojure code… They mostly just work though, but sometimes the default ones don’t expose the configuration you need, or they prevent you from overriding something etc… Usually this is just a small oversight, that weavejester will take a patch for and it’s pretty rare that it’s a problem… Also if you need to you can just copy the module wholesale into your app and rename easily enough (as they don’t really do a lot). Part of me wishes that the config was all just exposed in your app, rather than implicit in the module - but I think you need something like them. I’m still on the fence about duct modules being a good idea… Anyway overall I’d definitely recommend duct, it’s way better than luminous; and the integrant/duct thing really does point towards an ecosystem (promised land) of reusable configurable components. I’ve no idea what is happening with arachne, but duct more or less seems to solve everything they set out to do - and in what feels to me to be a much more minimal manner.


@U06HHF230 Thanks for your detailed and helpful advice! Will give duct a try.


@limist: I’d definitely recommend it. Much better than luminous in my mind… I’d also check out the #duct channel


thanks for the link