funcool is a growing collection of open source Clojure and ClojureScript libraries and learning material that share the following principles:
-
Good documentation.
-
Clear state of development.
-
Easy way to contribute.
-
Support Clojure & ClojureScript when possible.
-
Beautiful is better than ugly.
-
Explicit is better than implicit.
-
Simple is better than complex.
-
Complex is better than complicated.
-
Readability counts.
Clojure has a very good community and has very good libraries for doing almost everything and the majority aren’t known. On the other hand there are also libraries that are undocumented, unmantained or with a very bad implementation.
We will try to maintain a little collection of libraries developed by ourselves and also another list of well maintained libraries that we have used in the past or are currently using for our projects.
funcool is a community managed by a little group of persons that loves functional programming and good, well documented open source software.
You can contact us using funcool google groups: https://groups.google.com/forum/#!forum/funcool or joining into #funcool channel on clojure community slack.
The funcool projects don’t have any restrictions for contributions. We track issues using GitHub issues and accept contributions via pull requests.
If you want to contribute to any of our projects just open an issue or pull request. We usually hang out in the #funcool channel of the Clojurians Slack http://clojurians.slack.com, we’ll be happy to answer your questions and help you contribute to our projects.
Funcool is a inclusive organization, all are welcome.
Please respect each other.
Do not dismiss, abuse, harass, attach, insult or discriminate against others.
If you feel unwelcome, unsafe or in danger please report the incident/s to one of us:
-
Andrey (twitter: http://twitter.com/niwinz, email: [email protected])
-
Alejandro (twitter: http://twitter.com/dialelo, email: [email protected])
We will work with you to resolve the issue promptly.
An open source book about ClojureScript
-
HTML version: http://funcool.github.io/clojurescript-unraveled/
-
PDF/Epub/Mobi: https://leanpub.com/clojurescript-unraveled
buddy is a complete security library for clojure.
-
Code & Documentation: https://github.com/funcool/buddy
Asynchronous web toolkit for clojure built on top of Ratpack / Netty
-
Documentation: https://funcool.github.io/catacumba/latest/
Category Theory abstractions for Clojure(Script).
-
Documentation: http://funcool.github.io/cats/
High level sql toolkit for clojure (backed by jooq library)
-
Documentation: http://funcool.github.io/suricatta/
clojure.jdbc is a library for low level, jdbc-based database access.
Is an alternative implementation to the official clojure.java.jdbc
.
-
Documentation: http://funcool.github.io/clojure.jdbc/latest/
A idiomatic ClojureScript interface to local and session storage.
-
Documentation: https://funcool.github.io/hodgepodge/
The missing Clojure(Script) string manipulation library.
-
Documentation: https://funcool.github.io/cuerdas/latest/
A promise library for Clojure(Script)
-
Documentation: https://funcool.github.io/promesa/latest/
A ring-inspired, promise-returning, simple Clojure(Script) HTTP client
-
Documentation: https://funcool.github.io/httpurr/latest/
Elegant and Efficient remote data access for Clojure(Script)
-
Documentation: https://funcool.github.io/urania/latest/
Reactive Streams for ClojureScript (built on top of RxJS)
-
Documentation: https://funcool.github.io/beicon/latest/
Validation library for Clojure and ClojureScript
-
Documentation: https://funcool.github.io/struct/latest/
Clojure JSON and JSON SMILE (binary json format) encoding/decoding.
-
Code & Documentation: https://github.com/dakrone/cheshire
A date and time library for Clojure, wrapping the Joda Time library.
-
Code & Documentation: https://github.com/clj-time/clj-time
Jetty9 ring server adapter with WebSocket support via core.async and Jetty9 based HTTP & WebSocket clients.
-
Code & Documentation: https://github.com/mpenet/jet
A Clojure library designed to allow Clojure configuration to travel between hosts.
-
Code & Documentation: https://github.com/james-henderson/nomad
A concise routing library for Ring/Clojure
-
Code & Documentation: https://github.com/weavejester/compojure
HTTP route-matching library for Clojure
-
Code & Documentation: https://github.com/weavejester/clout
Fast library for rendering HTML in Clojure
-
Code & Documentation: https://github.com/weavejester/hiccup
A client-side router for ClojureScript.
-
Code & Documentation: https://github.com/gf3/secretary
A ClojureScript library providing wrappers for the JavaScript console API.
-
Code & Documentation: https://github.com/noprompt/shodan
Minimal React wrapper for ClojureScript. Decomplected, extensible, simple
-
Code & Documentation: https://github.com/tonsky/rum
Lisp/Hiccup style templating for Facebook’s React in ClojureScript.
-
Code & Documentation: https://github.com/r0man/sablono