A call for Clojure stacks

People start learning Clojure, get really excited about it (because it’s awesome!) and they decide to make a web app because web apps are the Hello World of our time. And then they get a bit lost by having too many options and they are slightly bemused by the lack of an “official” framework for making this kind of app.

The culture shock seems to be especially pronounced for people coming from a Ruby on Rails background, persumably because they have to make decisions about aspects of the stack that have been already settled years ago in Rails.

The community’s responce is always an enthusiastic “do anything you like!” or “it’s decomplected, it all plays well together, just pick something!”. But there is no denying that the amount of choice is daunting to newcomers – sometimes to the point of being completely off-putting. I still believe the fact that no “official” Clojure web framework has emerged is a good thing, but there is no denying that we could do more as a community to lower the barrier of entry.

So, this is a call for Clojure stacks. I’m looking for teams who have built web apps, frontend apps, mobile apps or anything else, and who are willing to take a look at their project.clj files, their build.boots or deps.edns and explain the reasoning of the choices reflected there, along with the rest of the system (the non-Clojure parts), and also the pros and cons of that particular combination of choices. Some bricks fit together better that others, and sharing this knowledge can only help Clojure grow.

Here are some questions that you could use as a template for your post, or feel free to send a more free form explanation:

It’s a lot to ask, and not every organization will be OK with sharing all the details, so share as much as you can. Descriptions of “failed” stacks may also be useful. Contributions are super-welcome in markdown by pull request to this repo.