list of useful links for clojurians
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
README.md [github] stavka added Jul 26, 2018

README.md

AwesomeClojure Awesome

Collection of useful links for Clojurians. Inspired by other awesome-* stuffs.

aggregators

Description Link
Open-Source packages in for Clojure ecosystem http://www.clojuresphere.com/
Open Source Clojure projects http://open-source.braveclojure.com/
Posts from various Clojure hackers and contributors http://planet.clojure.in/
A categorised directory of libraries and tools for Clojure http://www.clojure-toolbox.com/
Clojure daily http://paper.li/ajlopez/1291580164
Community Curated Clojure Resources https://hackr.io/tutorials/learn-clojure

blogs

Description Link
News and updates about ClojureWerkz projects http://blog.clojurewerkz.org/
Learn the ultimate language, become a better programmer http://www.braveclojure.com
Tons of cool ideas http://yogthos.net
Parens of death http://www.parens-of-the-dead.com/
Anna Pawlicka http://annapawlicka.com/
Jessica Kerr http://blog.jessitron.com/
Stuart Sierra http://stuartsierra.com/
Adam Bard https://adambard.com/blog/
Parallel Universe http://blog.paralleluniverse.co
Verma / blog http://udayv.com/

articles

Description Link
Plugin system in Clojure http://yogthos.net/posts/2015-01-15-A-Plugin-System-in-Clojure.html
Clojure quality tools http://blog.mattgauger.com/blog/2014/09/15/clojure-code-quality-tools/
Clojure services at Scale http://blog.josephwilk.net/clojure/building-clojure-services-at-scale.html
Zippers http://josf.info/blog/2014/10/02/practical-zippers-extracting-text-with-enlive/
Clojure interfaces http://spootnik.org/entries/2014/11/06_playing-with-clojure-core-interfaces.html
Clojure at MixRadio http://dev.mixrad.io/blog/2014/10/19/Clojure-libraries/
Clojure Macros explained http://www.braveclojure.com/writing-macros/
Weird Clojure characters explained http://yobriefca.se/blog/2014/05/19/the-weird-and-wonderful-characters-of-clojure/
Debugging clojure https://aphyr.com/posts/319-clojure-from-the-ground-up-debugging
Ring Web Applications with Comsat http://getprismatic.com/story/1421983286985
Compojure tutorial http://learnxinyminutes.com/docs/compojure/
Geospatial Information http://blog.factual.com/open-source-clojure-library-for-geospatial-information
Clojure web-apps IDs with Hashids http://www.jasonstrutz.com/posts/obfuscate-your-clojure-webapp-ids-with-hashids/
Securing Clojure Microservices using buddy http://rundis.github.io/blog/2015/buddy_auth_part1.html
Setup TDD workflow for Clojure http://suva.sh/2014/10/27/test-workflow-setup-for-clojure/
Microservice Architecture With Slacker Cluster http://sunng.info/blog/blog/2014/07/08/microservice-and-slacker-cluster/
Understanding transducers http://elbenshira.com/blog/understanding-transducers/
Testing Clojure with Selenium https://semaphoreci.com/community/tutorials/testing-clojure-web-applications-with-selenium
Testing Clojure web apps with kerodon https://semaphoreci.com/community/tutorials/testing-clojure-web-applications-with-kerodon
Testing Clojurescript with Karma http://blog.circleci.com/testing-clojurescript-code-with-clojurescript-test-and-karma/
Integration tests with Midje http://lab.brightnorth.co.uk/2014/05/07/midje-rocks-integration-testing-in-clojure/
Streaming responses using ring https://nelsonmorris.net/2015/04/22/streaming-responses-using-ring.html
Polymorfic performance http://insideclojure.org/2015/04/27/poly-perf/
Pixie Pi http://stuarth.github.io/pixie/pixie-pi/
Clojure in Production: Logging http://brownsofa.org/blog/2015/06/14/clojure-in-production-logging/
Clojurescript application template http://martinklepsch.github.io/tenzing/
Efficient, Concurrent and Concise Data Access in Clojure https://speakerdeck.com/kachayev/efficient-concurrent-and-concise-data-access-in-clojure
Pimp my REPL http://dev.solita.fi/2014/03/18/pimp-my-repl.html
Clojure (Prismatic) Schemas are Swagger http://www.javacodegeeks.com/2015/09/clojure-prismatic-schemas-are-swagger.html
Practical Data Coercion With Prismatic/schema http://camdez.com/blog/2015/08/27/practical-data-coercion-with-prismatic-schema/
Clojure Design Patterns http://mishadoff.com/blog/clojure-design-patterns/
20 cool Clojure functions http://daveyarwood.github.io/2014/07/30/20-cool-clojure-functions/
Processing documents with transducers http://blog.juxt.pro/posts/xpath-in-transducers.html
Deploying a Clojure web app with Pallet https://adambard.com/blog/deploying-a-clojure-project-with-pallet/
TDD in Clojure https://engineering.fundingcircle.com/blog/2016/01/11/tdd-in-clojure/
Functional-navigational programming with Specter http://nathanmarz.com/blog/functional-navigational-programming-in-clojurescript-with-sp.html
Quickstart Boot and ClojureScript http://escherize.com/2016/02/29/boot-with-cljs/
Managing Maintenance With Riemann https://kartar.net/2016/04/managing-maintenance-with-riemann/
Using Codox Effectively http://blog.muhuk.com/2016/05/10/using_codox_effectively.html
Clojure-Fu with Juxt http://blog.jenkster.com/2016/06/clojure-fu-with-juxt.html
Ohce in Clojure using outside-in TDD with Midje http://garajeando.blogspot.com/2016/07/kata-ohce-in-clojure-using-outside-in.html
Focus on Spec: predicates http://blog.cognitect.com/blog/2016/8/9/focus-on-spec-predicates
Hubble Space Mission Securely Configured https://www.dotkam.com/2017/01/10/hubble-space-mission-securely-configured/
Consul & Clojure http://www.surrealanalysis.com/post/clojure-and-consul/
Faster meta-development with boot https://adzerk.com/blog/2017/02/faster-clojure-metadevelopment-with-boot/
Isolated integration testing with postgres http://dev.solita.fi/2017/03/09/isolated-integration-testing-with-clojure-and-postgres.html
Reducible streams http://paul.stadig.name/2016/08/reducible-streams.html
The Ultimate Guide to Clojure Concurrency https://purelyfunctional.tv/guide/clojure-concurrency-the-ultimate-guide/
Domain modelling with clojure.spec https://adambard.com/blog/domain-modeling-with-clojure-spec/
Use Matrices Efficiently http://dragan.rocks/articles/17/Clojure-Numerics-1-Use-Matrices-Efficiently
Readable Clojure http://tonsky.me/blog/readable-clojure/
Comprehensible Code https://labs.uswitch.com/comprehensible-code/
Clojure transducers from the ground up https://labs.uswitch.com/transducers-from-the-ground-up-the-practice/
Yet another "mount" alternative http://www.functionalbytes.nl//clojure/mount/mount-lite/2016/02/11/mount-lite.html
Performance nemesis: reflection http://clojure-goes-fast.com/blog/performance-nemesis-reflection/
Introspection tools: Java decompilers http://clojure-goes-fast.com/blog/introspection-tools-java-decompilers/
Reitit, Data-Driven Routing with Clojure(Script) http://www.metosin.fi/blog/reitit/
How We Built Whimsical https://whimsical.co/tech/how-we-built-whimsical/
Clojure the Devil is in the detail http://devcycle.co.uk/clojure-is-the-devil/

