Elixir Lsp Projects
-
elixir-ls
A frontend-independent IDE "smartness" server for Elixir. Implements the "Language Server Protocol" standard and provides debugger support via the "Debug Adapter Protocol"
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
No. Not even close. But it's getting better.
There are currently two worth mentioning:
ElixirLSP: https://github.com/elixir-lsp/elixir-ls
Elixir tools: https://www.elixir-tools.dev/
ElixirLSP is the older project, and has been around for a while. It does a lot, but has had sporadic issues over the years. Things like the debugger are a dog to get working, and the server itself will occasionally run into issues where it just doesn't want to work. It's always sort of focused on a subset of language server features, so don't expect much in the way of inline corrections. But it's got the essentials, formatting, basic linting, type hinting, on demand documentation, and primitive reference navigation
Elixir tools is a new up and comer, written by Mitchell Hanberg. It's aiming to be a more complete lsp, and has plugins in its "ecosystem" for most editors. Features have been arriving rapidly, starting with things like inline corrections and far more reliable linting, and recently growing autocomplete. One of the main selling points is the elixir-tools backend is a self contained binary, so it can mostly work independent of system Elixir/Erlang version, which was a frequent tripping point for ElixirLSP
Personally I use both at the same time, but plan to move to tools only when it's got all the features I need
Project mention: Show HN: Burrito v1.0.0 – Wrap Elixir Apps into Standalone Binaries | news.ycombinator.com | 2023-12-08We also use `zig cc` to find NIFs inside your project, and re-compile them for the target platform.
Currently as a non-trivial proof of concept, one of the latest LSP editor plugins for Elixir, NextLS (https://github.com/elixir-tools/next-ls), is using Burrito to effortlessly deploy a single-file binary of the language server to thousands of people already.
Burrito was created to help folks use Elixir for applications outside of the standard Web App space. I hope it helps expand the type of projects people use Elixir for, and I'm excited to see what people create :)
Elixir Lsp related posts
Index
Sponsored