-
clojure-polylith-realworld-example-app
Clojure, Polylith and Ring codebase containing real world examples (CRUD, auth, advanced patterns, etc) that adheres to the RealWorld spec and API.
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
I tried looking into Polylith a few months ago, when I first discovered it. I recall the feeling of experiencing information overload. Though, I am not a Clojure expert either, so that probably compounded my issue.
I believe it would be beneficial to supply more example projects. I found [one](https://github.com/furkan3ayraktar/clojure-polylith-realworl...), however, it uses SQLite. Maybe an example which uses Postgres, and Redis for caching would be more real-world?
One question I have, how are ENV variable driven configurations handled? For example, if I need a `DATABASE_URL` etc. I recently ran into an [issue](https://discord.com/channels/313110246643990528/313110246643...) in my own Clojure web service attempt where I could not use `def` to define the individual variables since they are evaluated at Uberjar build time. I eventually converted it to a `defn` but then it gets evaluated every time it's used.
I tried looking into Polylith a few months ago, when I first discovered it. I recall the feeling of experiencing information overload. Though, I am not a Clojure expert either, so that probably compounded my issue.
I believe it would be beneficial to supply more example projects. I found [one](https://github.com/furkan3ayraktar/clojure-polylith-realworl...), however, it uses SQLite. Maybe an example which uses Postgres, and Redis for caching would be more real-world?
One question I have, how are ENV variable driven configurations handled? For example, if I need a `DATABASE_URL` etc. I recently ran into an [issue](https://discord.com/channels/313110246643990528/313110246643...) in my own Clojure web service attempt where I could not use `def` to define the individual variables since they are evaluated at Uberjar build time. I eventually converted it to a `defn` but then it gets evaluated every time it's used.
You can get an idea by looking at the Production systems page (https://polylith.gitbook.io/polylith/conclusion/production-s...) where each column in the first diagram is a project (deployable artifact / service). All components are specified in a single file, like the configuration file for the poly tool itself: (https://github.com/polyfy/polylith/blob/master/projects/poly...).
I try to explain it in the "Bring it all together" section also: https://polylith.gitbook.io/polylith/architecture/bring-it-a...