Clojure项目中的常用包

Clojure常用包收集 。

  • Clojure标准库
  • diff-match-patch-clj 基于google-diff-match-patch的文本对比工具包
  • hiccup及Hiccups:HTML的Clojure/ClojureScript DSL
  • hickory将HTML解析为Clojure数据结构
  • jsoup Java的HTML解析器,支持CSS选择器
  • clojail 沙盒环境Clojure REPL,这个项目似乎很久没更新了
  • lib-noir 包含许多Web项目工具包,其中的noir.response, noir.session, noir.util.middleware等用起来都是很方便的。
  • clj-http 基于Apache Java Http客户端API的Clojure工具包
  • http-kit HTTP的Ring服务器/客户端,支持WebSocket。客户端只实现的clj-http的部分功能
  • cheshire Json工具包,支持Json与字节流间的转换、自定义时间格式等。
  • sente 异步Websocket通信包
  • 邮件方面:若只是发送SMTP邮件,Java的commons-email是不错的选择;或者用
  • Clojure-mail用来解析IMAP邮件,它相当于一个客户端程序;
  • mailer可用于发送复杂格式的邮件。
  • timbre Clojure/ClojureScript流行的日志库
  • nginx-clojure让nginx执行Clojure的ring handler。文档页有编译安装说明,日志注意事项等
  • org.clojure/tools.cli是个用于解析命令行参数的工具包
  • oauth
  • clj-oauth oauth consumer
  • clauth及clj-oauth-serveroauth2 provider的Clojure实现。许久没更新了。
  • quartzite 基于Quartz的定时任务包
  • pandect 提供MDx, SHAx等Hash函数
  • nippy 数据序列化,支持加密
  • aleph是封装在Netty上的TCP/UDP/HTTP异步通信包。同一作者还有下面的工具包:
  • gloss 在aleph中,这个包用于定义通信协议,即字节包的格式,以及提供序列化与与反序列化功能。
  • byte-streams 数据在各种表现形式间的相互转换
  • potemkin 可以参考里面一些方法的实现,比如fast-memoizefast-bound-fn
  • core.matrix 矩阵计算
  • konserve Clojure/ClojureScript实现的key-value数据库
  • csv文件处理:data.csv及clojure-csv
  • docjure 生成与编辑excel文件
  • 生成二维码的工具包QRGen
  • 图像处理的工具比较少。有通过JNI调用imagemagick包的JMagick和通过shell调用的im4java。性能要求不高时,通过shell(clojure.java.shell或conch)调用imagemagick命令更直接方便,效果也最好。
  • conch命令行工具包,比Clojure自带的shell工具多了异常处理
  • 关系型数据库连接池:Java的HikariCP及Clojure封装后的hikari-cp for clojure。但Java版的已经很简单了,没多少必再引入后者。
  • UAdetector User-Agent识别
  • tower Clojure/ClojureScript国际化
  • carmine Redis的Clojure客户端
  • Onyx 分布式数据处理
  • cascalog 大数据处理,Storm原作者的新作
  • Parkour 让你可用Clojure写Hadoop的MapReduce
  • Dire 可以为Clojure函数添加hook,前置/后置条件检查、异常处理函数
  • Marginalia 生成源码与注释对照的文档
  • Modern clojurescript ClojureScript的在线课程
  • kibit Clojure代码静态分析工具
  • slamhound 自动require/import依赖的ns或Java类
  • clj-time JodaTime 的Clojure封装。个人觉得Java8出来后,用Java8的日期时间类更易于理解
  • friend 是供Clojure Ring项目的授权处理包
  • buddy 提供安全相关的工具,也提供Ring的授权中间件
  • glow Clojure源码高亮。只能高亮Clojure代码,可生成命令行高亮
  • munge-tout 用于Clojure数据与Java对象的相互转换
  • Hoplon Clojure/ClojureScript Web框架
  • prone 为Ring项目开发提供更好的异常报告
  • bouncer 是用于校验数据合法性的DSL。可用于API服务器检查用户输入的数据
  • tupelo 为clojure.core补充各类小工具,让Clojure开发更顺手
  • medley 是另一个为clojure.core提供各种小方法的工具包
  • elastish ElasticSearch的Clojure客户端
  • inlein 用Clojure写脚本
  • Criterium Clojure性能分析工具包
  • clj-gatlign 用于对压力测试。测试完成后会自动生成html报告页
  • test-check 批量测试随机生成的输入,这里 有例子
  • Cuerdas含有许多字符串处理函数
  • 代码有更新时自动重新测试的leinigen插件:prism 及 lein-test-refresh
  • A/B测试:touchstone
  • metrics-clojure 是Clojure的metrics封装,提供代码运行时指标。文档
  • nomad Clojure配置文件(edn) 管理
  • alda 用Clojure编写乐曲。类似的还有overtone
  • quil Clojure/ClojureScript的绘图工具包
  • ns-graph 将项目里ns的依赖关系用图形展示出来
  • monger Clojure MongoDB client
  • clj-ml 基于Weka的机器学习工具包
  • hara.security Clojure的JCE工具包,即常说的对称/非对称加解密
  • Pegasus 网页爬虫
  • Perseverance 为函数封装灵活的重试策略,让你的操作更可靠
  • replikativ 保证最终一致性的高可用分布式数据库
  • environ 在Clojure项目里使用环境变量
  • maxiphobe Clojure的优先级队列数据结构
  • neko Clojure开发Android程序之工具
  • plumbing 函数编写的瑞士军刀
  • mount and mount-lite 类似于Component的状态管理机制
  • gTufte clojure之性能监测工具包
  • lein-codeindex 生成etags或ctags
  • re-learn 为前端应用(reagent)添加tutorial
  • lambdaroyal-memory 基于STM的内存数据库,支持持久化
  • phzr HTML5游戏前端框架
  • Neanderthal 矩阵计算,示例
  • fn-fx JavaFX wrapper
  • specter 处理Clojure数据结构
  • The Pedestal Server-side Libraries
  • ClojureScript macros for convenient native Javascript object access.
  • Conwip Modules helps automate dynamically loading ClojureScript modules
  • A Constraint Programming library for Clojure Ref
  • A Clojure implementation of the Dancing Links algorithm
  • Machine learning in Clojure
  • One Time Password (TOTP and HOTP) library for Clojure.
  • cljs-http: An (async) ClojureScript HTTP library
  • bidi: Bidirectional URI routing
  • think.hdf5 读取python的hdf5格式文件
  • system-viz is a simple library to visualize system
  • RestQL makes fetching information from multiple services easy and efficient.

转载于:https://my.oschina.net/u/1772293/blog/1813584

你可能感兴趣的:(Clojure项目中的常用包)