4 ms·
The cljs stack I hear about a lot (and use) is ShadowCLJS with reagent (https://reagent-project.github.io/ https://reagent-project.github.io/) and re-frame (htt
by dack 4y ago
The cljs stack I hear about a lot (and use) is ShadowCLJS with reagent (https://reagent-project.github.io/ https://reagent-project.github.io/) and re-frame (https://day8.github.io/re-frame/ https://day8.github.io/re-frame/). ShadowCLJS is more of a build tool, but is really well documented and easy to use. Reagent is basically react but a simpler API, and re-frame is a layer on top of that kinda like redux. It's overkill for some apps but I find it's actually super easy to work with and not as much complexity as I thought.
For backend there is luminus (https://luminusweb.com/ https://luminusweb.com/) or Kit (https://kit-clj.github.io/ https://kit-clj.github.io/). They are basically project templates that wire together a ton of popular solutions for various things - database access, migrations, security, html templating, etc. Also includes frontend frameworks like re-frame if you want.
edit: forgot to mention fulcro (https://fulcro.fulcrologic.com/ https://fulcro.fulcrologic.com/) which is an interesting full stack solution. I haven't used it though so can't comment, but it sure seems documented well!
- ndr 4y agoThank you. What about leiningen vs boot vs deps.edn? Did any of this come ahead as a winner in the recent years? It's been a while since I've looked into this.
- simongray 4y agoNo one uses Boot. The choice is between Leiningen and deps.edn AKA the official Clojure CLI. Personally, I switched to deps.edn back in 2020 and haven't looked back. I like that it's simpler/does less out of the box and I also use the Git dependency feature all the time (you can reference a git sha as a dependency, not just Maven coordinates). Something like 90% of it is just listing dependencies (the same packages as it's all just Maven anyway) and for the remaining 10% of configuration there's plenty of resources available for both. They can also interop to some extent. Other ecosystems have it much worse than Clojure in this regard.
- gtoast 4y agoBoot died, sadly. There was some talk of a Boot 3.0 but it never materialized. I think deps.edn took all the steam out of it. Duplicated a lot of functionality and none of the esoteric-ness.