Clojure web framework for designers/ front end devs [closed]

寵の児 提交于 2019-12-23 07:29:35

问题


All of the popular Clojure web frameworks I am seeing use hiccup to generate HTML. I find hiccup is hard to have a front end design person adjust to, compared to other frameworks that parse the syntax out of templates.

Is there a clojure web framework that doesn't require the front end developer to learn LISP?


回答1:


Check out Enlive. It will allow your designer to work in pure HTML.




回答2:


Same Answer Plus Opinion

As other answers have already stated, Enlive will let you use pure HTML templates, while Hiccup leverages Clojure data structures to generate HTML.

But, as I think we'd all agree, HTML should be semantic and describe the structure of the page, while layout and look-and-feel should be left to CSS and JavaScript. At least out of my experience, front-end designers should not be responsible for drastically altering the structure of a page, but rather responsible for styling and placement through CSS and JavaScript.

Whenever working on an application more complex than a collection of static HTML pages, if a front-end designer feels the need to change a page's structure, that should be a joint conversation with the developer who put it together. With this in mind, the developer should choose a templating scheme or HTML generation method that allows him/her to be most productive. My two cents.




回答3:


Hiccup is mostly the default in examples, but all webframeworks I know of can work with any templating library.

Like dnolen mentioned there is Enlive which is quite popular (https://github.com/cgrand/enlive). Enlive has 100% separation of code and html. Very nice to use if you have other people doing the design.

Other then Hiccup and Enlive there is the lesser known fleet (https://github.com/Flamefork/fleet) which is closer to popular Ruby/PHP solutions.




回答4:


Three years later:

You can also have a look to Caribou http://let-caribou.in/ . It is a new Clojure framework that uses good old HTML syntax for templating.

You could start by watch this screencast: http://www.youtube.com/watch?v=dPUQ0GUvSt0

You'll see that you don't need to code in clojure for updating your data models either. Only the controllers (the links between templates and models) would require you to talk the lispy way...

Good luck!




回答5:


There is also Selmer :

A fast, Django inspired template system in Clojure.

Which is therefore more suited to large apps.



来源:https://stackoverflow.com/questions/6474926/clojure-web-framework-for-designers-front-end-devs

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!