/clojure-lsp

Clojure & ClojureScript Language Server (LSP) implementation

Primary LanguageClojureMIT LicenseMIT

CI Clojars Project cljdoc Slack community Github stars

clojure-lsp

A Language Server for Clojure(script). Taking a Cursive-like approach of statically analyzing code.


homepagefeaturesinstallationsettingsclientstroubleshootingsupport us


Overview

The goal of this project is to bring great editing tools for Clojure/Clojurescript to all editors and programatically via its CLI and API. It aims to work alongside you to help you navigate, identify and fix errors, perform refactors and much more!

You will get:

  • Autocomplete
  • Jump to definition/implementation
  • Find references
  • Renaming
  • Code actions
  • Errors
  • Automatic ns cleaning
  • Lots of Refactorings
  • Code lens
  • Semantic tokens (syntax highlighting)
  • Call hierarchy
  • Java interop

For all available documentation, check the official website.

Also, clojure-lsp doesn't need to run only with an editor, for more information check the Outside editor (API) section.


Contribution

Contributions to clojure-lsp are very welcome! You can open an issue or a PR and we will love to help.


Support the project

clojure-lsp has more than 30.000 lines of code, to keep all of this working, we need to help the community with a lot of issues and implement new features. As a LSP server, this project is the base for Clojure clients like Emacs(lsp-mode), VSCode(Calva), vim and other editors.

You can help us keep going and improving it by supporting the project, the support helps to keep the project going and being updated and maintained.

🚀 Thank you to Clojurists Together which sponsored this project during Q3 2021 and Q1 2022 🚀

Gold sponsors

Sponsors

Special thanks to Eccentric-J for the clojure-lsp logo