ClojureScript
https://gyazo.com/1868b3b8b20017499761fa59d340137b
ClojureScript
clojure/clojurescript: Clojure to JS compiler
Web ブラウザで動くClojureClojure.icon
ドキュメント
CLJS API
ReactReact.icon
Om
omcljs/om: ClojureScript interface to Facebook's React
(om.dom/div #js{} "child1" "child2") 等の函数で virtual DOM を作る
Reagent
Reagent: Minimalistic React for ClojureScript
reagent-project/reagent: A minimalistic ClojureScript interface to React.js
reagent.dom/render で [:div {} "child1" "child2"] 等の data から virtual DOM を作る
Hiccup での data 構造に近い
reagent.core/atom で状態管理する。atom と同じく swap!、reset! で変更する
component を区切る機能は無さそう?
Quiescent
levand/quiescent: A lightweight ClojureScript abstraction over ReactJS
(quiescent.core/defcomponent "Comment." :〜 〜 [] 〜) で component を区切る
(quiescent.dom/div {} "child1" "child2") 等の函数で virtual DOM を作る
Rum
tonsky/rum: Simple, decomplected, isomorphic HTML UI library for Clojure and ClojureScript
rum.core/defc で component を区切る
[:div {} "child1" "child2"] の Hiccup に似た data 構造で virtual DOM を表はす。rum.core/defc で virtual DOM に変換する
re-frame
Derived data, flowing - re-frame
day8/re-frame: A ClojureScript framework for building user interfaces, leveraging React
Reagent を使ふ
shadow-cljs
thheller/shadow-cljs: ClojureScript compilation made easy
Shadow CLJS User’s Guide 邦訳
nbb
GitHub - borkdude/nbb: Ad-hoc CLJS scripting on Node.js.
BabashkaBabashka.icon