documentation

Function description needed? Eager of examples / tutorials? Take a look at one of following sources:

Description Link
Community-driven documentation site for the Clojure http://clojure-doc.org/
Community-powered documentation and examples http://clojuredocs.org/
Community Clojure Documentation http://conj.io/
Cross-referencing the Clojure ecosystem http://crossclj.info/
Clojure* cheatsheets http://jafingerhut.github.io/
ClojureScript cheatsheets http://cljs.info/cheatsheet/

projects

Following is a list of amazing projects, worth to keep an eye on.

clojurescript

ClojureScript is a new compiler for Clojure that targets JavaScript. It is designed to emit JavaScript code which is compatible with the advanced compilation mode of the Google Closure optimizing compiler.

https://github.com/clojure/clojurescript

Description Link
Clojurescript awesomeness https://github.com/emrehan/awesome-clojurescript
Javascript libraries packaged up with Google Closure externs https://github.com/cljsjs/packages / http://cljsjs.github.io/
Kioo example http://adambard.com/blog/a-simple-clojurescript-app/
ClojureScript tutorial http://www.niwi.be/cljs-workshop/
Promises and Clojurescript http://www.niwi.be/2015/03/28/promises-and-clojurescript/
Translations from Javascript http://kanaka.github.io/clojurescript/web/synonym.html
Modern ClojureScript https://github.com/magomimmo/modern-cljs
Visual REPL experience for ClojureScript https://github.com/bhauman/devcards
A Chrome DevTools fork for ClojureScript developers https://github.com/binaryage/dirac
Javascript externs generator https://github.com/jmmk/javascript-externs-generator
The Re-frame Building Blocks Guide https://purelyfunctional.tv/guide/re-frame-building-blocks/

