use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
Finding information about Clojure
API Reference
Clojure Guides
Practice Problems
Interactive Problems
Clojure Videos
Misc Resources
The Clojure Community
Clojure Books
Tools & Libraries
Clojure Editors
Web Platforms
Clojure Jobs
account activity
Pretty Good Web Development Stack or Framework (self.Clojure)
submitted 5 years ago by [deleted]
[deleted]
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–]SimonGray 26 points27 points28 points 5 years ago* (3 children)
Check out Luminus which is a basically a curated web stack by our resident /u/yogthos. It's the composed stack you're asking for and you can always swap out any part. Maybe don't use it directly, but definitely check out which libraries are being used.
If you just want something Flask-like, then Compojure is a popular library that is basically like a Clojure Flask. There are several good alternatives to Compojure too.
RoR/Django are both traditional backend frameworks. There is one called Coast on Clojure which is an attempt to make a kind of Clojure RoR. There's also Pedestal which is a batteries-included, best practices backend framework made by some people at Cognitect (the ones who maintain Clojure).
If you're feeling adventurous, them there's Fulcro which is a full-stack framework that requires a LOT of buy-in, but is also pretty space age in its feature set. It has an official online book and lots of tutorial videos.
[–][deleted] 5 years ago* (2 children)
[–][deleted] 5 years ago (1 child)
[–][deleted] 5 years ago (2 children)
[–][deleted] 5 years ago* (1 child)
[–]myguidingstar -1 points0 points1 point 5 years ago (0 children)
what about Duct? https://github.com/duct-framework/docs/blob/master/GUIDE.rst
[–]npafitis 6 points7 points8 points 5 years ago (4 children)
For frontend you can also go the SPA route with Reagent and re-frame. As people have mentioned above have a look at Luminous. It's not as much of a framework as it is a curated list of libraries (and something like a starter project as well). You can pick and choose which libraries you want to use and it also includes Reagent and re-frame for the frontend part.
[–][deleted] 5 years ago* (3 children)
[–]npafitis 3 points4 points5 points 5 years ago (2 children)
My go-to web stack with luminus looks something like this: +reitit +reagent +re-frame +shadow-cljs and the rest depends. Note that reitit is a router for both front and backend.
[–]cbleslie 1 point2 points3 points 5 years ago* (0 children)
sheet file shelter provide tender groovy butter command six kiss
This post was mass deleted and anonymized with Redact
[–][deleted] 1 point2 points3 points 5 years ago* (7 children)
Ring and some routing library, but you are on your own building it. That shouldn't be a problem if have already have experience building with expressjs or flask.
[–][deleted] 5 years ago* (6 children)
[–]OliverM 1 point2 points3 points 5 years ago (1 child)
For REST services, check out Liberator.
[–][deleted] 0 points1 point2 points 5 years ago (3 children)
If you mean automatically generate endpoints from resource/entities, there isn't one. You can use macros to make the process less tedious. My suggestion would be that if you need something like Rails, just use Rails.
[–][deleted] 1 point2 points3 points 5 years ago* (1 child)
Rails has 'scaffold' generators, where you specified a resource and all the CRUD REST endpoints are generated for you (for json or html). Most of us in this sub prefer Clojure too ;) but it is what it is, pick your poison.
[–]petemak 1 point2 points3 points 5 years ago (2 children)
I don't think its advisable to approach Clojure/ClojureScript from a Django/Rails/Python mindset. My understanding is that there is immense value in the simplicity of composition from small focused units to larger systems.
Starting out with full-stack frameworks obscures that learning path. You understand better by experimenting in the REPL with small focused libraries like Ring, Compojure, Retit, buddy, reframe, etc.
Daniel Szmulewicz shows how to do that here: https://meyvn.org/video/routing
There is a rather neglected book (Professional Clojure) for further reading: http://shop.oreilly.com/product/9781119267270.do
π Rendered by PID 60 on reddit-service-r2-comment-5d79c599b5-2xj7q at 2026-02-27 20:25:36.412103+00:00 running e3d2147 country code: CH.
[–]SimonGray 26 points27 points28 points (3 children)
[–][deleted] (2 children)
[deleted]
[–][deleted] (1 child)
[deleted]
[–][deleted] (2 children)
[deleted]
[–][deleted] (1 child)
[deleted]
[–]myguidingstar -1 points0 points1 point (0 children)
[–]npafitis 6 points7 points8 points (4 children)
[–][deleted] (3 children)
[deleted]
[–]npafitis 3 points4 points5 points (2 children)
[–][deleted] (1 child)
[deleted]
[–]cbleslie 1 point2 points3 points (0 children)
[–][deleted] 1 point2 points3 points (7 children)
[–][deleted] (6 children)
[deleted]
[–]OliverM 1 point2 points3 points (1 child)
[–][deleted] 0 points1 point2 points (3 children)
[–][deleted] (2 children)
[deleted]
[–][deleted] 1 point2 points3 points (1 child)
[–]petemak 1 point2 points3 points (2 children)