Skip to content

Install Clojureλ︎

A rich Clojure REPL workflow is provided by the Conjure package, which works with Clojure CLI and Leiningen projects, assuming the respective tool is installed.

Clojure LSP is highly recommended and packages to use an installed clojure-lsp tool are in the practicalli/neovim-config-redux configuration

Clojure CLIλ︎

🌐 Practicalli Clojure install guide

🌐 Clojure CLI provides a way to run Clojure code, packaged Clojure (jar) and run a Clojure REPL.

🌐 Practicalli Clojure install guide details prerequisites, Clojure install options and supporting tools for an enhanced developer workflow.

Visit the 🌐 Clojure Getting Started guide for the Clojure CLI or to check the latest release version.

🌐 Practicalli Clojure CLI Config provides a wide range of community tools that extend the features of Clojure CLI, creating a rich development environment for use across all projects.

Aliases are required for many examples

Without 🌐 Practicalli Clojure CLI Config many commands provided in this book are not available unless similar alias definitions are added to a either a project or user level deps.edn configuration.

Language Server Protocolλ︎

Neovim Treesitter surfaces information from Language Server Protocol (LSP) servers to assist with development and refactor of Clojure code.

🌐 Clojure LSP installation guide shows how to install the Clojure LSP binary for the relevant operating system.

Once installed, run clojure-lsp -v in a terminal to ensure the command is working.


practicalli/clojure-lsp-config provides a complete configuration for clojure-lsp (config.edn), including a wide range of snippets and less restrictive formatting rules (cljfmt.edn)

clj-kondo provides static analysis of source code files, providing subtle warnings as Clojure code is written to help the developer follow idioms and avoid syntatic errors.

Clojure LSP includes clj-kondo to provide 🌐 an implementation of the Language Server Protocol for the Clojure Language.

🌐 Clojure LSP installation guide Treesitter Fennel Configuration


Many existing Clojure projects use Leiningen build automation tool (although many new projects use Clojure CLI as well or instead of Leiningen).

The code is the same regardless of tooling choice. The overall workflow is the same, although Clojure CLI may provide more workflow options.

Follow the install instructions at if required.