datomic

The fully transactional, cloud-ready, distributed database.

http://www.datomic.com/

Description Link
Helper library for datomic https://github.com/flyingmachine/datomic-junk
Interactive tutorial http://www.learndatalogtoday.org/

core.async

Facilities for async programming and communication in Clojure

Description Link
Examples https://github.com/halgari/clojure-conj-2013-core.async-examples/blob/master/src/clojure_conj_talk/core.clj
Tutorials https://github.com/martintrojer/go-tutorials-core-async
Using Transducers with Core.async in ClojureScript http://blog.venanti.us/using-transducers-with-core-async-clojurescript/
Core.async in the browser is sweet http://ku1ik.com/2015/10/12/sweet-core-async.html
Introduction to Asynchronous Programming in Clojure http://www.bradcypert.com/clojure-async/

boot

Build tooling for Clojure.

http://boot-clj.com/

Description Link
Boot, the Fancy New Clojure Build Framework http://www.flyingmachinestudios.com/programming/boot-clj/
Advanced Boot Scripting https://lionfacelemonface.wordpress.com/2015/04/11/advanced-boot-scripting/
Clojurescript Boot Live-Reload https://adambard.com/blog/clojurescript-boot-fireplace/

hoplon

Hoplon provides a number of libraries promoting a simpler model for web applications.

http://hoplon.io/

Description Link
Reactive web apps with Hoplon and DataScript https://skillsmatter.com/skillscasts/5380-reactive-web-apps-with-hoplon-and-datascript

om

A ClojureScript interface to Facebook's React.

https://github.com/omcljs/om

Description Link
Om cookbook https://github.com/om-cookbook/om-cookbook
Application template for ClojureScript/Om with live reloading https://github.com/plexus/chestnut
Om interop with 3rd party JS libs http://www.stuttaford.me/2014/08/10/om-interop-with-3rd-party-libs/
Mistakes to avoid when creating an Om component. Part 1. http://annapawlicka.com/common-mistakes-to-avoid-when-creating-an-om-component-part-1/
Mistakes to avoid when creating an Om component. Part 2. http://annapawlicka.com/common-mistakes-to-avoid-when-creating-an-om-component-part-2/
High performance web apps in Om and React http://www.slideshare.net/borgesleonardo/high-performance-web-apps-in-om-react-and-clojurescript
Removing bloilerplate http://blog.tarn-vedra.de/posts/om-removing-boilerplate.html

reagent

Minimalistic Ract for ClojureScript.

http://holmsand.github.io/reagent/

