elixir-ls VS asdf

Compare elixir-ls vs asdf and see what are their differences.

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" (by elixir-lsp)

asdf

Extendable version manager with support for Ruby, Node.js, Elixir, Erlang & more (by asdf-vm)
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.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
elixir-ls asdf
13 341
1,381 20,547
0.8% 1.6%
9.6 7.6
13 days ago 5 days ago
Elixir Shell
Apache License 2.0 MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

elixir-ls

Posts with mentions or reviews of elixir-ls. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-08-10.
  • Vue 3.3.6 Faster Thanks to WeakMaps
    1 project | news.ycombinator.com | 22 Oct 2023
    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

  • Lightweight dev tools.
    14 projects | dev.to | 10 Aug 2023
    I decided I can live without elixir-ls when couching in return for having a usable editor. When the plugin ecosystem and documentation matures I can see myself switching to using Lapce for my primary editor.
  • GNU Debugger "GDB" Adds Support For Microsoft's Debug Adapter Protocol
    2 projects | /r/emacs | 3 Mar 2023
    Hi! I've compiled gdb from master and installed it. When I run gdb -i dap, I get JSON-RPC, so it looks like it's working, but I'm lost as to where to go from here. Does your change enable me to use a tool like https://github.com/elixir-lsp/elixir-ls with GDB now, right? How might I use them together? What would be required to then have GDB debugging over DAP from inside Emacs?
  • Phoenix 1.7 is View-less
    10 projects | news.ycombinator.com | 30 Dec 2022
    Elixir-ls provides Language Server Protocol support as well as VS Code Debug Protocol support which gives extra powers to VS Code, NeoVim, Emacs, and the like

    https://github.com/elixir-lsp/elixir-ls

  • [Elixir] Apprentice, a new alchemist.el fork
    5 projects | /r/emacs | 8 Dec 2022
    BUT, with the news that in the next Emacs version eglot (lsp client) is going to be in the core, I decide to modify alchemist in a different way, enhancing other capabilities and letting eglot do what he best does (which is the functionality of elixir-ls).
  • Is ElixirLS still in the VSCode market place?
    1 project | /r/elixir | 8 Nov 2022
    I think it's here: https://github.com/elixir-lsp/elixir-ls
  • Using a Custom Language Server in Fleet?
    2 projects | /r/Jetbrains | 19 Oct 2022
    elixir-ls powers the VSCode experience, and while it works decently, I've never really clicked with VSCode. In general, for other languages, I tend to use Jetbrain's Products. I would love to give fleet a whirl, and I know in the background it can use the Language Server Protocol to support many of the languages it currently ships with.
  • Getting Started Using Nix Flakes As An Elixir Development Environment
    2 projects | dev.to | 9 Jan 2022
    Now it doesn't mean that immediately reading this starter guide, you will have everything under the sun set up with Nix Flakes for your development need. But at least, you won't have to worry about setting up asdf, your weird hacks you need for your machine and the other tiny little things to get elixir started with elixir-ls.
  • Extreme lag on INSERT_MODE when coding in Elixir with lspconfig
    3 projects | /r/neovim | 20 Oct 2021
    I have a minimal lspconfig with coq_nvim with elixirls and tsserver. The problem is that whenever i code on elixir everything becomes slow.
  • This new VS Code Update
    1 project | /r/ProgrammerHumor | 27 Jun 2021
    Well I know one extension that runs your code, elixir-ls. I believe it scans your code and runs dialyzer, a static analysis tool, which runs your code and generates types based on it.

asdf

