Closed euporos closed 2 years ago
I think it's mostly a time thing rather than a hard-and-fast rule. Since there's outside interest, I can see whether we want to revisit this decision.
Note that you can use libraries directly from Git using the Clojure CLI tools and in Leiningen (using a plugin).
I would love to take it for a test drive
If you're using tools.deps, you can copy this and start hacking! 🥷 😊
com.lambdaisland/ornament {:git/url "https://github.com/lambdaisland/ornament"
:git/sha "80ede082f2571ab3026795f86f401b9402b79896"}
Hi @euporos , I've cut a first release of Ornament
[com.lambdaisland/ornament "0.0.7"]
{com.lambdaisland/ornament {:mvn/version "0.0.7"}}
Keep in mind that as long as we are 0.x.x
we may still make breaking changes. We'd be very interested to hear about your experience trying it out though!
Thank you so much, @plexus, that's really great and certainly makes it easier to get one's feet wet. I'm well aware of the library being pretty alpha as of now and we're nowhere near swicthing all of our production code to it any time soon. But we're currently looking into options to improve our CSS pipeline and Ornament's value proposition makes it an interesting contender. So, thanks again and keep up the good work!
Are you using it on the Clojure or ClojureScript side? if it's clj
or cljc
I feel fairly confident, the ClojureScript side hasn't been exercised as much.
I use it do declare style in .cljs files, with a shadow-cljs hook to build the css.
In that case I'm definitely interested to hear about how that's working for you, good or bad. You can also always drop into the Lambda Island discord if you like to exchange experiences https://discord.gg/rb82a62D
It's working so far, I save the file, it get compiled, the hook trigger and shadow push the new css file to to browser. The only tricky thing is related to macro expansion done on the clojure side so I can't use cljs fn inside a defstyled, but that's how cljs works so kind of expected. I have yet to try building for deploy.
(defn hook {:shadow.build/stage :flush} [build-state & _args] (let [css (o/defined-styles)] (when-not (blank? css) (spit "public/style.css" css))) build-state)
That's true, rules are compiled on the backend so they can't access frontend (cljs) functions. If you can use cljc
then you can.
Ornament's take on styling is highly interesting and I would love to take it for a test drive. Unfortunately, this is difficult with the library unavailable on Clojars. Would it be possible to publish it there in the near future?
Thanks for your great work and greetings form @mbertheau and the rest of the Machtfit team!
EDIT: Just noticed that you're not planning on publishing it before the API reaches stability. Is that restriction final? Why not just mark it as an alpha?