Description Link
Reagent cookbook https://github.com/reagent-project/reagent-cookbook
Reagent Framework For Writing SPAs, in Clojurescript https://github.com/Day8/re-frame
No-hashes bidirectional routing in re-frame with bidi and pushy https://carouselapps.com/2015/08/26/no-hashes-bidirectional-routing-in-re-frame-with-bidi-and-pushy/
Creating reagent components https://github.com/Day8/re-frame/wiki/Creating-Reagent-Components
Why reagent rocks? http://www.mattgreer.org/articles/reagent-rocks/
TodoMVC for Reagent https://github.com/tastejs/todomvc
Applications built with Reagent https://github.com/reagent-project/reagent/wiki/Applications-built-with-Reagent
Beautiful Bootstrap 3 forms for Om, Reagent and Rum https://github.com/bilus/reforms

riemann

Riemann aggregates events from your servers and applications with a powerful stream processing language.

http://riemann.io/

Description Link
An Introduction to Riemann http://kartar.net/2014/12/an-introduction-to-riemann/

yada

Yada is a library that helps building RESTful web APIs quickly and easily.

http://yada.juxt.pro

utils

Utilities making development even more pleasant

Description Link
General Purpose Utilities Library https://github.com/zcaudate/hara
Language extensions for clojurescript https://github.com/purnam/purnam
Give your clojure workflow more flow https://github.com/zcaudate/vinyasa

emacs

Emacs bits and pieces. Definitely worth checking out if you're addicted to this editor.

Description Link
Cider IDE that rocks! https://github.com/clojure-emacs/cider
Collection of Clojure refactoring functions https://github.com/clojure-emacs/clj-refactor.el
Help on clojuredocs.org https://github.com/mbuczko/helm-clojuredocs

github

Other interesting libraries, style guides, etc. found on github

