Fork me on GitHub
Arto Kalishian13:10:40

Hello Clojure Community

Arto Kalishian13:10:05

I was studying the book Learning ClojureScript and I stumbled upon Google Closure Library, does anyone still use it?

Arto Kalishian13:10:17

As a beginner I can see too many choices for DOM manipulation and it is confusing. Which one to use? Dommy, Hiccup, Enfocus/Enlive, Google Closure Library... It also seems most of them haven't been maintained for years.


I would say reagent + re-frame is the most common choice

Arto Kalishian14:10:16

Could you please link to any resources to learn them?

Arto Kalishian14:10:46

Is it possible to use Bulma for CSS or there is a better alternative in your opinion?


I have started with Semantic UI, but once finding out about Bulma I kinda stuck with it :) .. one thing to keep in mind is that Bulma doesn’t give you any JS .. so for any features that go beyond what CSS can do, you need to implement them yourself

Arto Kalishian15:10:28

I am glad to know that Bulma is compatible with the clojure ecosystem

Arto Kalishian15:10:46

Why would I ever need JS with CSS? I can do all I want to reagent right?


reagent is a wrapper for React so it is a completely different workflow when comparing to regular DOM interop.


you can do regular DOM interop via JS and don't really need any library for that nowadays


reagent/re-frame and others make more sense when you want to build more complex things

Arto Kalishian16:10:01

Thank you. Do you use H2 database or PostgreSQL?

Arto Kalishian16:10:26

Ok. Looks like there is consensus.

Arto Kalishian16:10:37

I think i will go for it

Arto Kalishian18:10:58

Thank you all for your help. Highly appreciated, best community ❤️


Anytime! ☀️

Arto Kalishian11:10:54

Is there anyone in the community who uses Fulcru? I am trying to check on it, seems very comprehensive but wanted to know what you guys think.


probably best to ask in #fulcro . I use it and would absolutely recommend


a bit harder to get started though

Arto Kalishian11:10:43

I don't mind it's harder, I will take my time but I want to be able to ask someone if I get stuck. So I guess #fulcro will do it.

Arto Kalishian11:10:17

Thank you, I am currently in progress for these tutorials

Arto Kalishian11:10:32

Then I will check the original documentation on the website but if there is any other source too.. please suggest


Is it possible to create a CLJS function and make it more suitable for calling from JS?

> f = evalString("(fn [] 10)")


I think it has to do with the fact that I'm return a MetaFn. I'll just rip the normal fn out.


yeah, (fn [] ...) is just a regular JS function() {...}


MetaFn or defmulti require .call when used from JS as they are wrappers and not actual functions


sort of abusing the IFn abstraction and calling convention which JS doesn't really have