I’m still finding my way around Clojure but wondered if someone with more experience might be able to point me in the right direction.
I love Hiccup for HTML markup and have used it to write my own functions to generate Bootstrap styled components - nothing fancy just things like text input with the correct classes applied. I then got to thinking what if someone wanted to use Hiccup with semantic-ui or some other CSS framework? I then wondered if you could do this in a generic way so that you could somehow define which CSS framework you wanted to use and call a generic function like create-text-input and it would automatically apply the appropriate styling.
It “feels” to me like this is a job for Protocols/Records or mutlimethods. I’m wondering what approach someone with more Clojure experience might take to this problem?