Description Link
A community coding style guide for the Clojure programming language https://github.com/bbatsov/clojure-style-guide
This is the home of O'Reilly's Clojure Cookbook https://github.com/clojure-cookbook/clojure-cookbook
Routing library for Ring https://github.com/weavejester/compojure/wiki
Example project for Cljs/Om using Boot instead of Lein. Inspired by Chestnut. https://github.com/Deraen/saapas
Clojure static page generation using boot https://github.com/DanThiffault/boot-pages
Simple css/js asset fingerprinting for Boot https://github.com/pointslope/boot-fingerprint
Init scheme with service supervision with Boot https://github.com/danielsz/boot-runit
Compatibility layer with the environ library https://github.com/danielsz/boot-environ
Database migrations with Ragtime using Boot https://github.com/mbuczko/boot-ragtime
Your trampoline to Clojure dev toolbox https://github.com/mbuczko/revolt
Clojure implementation of RFC 6749 OAuth 2.0 authorization framework https://github.com/mbuczko/cerber-oauth2-provider
Security library for Clojure https://github.com/niwibe/buddy
Enlive/Enfocus style templating for Facebook's React and Om in ClojureScript https://github.com/ckirkendall/kioo
Produce and consume JMX beans from Clojure https://github.com/clojure/java.jmx
Clojure library for using SQL https://github.com/krisajenkins/yesql
Source code documentation tool https://github.com/gdeer81/marginalia
Clojure documentation tool https://github.com/weavejester/codox
Clojure functions with parameter pattern matching just like erlang or elixir https://github.com/killme2008/defun
A simple static site generator written in Clojure https://github.com/lacarmen/cryogen
Data processing on Hadoop without the hassle https://github.com/nathanmarz/cascalog
Clojure reducers, but for parallel execution: locally and on distributed systems https://github.com/aphyr/tesser
More transducers and reducing functions for Clojure(script) https://github.com/cgrand/xforms
A thin facade around Coda Hale's metrics library https://github.com/sjl/metrics-clojure/
Multi-class Naive Bayes Classifier library written in Clojure https://github.com/danielfm/judgr
Authentication library for Clojure and Ring based on OAuth2 https://github.com/pelle/clauth
Managed lifecycle of stateful objects in Clojure https://github.com/stuartsierra/component
Event-driven programming and stream processing toolkit for the JVM https://github.com/clojurewerkz/meltdown
Understanding Clojure Sequences and providing some small, tight operations to perform on them https://github.com/JulesGosnell/seqspert
Erlang-style supervisor error handling for Clojure https://github.com/MichaelDrogalis/dire
A validation DSL for Clojure & Clojurescript applications https://github.com/leonardoborges/bouncer
Simple scraper and tokenizer for miles.no https://github.com/miles-no/MilesCampHackatonScraper
Clojure template for REST web services in the style of MixRadio https://github.com/mixradio/mr-clojure
Display ghostly yesql defqueries inline, in Emacs https://github.com/magnars/yesql-ghosts
A lightweight ClojureScript abstraction over ReactJS https://github.com/levand/quiescent
Clojure file and directory watcher https://github.com/wkf/hawk
Types again :) https://github.com/arrdem/guten-tag
ClojureScript interface to local and session storage https://github.com/funcool/hodgepodge
A tiny Clojure routing library for Ring https://github.com/taylorlapeyre/nav
Minimal React wrapper for ClojureScript https://github.com/tonsky/rum
A Ragtime extention for ArangoDB https://github.com/deusdat/waller
Contracts programming with Clojure https://github.com/fogus/trammel
Threadpool tools for Clojure https://github.com/TheClimateCorporation/claypoole
Utility library to write microservices in Clojure https://github.com/zalando-stups/friboo
Experimental multilenses https://github.com/ctford/traversy
A Constraint Programming library for Clojure https://github.com/aengelberg/loco
Logo in Clojure https://github.com/google/clojure-turtle
Elegant and efficient remote data access https://github.com/kachayev/muse
Geometry toolkit for Clojure/ClojureScript https://github.com/thi-ng/geom
DSL for building client to remote service APIs https://github.com/outpace/remote
Trace-oriented debugging tools for Clojure https://github.com/dgrnbrg/spyscope
New dependencies in REPL on the fly https://github.com/zcaudate/vinyasa
Priority map https://github.com/clojure/data.priority-map
Durable queue implementation https://github.com/layerware/pgqueue
Durable reference types for Clojure https://github.com/riverford/durable-ref
A really lightweight Clojure scheduler https://github.com/jarohen/chime
Interface to the Pikaday js date-picker https://github.com/timgilbert/cljs-pikaday
REPL functions to support the reloaded workflow https://github.com/weavejester/reloaded.repl
Control throughput of function calls and core.async channels https://github.com/brunoV/throttler
Managing Clojure app state since (reset) https://github.com/tolitius/mount
"Smarter" threading macros https://github.com/maitria/packthread
Human dates https://github.com/philjackson/wordy-date
A routing library https://github.com/Hendrick/avenue
Syntax threading macros for Clojure https://github.com/LonoCloud/synthread
Fast clojure json parser https://github.com/gerritjvv/pjson
Elegant and Efficient remote data access for Clojure(Script) https://github.com/funcool/urania
Hierarchical Timing Wheels for Clojure and ClojureScript https://github.com/sunng87/rigui
Turn files into asynchronous streams https://github.com/ane/vigil
Bidirectional data-driven request routing https://github.com/aroemers/sibiro
Library agnostic way to stub HTTP endpoints in Clojure https://github.com/johanhaleby/stub-http
Query your maps as in Datalog https://github.com/alandipert/intension
A feature flag library for Clojure https://github.com/plexus/pennon
Clojure Error Message Catalog https://github.com/yogthos/clojure-error-message-catalog
Functional, persistent, off-heap, high performance data structure https://github.com/datacrypt-project/hitchhiker-tree
Forward-chaining rules in Clojure https://github.com/rbrush/clara-rules
Monadic error handling https://github.com/adambard/failjure
Visualization of Clojure data structures using Graphviz https://github.com/walmartlabs/datascope
Clojure wrapper over failsafe - sophisticated failure handling https://github.com/sunng87/diehard/
One Time Password (TOTP and HOTP) for Clojure https://github.com/suvash/one-time
Mocks, stubs, and spies for Clojure protocols https://github.com/bguthrie/shrubbery
Failure handling with Manifold https://github.com/tulos/manifail
A gentle touch of Clojure to Hashicorp's Consul https://github.com/tolitius/envoy
A lightweight library of useful Clojure functions https://github.com/weavejester/medley
Meldable priority queues in Clojure https://github.com/michalmarczyk/maxiphobe
XChart wrapper for Clojure https://github.com/hyPiRion/clj-xchart
Convenience features making Clojure even sweeter https://github.com/cloojure/tupelo
Elasticsearch client for Clojure https://github.com/mpenet/spandex
A functional Clojure progress bar for the command line https://github.com/weavejester/progrock
Hazelcast bells and whistles under the Clojure belt https://github.com/tolitius/chazel
Clojure library for working with the Github v3 API https://github.com/irresponsible/tentacles/
Reactive Streams for Clojure(Script) https://github.com/funcool/beicon
Clojure/ClojureScript URI library https://github.com/lambdaisland/uri
Command-line interfaces using only docstring https://github.com/carocad/docopt.clj
Rewrite Clojure Code and EDN https://github.com/xsc/rewrite-clj
Fast Clojure Matrix Library https://github.com/uncomplicate/neanderthal
Bidirectional Ring router. REST oriented. Rails inspired. https://github.com/darkleaf/router
Clojure Test Fixtures & Datasources https://github.com/stylefruits/fixpoint
Evaluating composable language rules on input strings https://github.com/dpom/clj-duckling
Re-frame with DataScript as a data storage https://github.com/denistakeda/data-frame
Fast http api format negotiation, encoding and decoding https://github.com/metosin/muuntaja
A remote (CQRS) API library for Clojure https://github.com/metosin/kekkonen
Ring async Server-Sent Events handler https://github.com/bobby/ring-sse
General-purpose ACME client https://github.com/danielsz/certificaat
Functional JVM bytecode generation for Clojure https://github.com/jgpc42/insn
All functions deserve to be measured https://github.com/tolitius/calip
A trace window for re-frame https://github.com/Day8/re-frame-trace
Add structure to a reagent/re-frame app at the page level https://github.com/gadfly361/re-surface
A queue which schedules fairly by key https://github.com/acrolinx/clj-queue-by
Fork of official Ring Jetty adapter enhanced with servlet-mapping support https://github.com/jiacai2050/ring-jetty-servlet-adapter
Accessing HDFS, S3, SFTP and other file systems via a single API https://github.com/oshyshko/uio
AWS pure Clojure, spec-based implementation https://github.com/portkey-cloud/aws-clj-sdk
An isolation framework for Clojure/ClojureScript https://github.com/metametadata/clj-fakes
Reformat Clojure and Clojurescript source code and s-expressions https://github.com/kkinnear/zprint
Lean Hash Array Mapped Trie (Lean Map) https://github.com/bendyworks/lean-map
Succint and readable integration tests over RESTful APIs https://github.com/facundoolano/restpect
Fast Idiomatic Pretty Printer https://github.com/brandonbloom/fipp
Graphing tool for Clojure built with the web and interactivity in mind https://github.com/hswick/jutsu
REPL-based data visualization in the browser https://github.com/yieldbot/vizard
Graphql client for re-frame and clojurescript applications https://github.com/oliyh/re-graph
A library of parallel-enabled Clojure functions https://github.com/reborg/parallel
Structural diffs for clojure source code https://github.com/ladderlife/autochrome
Homoglyph/IDN homograph detection/handling https://github.com/mpenet/thorn
A fast data-driven router for Clojure(Script) https://github.com/metosin/reitit
A durable datalog implementation adaptable for distribution https://github.com/replikativ/datahike
An all-purpose Clojure graph data structure that implements Loom protocols and more https://github.com/Engelberg/ubergraph
Clojure/ClojureScript library for stubs, spies and mocks https://github.com/alexanderjamesking/spy
Add function args and return Spec checking via assertions https://github.com/Provisdom/defn-spec
Clojure library for fast JSON encoding and decoding https://github.com/metosin/jsonista
Fetch data from SQL using Clojure(script) https://github.com/walkable-server/walkable
Asynchronous programming toolkit for clojure and clojurescript https://github.com/leonoel/missionary
Clojure mocking library https://github.com/igrishaev/mockery
Configuration from various sources https://github.com/sunng87/stavka

youtube

Must-have YouTube subscriptions:

twitter

People to follow, writing about clojure/lisp: