awesome-clojure
by razum2um
A curated list of awesome Clojure libraries and resources. Inspired by awesome-... stuff
AI summary
Clojure projects
A curated collection of notable projects and tools built with Clojure, a programming language.
- stars
- 2.7K
- forks
- 206
- watching
- 110
- awesome lists
- 11
- entries
- 333
What's in the list
333 links in 57 sections, with live GitHub stats.activeno commit in 2y
Links
OneKeePass
: A secure password manager and
- Penpot
: design and prototyping platform
- LightTable (IDE)
(archived)
Braid
: a team-chat app with a novel UI that leads to better conversations
Accelerated Text
: a natural language generation environment (backend: Clojure, frontend: JS)
Ziggurat
: a framework built to simplify Stream processing on Kafka
Nightcode
: An IDE for Clojure (archived)
Nightlight
: text editor (archived)
Atea
: a minimalistic menu bar time tracker for MacOS (legacy, requires jvm 1.6)
herfi
3D multiplayer game prototype written in Clojure and ClojureScript
racing-game-cljs
A 3D racing game built with ClojureScript, React and ThreeJS
Logseq
: knowledge management and collaboration (open frontend)
Awesome macros usage
core.async
transforms AST into CSP programs
cloroutine
suspends and continuations (coroutines)
missionary
a reactive dataflow programming toolkit
photon
realtime web, like Meteor, but for Clojure(Script)
metaclj
staged compilation
meander
transparent data transformation using datastructure pattermatching
proteus
introduce mutable variables (don't use, just learn how to map your mind into immutable world)
Advanced datastructures
specter
: an elegant API for querying and transforming nested and recursive data
meander
: transparent data transformation (defined as pattern-matching)
Persistent AVL trees
: persistent sorted maps and sets with log-time rank queries
Finger Tree
: double-list, counted-double-list, counted-sorted-set
Hitchhiker Tree
: create fast, snapshottable, massively scalable databases
Ordered
: ordered sets and maps
Lazy Map
: whose values are only calculated when accessed
Duratom
: persisted atoms
Durable Queue
: queue persisted on disk
bifurcan
: linear map/set/list (stores entries contiguously in memory), ;writtern in java, but test suite (read: usage examples)
Web Framework
Dependency injection
Build Automation and Package management
Build Automation and Package management / tools.build
Build Automation and Package management
clojurephant
(Gradle plugin)
shadow-cljs
(Clojurescript)
Version Control Management
Date and Time
clojure.java-time
Java 8 Date-Time API
holi
Calendar operations that are aware of weekends and holidays
tick
: Clojure(Script) library, intended as replacement for clj-time
GUI
Audio
HTTP
clj-http
: Apache HttpComponents client wrapper
http-kit
: Simple, high-performance event-driven HTTP client and server
ring
: HTTP server abstraction
kvlt
: Uniform, asychronous client interface for HTTP across JVM / Node / browsers
aleph
: Async client/server based on Netty, with defaults for HTTP, TCP and UDP
hato
: An HTTP client for Clojure, wrapping JDK 11's HttpClient
Database
xtdb
: bitemporal database for SQL, Datalog & graph queries
- Monger
: for MongoDB
- Monglorious
: for MongoDB
clj-rethinkdb
: for RethinkDB
Revise
: for RethinkDB
Spandex
: for ElasticSearch
- Elastisch
: for ElasticSearch
- neocons
: for Neo4j
Alia
: for Cassandra
aerospike-clj
: for Aerospike
Connection pools
Structural Migrations
Redis
JSON
Protocol Buffers and gRPC
ORM and SQL generation
Security
caesium
(libsodium bindings)
RESTful API
GraphQL API
Emails
HTML Manipulation
Data Validation
Type System
Pattern Matching
Async processing
Monads
WebSocket
Testing
Webdriver automation
Code Analysis and Linter
Science and Data Analysis
Machine Learning
neanderthal
: fast matrix library
bayadera
: bayesian data analysis on the GPU
Computer Vision
origami
: OpenCV 4 wrapper
Text Processing
Parsing
buran
RSS/Atom feed consumer and producer
Exceptions and Error Handling
Rule-based Programming
Editor Plugins
Notepad++
: modified config files of Lisp
Documentation
Literate Programming
Archives and Compression
Miscellaneous
potemkin
reexport vars in another ns / act like a clojure map
Debugging
CI
Project Management
Terminal UI
Graphviz
re-frame-flow
Graph based visualization tool for re-frame event chains (ClojureScript)
Game Development
Guides
Video tutorials / YouTube
- Misophistful's channel
: Understand concepts such as list comprehension, threading macros, generative testing, destructuring, core.match and introductions to Light Table, Datomic and Game development with Clojure
- Fred Overflow's channel
: Introductions to Functional programming and TDD with Clojure
- Clojure Pills screencast
: Introduction to Clojure one function at a time
- Clojure Pills screencast
: Fun and beginner friendly content related to the overall clojure ecosystem
- Clojure Tutorials by Timothy Baldridge
: More advanced videos on core.async, transducers, transients, logic programming and a "Function of the day" series
Websites
Exercises
Nothing in this list matches your filter.
Featured in 11 awesome lists
Each link jumps to the spot where the list mentions awesome-clojure.
More related projects
rodriguescelio/clojure-style-guide11
jeko2000/clojure-style-guide0
plexus/chestnut1.3K
ildivan/clojure-style-guide0
juxt/bidi993
leavenha/clojure-style-guide1
babashka/babashka4.1K
kwakbab/clojure-style-guide30
totakke/clojure-style-guide69
nondv/clojure-style-guide26
ducky427/electron-template116
liquidz/jubot68