The First Release Candidate

By Mitchell Hanberg
Feb 22, 2026

Hello everyone!

After many months of work, we have cut the first (and second!) release candidate v0.1.0-rc.1 for the Expert language server. This has been a huge effort by a number of people and we thank you for the patience and support!

This release marks that effort to combine Lexical and Next LS has reached stability and developers can migrate over without fear that their development workflow will be broken.

Before we dive into the release candidate, let's thank the project sponsors, contributors, and review the milestones we've set up.

TLDR

We have published the first release candidate of Expert and need your help by trying it out and reporting bugs. We appreciate all the help.

Do not hesitate to open an issue if you run into problems, have a question about the documentation, or have trouble getting it set up.

Funding

As of today, the project is financially sponsored by the following companies. This money is donated to the Erlang Ecosystem Foundation and is earmarked for Expert development. This money can be distributed to people working full time on Expert. Please see the Sponsors for more information.

These funds are currently helping to pay Lucas San Roman to work on Expert full time. Lucas has been working mostly full time on Expert since June of 2025.

There are also several companies dedicating employees to Expert development.

Contributors

We have been blessed to have had an influx of contributors since we founded Expert. Some hearken back to Lexical and Next LS, as well as brand new contributors.

  • Lucas San Roman (Doorgan): The first person to start working on Expert full time, funded by the EEF earmarked funds. Lucas has been absolutely instrumental in finishing the integration of Lexical and Next LS into what we know as Expert today.
  • Cameron Duley (Moosieus): Cameron helped adapt the Expert extension for Visual Studio Code from the old Lexical extension.
  • Paweł Świątkowski (katafrakt): Has been consistently providing patches and new features driven from real world usage at Jump.
  • Gabriel Pereira (gp-pereira): Integrated his library Refactorex into Expert, bringing support for a litany of refactors. You can read his paper on building Refactorex (includes shoutouts to GenLSP and Sourceror) here!

A list of all contributors since ElixirConf 2025 (as of early February 2026):

Dorgan Paweł Świątkowski Tomasz Mazur Paul Gideon Dann
Dan Janowski Leon Qadirie Peter Ullrich Gabriel Oliveira
Mitchell Hanberg Joram Schrijver Eksperimental Rolf Andersen
Amadeus Folego Cameron Duley Rock Neurotiko Thanabodee Charoenpiriyakij
Ryan Despain Arran Øystein Kostveit Gabriel Kevin Schweikert Luca Hagel
Worming Hugo Baraúna Niklas H Damir Batinović
Andy LeClair José Valim Nicolò G. Hovis
afterlook Adam C. Stephens Rasheed Atanda Ang
Mikael Muszynski rktjmp Flávio Escobar Wilhelm Kirschbaum
Oliver Kriska Erick Navarro Artem Solomatin Maks E.
Brian Cardarella

v0.1.0-rc.1

Shortly after our public announcement during José's keynote at ElixirConf 2025, I triaged the work into GitHub issues and organized them into milestones. These milestones are the priority list for contributors needing to decide what to work on.

We are prioritizing stability first, then integrating missing features from Next LS and ElixirLS, and then brand new features.

  • v0.1: Captures all work to get Expert to be ready to be daily driven by intrepid early adopters. We continuously add bugs to this milestone as we find them. This also included getting it running on Windows, which was missing from Lexical and Next LS.
  • v0.2: Captures work to integrate missing features from Next LS.
  • v0.3: Captures work to integrate missing features from ElixirLS.
  • v0.4: Captures any new features not present in either Lexical, Next LS, or ElixirLS.

Features

You can check out the documentation to see a list of all features and some videos of them in action.

A quick list includes:

  • Compiler Diagnostics
  • Completions
  • Document Symbols (Code Outline, Breadrumbs)
  • Go to definition
  • Monorepo support (Workspace folders)
  • Workspace symbols
  • Refactors (Code Actions)
  • Documentation on Hover
  • Formatting

Code

If you'd like to contribute or open an issue, you can find our various projects here.

How to help

Please try the release candidate and report any bugs you come across! Getting bug reports with proper reproduction cases along with all relevant information like your .expert/expert.log, OS, Elixir version, Erlang version, project size, etc is extremely helpful.

FAQ

How can I install it?

Please see the installation instructions here.

VSCode/Cursor/Etc extension?
Nightly releases?

We have nightly releases published once a day.

We will continue to publish the nightly releases even after we publish the first versioned release.

Can I get Credo in my editor?

We are still working out how to best support common tools like Credo that provide project diagnostics. At this time, no Credo or other plugins are supported.

Why are the projects in 3 different GitHub orgs?

We chose to put the main Expert repository in the elixir-lang organization to signal the importance of the project to the Elixir language ecosystem. We created the expert-lsp GitHub organization for any related projects like the website and VSCode extension that don't necessarily need to go in the main elixir-lang org.

Spitfire and GenLSP were already elixir-tools projects.

Why are you doing a release candidate?

We want people to know that we think its ready, but we need broader testing still. There are only so many people who are up to installing a nightly unstable build of a language server and hopefully publishing a release candidate will inspire more people to try it.

Once we capture and fix the issues reported with RC 0, we will release an RC 1 to verify with users that those bugs are fixed. Depending on the amount of issues reported during RC 1, we will publish the full 0.1.0 release.

Hopefully this process takes 2-3 weeks.

What is the best way to contribute?

In the near future, look for a CONTRIBUTING.md file in the repository. It will explain the best way to report bugs, propose features, and contribute to the project.

In general, the best way to contribute is to use the software and submit detailed bug reports.

What about 1.0?

We haven't discussed what 1.0 will look like yet.

How can I sponsor?

Please see the sponsors page here.

Can I sponsor on GitHub?

You can sponsor folks individually on GitHub, but you cannot sponsor the "project" on GitHub.

Is there a logo?

Not yet! If you want to submit something for consideration, please send me an email with your idea/mockup/design to mitch at mitchellhanberg dot com. Please only send original work, I will not consider any GenAI submissions.

Where can I learn more about the history of the project?

Please see the History page for the origin story.

How did you combine Lexical and Next LS?

We started with the Lexical codebase since it was the more complicated one, then altered it to use components from Next LS like using Burrito for releases, GenLSP for the LSP abstraction and soon will be exploring other parts of Next LS like using SQLite.

You can see more details in my (Mitch) talk at CodeBeam America 2025 for more information.