Posts with mentions or reviews of asdf. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-04-27.
  • Install Asdf: One Runtime Manager to Rule All Dev Environments
    10 projects | news.ycombinator.com | 27 Apr 2024
    The main issue most people have with asdf is that it’s annoyingly slow. Not unusably so, but just enough that it’s irritating.

    I identified [0] the source for much of it (sub-shells and pipes) and began a PR [1], but became bogged down with BATS testing, and then found mise / rtx, so kind of lost interest. Sorry. You can always implement these if you’d like.

    [0]: https://github.com/asdf-vm/asdf/issues/290#issuecomment-1383...

    [1]: https://github.com/asdf-vm/asdf/pull/1441

  • Show HN: I made a multiple runtime version manager that can be used on Windows
    4 projects | news.ycombinator.com | 22 Apr 2024
  • Volta – Fastest Node version manager in Rust
    2 projects | news.ycombinator.com | 25 Mar 2024
    Or if you need to manage more than just node, asdf has been around for over a decade and works great. You can use a .tool-versions to change runtimes for each project you have, in addition to managing your global runtime versions

    https://asdf-vm.com/

  • Pyenv – lets you easily switch between multiple versions of Python
    20 projects | news.ycombinator.com | 25 Mar 2024
    Why not just use a tool like asdf (https://asdf-vm.com/) or mise (https://mise.jdx.dev/)?

    These tools have the advantage of not being multi-taskers and can manage version for all your tools. You wouldn’t need pyenv and npm and rvm and…

    We’ve even started committing the .mise.toml files for projects to our repos. That way, since we work on multiple projects that may need multiple versions of the same tool, it’s handled and documented.

  • A Journey to Find an Ultimate Development Environment
    13 projects | dev.to | 2 Feb 2024
    The purpose of a version manager is to help you navigate or install any tools for development easily. Version Manager can be one tool for each dependency (e.g. NVM, g) or One tool for all dependencies (e.g. asdf, mise).
  • How to Install Your Python Version on Ubuntu
    1 project | news.ycombinator.com | 28 Jan 2024
    (asdf)[https://asdf-vm.com/] fully supports Python and almost any other language. I've been using it for Ruby, Python, Elixir, and other languages for years and never looked back.
  • Beginners Intro to Trunk Based Development
    4 projects | dev.to | 4 Jan 2024
    Secondly, our development environments must not drift, because then code may behave differently and a change could pass on our machine but fail in production. There are many tools for locking down environments, e.g nix, pkgx, asdf, containers, etc., and they all share the common goal of being able to lock down dependencies for an environment accurately and deterministically. And that needs to be enforced in our local workflow so we don't have to rely on CI environments for correctness. All developers must have environments that are effectively identical to what runs in CI (which itself should be representative of the production environment).
  • Practical Guide to Trunk Based Development
    4 projects | dev.to | 4 Jan 2024
    There are many ways this can be done (e.g nix, pkgx, asdf, containers, etc.), and we won’t get into which specific tools to use, because we'll instead cover the essential essence of preventing environment drift:
  • Criando seu ambiente com ASDF
    4 projects | dev.to | 29 Dec 2023
  • Kotlin version manager
    2 projects | /r/Kotlin | 7 Dec 2023
    I've really been enjoying asdf, which is a program that allows you to install specified versions of dev utilities as well as dynamically manage them via shims and .tool-versions files.

What are some alternatives?

When comparing elixir-ls and asdf you can also consider the following projects:

doom-emacs - An Emacs framework for the stubborn martian hacker [Moved to: https://github.com/doomemacs/doomemacs]

SDKMan - The SDKMAN! Command Line Interface

changelog.com - Changelog is news and podcast for developers. This is our open source platform.

pyenv - Simple Python version management

flake-utils - Pure Nix flake utility functions [maintainer=@zimbatm]

rbenv - Manage your app's Ruby environment

ecto - A toolkit for data mapping and language integrated query.

nvm - Node Version Manager - POSIX-compliant bash script to manage multiple active node.js versions

ardour - Mirror of Ardour Source Code

volta - Volta: JS Toolchains as Code. ⚡

alchemist.el - Elixir Tooling Integration Into Emacs

HomeBrew - 🍺 The missing package manager for macOS (or Linux)