ClojureScript

<img src="https://avatars2.githubusercontent.com/u/12118456?v=3&s=75" ALIGN = “右”/>

Awesome ClojureScript

A community driven list of ClojureScript books, frameworks, libraries and wrappers.


Resources

Books

Courses

  • ClojureScript Koans –使用交互式挑战在网络上开始学习Clojure和ClojureScript的好方法.
  • Lambda Island –全栈Web开发课程,包括使用ClojureScript的前端,使用Clojure的后端,语言要素,安全性,互联网标准和系统管理.
  • Learn Reagent –针对开发人员的带有Reagent的ClojureScript简介. 提供1小时免费内容. learn re-frame 是其后续行动.
  • Learning ClojureScript – O'Really在线学习对Clojurescript进行了2h 11m长的介绍. 也可用于 Udemy.

Videos

Awesome ClojureScript

Canvas

  • Monet –一个小的ClojureScript库,可以更轻松地使用画布和视觉效果.
  • Quamolit –受React启发的微型声明式动画库.

Client/Server Communication

  • cljs-ajax – ClojureScript和Clojure的简单Ajax客户端.
  • Fetch – ClojureScript库,使客户端/服务器交互变得轻松自如.

Code Analysis

  • kibit –静态代码分析器,以查找可以用惯用的函数或宏重写的代码模式.

Data Serialization

  • Cljson – Clojure / ClojureScript库,用于加速浏览器数据反序列化.
  • Transit –一种数据交换格式和一组库,用于在以不同编程语言编写的应用程序之间传递值.

Data Visualization

  • C2 –它使您可以基于数据声明性地创建HTML和SVG标记.

Database

  • Datascript – ClojureScript中的不变的内存数据库和Datalog查询引擎.
  • Jaki –一个简单的ClojureScript CouchDB客户端.
  • Konserve –带有core.async的clojuresque键值/文档存储协议.
  • specql –用于带有命名空间键的简单PostgreSQL查询的库.

Development

  • Ambly –将ClojureScript REPL转换为iOS JavaScriptCore.
  • cljs-devtools –在Chrome Devtools中更好地呈现ClojureScript值.
  • Devcards – Devcards旨在为ClojureScript提供可视化的REPL体验.
  • Instaparse –它旨在成为在ClojureScript中构建解析器的最简单方法.
  • lein-cljsbuild –一个Leiningen插件,可简化ClojureScript开发.
  • lein-figwheel – Leiningen插件,可将ClojureScript代码更改推送到客户端.
  • Lumo –快速,跨平台,独立的ClojureScript环境.
  • Planck –基于JavaScriptCore的适用于macOS和Linux的独立ClojureScript REPL.
  • Ribol –有条件地重启clojure / clojurescript.
  • shadow-cljs – ClojureScript编译变得容易
  • Truss –针对Clojure / ClojureScript的自断言API.

Document Object Model

  • cljs-binding –将html元素绑定到ClojureScript函数.
  • Crate –打ic的ClojureScript实现.
  • Dominator – ClojureScript中的虚拟Dom.
  • Dommy –精巧的ClojureScript模板和DOM操作库.
  • Enfocus –受Enlive启发的ClojureScript的DOM操作和模板库.
  • Freactive –高性能,纯净的Clojurescript声明性DOM库,受试剂,om,反射和打h的启发.
  • Hiccups –打ic的ClojureScript端口.
  • Hickory –它将HTML解析为Clojure数据结构,因此您可以分析,转换并输出回HTML.
  • json-html –提供JSON并获得带有该JSON人工表示形式的DOM节点.
  • Kioo – ClojureScript中用于Facebook的React和Om的DOM操作和模板库.
  • Respo –受React启发的响应式DOM库.
  • Sablono – Lisp / Hiccup样式在ClojureScript中为Facebook的React模板.

Documentation

  • codox –用于从Clojure或ClojureScript源代码生成API文档的工具.

Graphics

  • geom –用于Clojure / Clojurescript的2D / 3D几何工具包.
  • Quil –处理和图形编程库.

HTTP Handler

  • Castra – Clojure的HTTP远程过程调用处理程序.

Internationalization

  • Tempura –继Tower之后的Clojure(Script)i18n库
  • Tower – Clojure(脚本)i18n和L10n库.

JavaScript Interoperability

  • CLJSJS – Clojurescript开发人员依赖Javascript库的简单方法.
  • Jayq – jQuery的ClojureScript包装器.
  • Purnam – ClojureScript库,旨在提供更好的clojurescript / javascript互操作,测试和文档编制工具.
  • Pylon – 100%Clojurescript中的Javascript类系统.

CSS tools

  • Garden –用于在Clojure和ClojureScript中呈现CSS的库.
  • stylefy – stylefy使得可以将UI组件样式定义为Clojure数据并将其轻松附加到组件中,而无需编写CSS选择器

Miscellaneous

  • Automat –受Ragel启发,用于定义和使用有限状态自动机的Clojure(Script)库.
  • Bardo – Clojure(Script)库,用于功能插值和转换.
  • core.async – Clojure(Script)库,旨在为异步编程和通信提供便利.
  • Entanglement –它从其他原子创建原子并将数据链接在一起.
  • inflections-clj – Clojure和ClojureScript的类似Rails的曲折库.
  • Keybind –用于在浏览器中处理键绑定(快捷方式)的库.
  • markdown-clj – Clojure / ClojureScript中的Markdown解析器.
  • namespacefy –一个简单的Clojure(Script)库,旨在使无论数据来自何处,都易于使映射键保持命名空间.
  • om-tools –目的是提供在使用Om的API构建组件时经常有用的高阶抽象和实用程序.
  • reforms – Om和试剂的精美Bootstrap 3表格.
  • reagent-forms –试剂的自举表格组件.
  • Sepal.clj –一个从字符串向量和带有宏系统的向量生成Clojure代码的库.

React.js Interface

  • Brutha –一个简单实用的React的ClojureScript接口.
  • cljsxJSX 对于Clojure和ClojureScript,也可以与 Inferno, Nerv, Preact, Snabbdome 和别的.
  • hx – A simple, easy to use library for React development in ClojureScript.
  • Om – React的强大接口,利用其面向对象的结构.
  • Quiescent –偏爱函数式风格,完全无状态.
  • re-com –用于试剂的可重用组件的ClojureScript库.
  • Reagent –简约,功能齐全.
  • Rum –分拆,可扩展,简单.

Reactive Programming

  • Javelin – ClojureScript的功能性反应式编程库.
  • Manifold-cljs –的港口 Manifold 到ClojureScript.
  • Reagi –在core.async之上构建的Clojure和ClojureScript FRP库.
  • rx-cljs – Java的响应式扩展(Rx)的ClojureScript包装器.
  • Yolk –围绕bacon.js的ClojureScript薄包装器.

Routing

  • Bidi –一个Clojure(脚本)数据驱动的路由库.
  • Router – Clojure /脚本的双向环形路由器. 面向REST.
  • Secretary – ClojureScript的客户端路由器.
  • Silk – Clojure和ClojureScript的同构路由库.

State Management

  • component –在Clojure(Script)中管理有状态对象的生命周期.
  • hodgepodge – HTML5存储的惯用ClojureScript接口.
  • mount –美丽的惯用状态管理库.
  • plato –在ClojureScript中将原子状态逐步保持在本地存储中.
  • storage-atom –由HTML5网络存储支持的ClojureScript原子.
  • Tuck –用于构建Reagent应用程序的微框架,该应用程序将视图代码和事件处理代码完全分开.
  • Waltz – ClojureScript库,该库使用非确定性有限状态机帮助管理客户端应用程序中的状态.

Testing

Validation

Web Framework & Template

  • atw-om –具有Clojure / Compojure,ClojureScript / Om和core.async的Web应用程序模板.
  • Chestnut –具有实时重新加载功能的ClojureScript / Om应用程序模板.
  • Clops –一个自以为是的,全栈且易于使用的Web框架.
  • descjop –使用Electron的基于Web的桌面应用程序的模板.
  • electron-template –用于使用Electron,ClojureScript和Reagent创建基于Web的桌面应用程序的模板.
  • Fulcro – clj / cljs中用于开发单页全栈Web应用程序的库.
  • Hoplon –用Clojure和ClojureScript,客户端和服务器端编写所有内容.
  • Keechma – ClojureScript和Reagent的微型前端框架.
  • Luminus –它旨在提供一个健壮,可扩展且易于使用的平台.
  • Macchiato –它旨在为Node.js提供易于使用的平台.
  • Mies –最小的ClojureScript项目模板.
  • Mr-Clean –不具有react.js依赖关系的试剂兼容库.
  • Precept –声明性编程框架.
  • re-frame – Clojurescript中的用于编写SPA的代理框架.
  • Tenzing –不带后端的ClojureScript模板,使用Boot.
  • WebFUI – ClojureScript的客户端Web框架.

WebSockets

  • Chord –旨在弥合CLJ / CLJS三元组,Web套接字和core.async之间的差距.
  • Sente – Clojure(脚本)+ core.async + WebSockets / Ajax.

Contributing

欢迎所有贡献. 请阅读 Contributing 在打开拉取请求之前. tl; dr-用于项目符号,用于链接和描述之间的分隔符,并且列表应按字母顺序排列.

License

CC0

Han Tuzun 在版权法允许的范围内,放弃了他在全球范围内对作品的所有权利,包括所有相关和邻接权,从而将作品专用于公共领域.

您可以复制,修改,分发和执行作品,甚至出于商业目的,而无需征求许可.