Good morning, hope you are all well. I am a newbie learning Clojure. I have picked up the Programming in Clojure 4th edition and Clojure The Essential Reference books. Are there resources on how to structure or architect a Clojure application? Resources can be blog posts, books, Clojure related resources or non Clojure related resources, etc. Thank you.
Thank you. It looks good. gratitude-thank-you
I really liked elements of clojure. Also, it might be worth looking at https://polylith.gitbook.io/polylith which is a collection of opinions on structuring applications and some tooling to help with that.
https://github.com/seancorfield/deps-new gets you started with a nice template for your application
this might not be advanced enough for you, but I'm writing a series of blog posts to help non-technical colleagues at work build something in Clojure https://tcds.dev/blog/learning-clojure-1-hello-world
Thank you so much gratitude-thank-you
Hi @mungaikamau7 I recently made this TUI, because I wanted an easier way to scaffold new projects with https://github.com/seancorfield/deps-new, using an interactive wizard: https://github.com/paintparty/jus It also features an exhaustive directory of community resources, all in one place.
Clojure For the Brave and True is popular book for learning Clojure. You can read it for free online. If you don't already use emacs, I would skip that chapter and use VS Code + Calva instead. You can get help in #CBE668G4R if needed. https://www.braveclojure.com/
Are there resources on how to structure or architect a Clojure application?There is no One True Way (because there are no One True Frameworks), but there is a sensibility. It's worth studying Sean Corfield's "usermanager example" web application and its variants by Sean as well as other people. https://github.com/seancorfield/usermanager-example. Compare that with #C013Y4VG20J, #C07TS1T0JLC, and #C07V6RVUN7J. Though aimed at web apps, the sensibilities of those projects apply broadly to pretty much any kind of application built by choosing and composing libraries, because that---composition over inheritance---is the Way of the Clojurian.
That said, a lot can be done with a single-file application (no application architecture needed), especially if you have #CLX41ASCS in your back pocket :D https://github.com/babashka/babashka/tree/master/examples
And for insane amounts of fun, look no further than https://www.parens-of-the-dead.com/
If you want something that is more conceptual, listen to the Functional Design in Clojure podcast. https://clojuredesign.club/ It pairs well with walking, driving, getting things done around the house, etc.
> Are there resources on how to structure or architect a Clojure application? Resources can be blog posts... Uh, I forgot this note about Clojure projects to read, from my own post: https://www.evalapply.org/posts/which-clojure-codebases-to-read-how-and-why/index.html#suggested-projects-with-short-reasons-why-to-read