Productivity wise, Is Clojure a good fit for server side rendered html crud web apps? (compared to rails, django, spring)


#1

For developers who know rails or django (or even spring), would you use Clojure instead for creating server side rendered html crud applications? If so, why? (or why not)

What companies use Clojure for this particular scenario? In the wild, I see companies using it more for web services than for html apps.


#2

Well, it depends, I mean, you’re comparing a programming language against web frameworks.

Is Clojure more productive then ruby, python or java, I’d say yes in general.

That said, for simple crud with no need for customization or advanced features, Django is hard to beat. Its pretty much a wizard for that kind of use case.

I’ve never looked to see if an equivalent framework existed in Clojure. You should look for that and try them out and see.


#3

I usually chime in with “try my framework: coast as in coast on clojure :smirk:”, but for this post, I’d like to try and tie together a few web development libraries that you can use to kind of make a web framework, introducing:

Sean’s Super Guide to Clojure Web Development Libraries That Kind of go Together and Make a Framework like Rails or Django

These are the high level concepts that rails handles with barely anything else in your Gemfile:

  • ORM
  • Database Migrations
  • Sessions
  • HTTP parsing
  • Parameter parsing
  • URL Routing
  • HTML Templating
  • Asset Pipeline
  • Sending Emails
  • Background Jobs
  • File Uploads (ActiveStorage)

Here are some clojure equivalents:

There’s luminus too which is probably the closest to rails in terms of features, even more so than coast, and it has really good docs. Oh, one more thing which sure it’s deprecated, but it had a lot of good ideas: noir.

So to answer your original question, no Clojure isn’t a good fit for server side rendered html crud web apps seeing as you have to do the research (or ask a question on a forum) and assemble the pieces yourself