Clojure - Clojure Tools
Table of Contents
Community volunteers maintain Getting Started documentation for a number of different tools and approaches. Some of the most commonly used tools include:
Editors/IDEs
Editors provide Clojure support via packages and extensions. While these vary in features, all of them are sufficient for Clojure development, so choose the editor that works best for you.
Emacs
Packages and modes
-
CIDER - Emacs packages for interactive programming in Clojure (REPL), including clojure-mode major mode providing syntax highlighting, indentation, navigation and refactor support.
-
inf-clojure - basic interaction with a Clojure subprocess (REPL), based on the popular inferior-lisp
-
clojure-ts-mode treesitter implementation of clojure-mode (in development)
IntelliJ
-
Cursive Clojure(Script) IDE that understands code, advanced structural editing & refactor support (licenced software)
-
Clojure Extras plugin - plugin with additional features for Clojure development
-
clojure-lsp-intellij - plugin for static analysis via clojure-lsp
Dependency management
-
clj is a tool for managing dependencies, running a REPL, and executing Clojure programs, built by the Clojure core team, with deps in deps.edn
-
Leiningen - an extensible build tool that provides dependency management, REPL support, testing, packaging, deployment, and many other capabilities
-
Boot - build tooling for Clojure: instead of a special-purpose DSL, Boot supplies abstractions and libraries you can use to automate nearly any build scenario with the full power of the Clojure language
Library repositories and catalogs
-
Clojars - Clojure-focused Maven repository
-
Clojure Toolbox - a categorized index of Clojure libraries
Debuggers
-
FlowStorm - A Clojure and ClojureScript debugger with many features