Gleam's Latest Update Makes It Easier to Navigate and Rename Code

Gleam v1.18.0 was released on July 29, 2026, bringing improvements to the tools that help developers write and manage Gleam code, along with a performance boost for code that runs in web browsers. The changes were announced in the official release post (gleam.run). A test version called v1.18.0-rc1 had been released beforehand for testing.
The biggest changes are in Gleam's language server. A language server is a background program that gives your code editor helpful features like auto-complete, error warnings, and the ability to jump around your code. Think of it as a smart assistant that understands your code and helps you move through it.
Gleam's language server can now do three things it could not do before: jump to where a piece of data is defined, find every place that piece of data is used, and rename it everywhere at once. These features have been standard in popular languages like Python and JavaScript for years. Their absence in Gleam made working in larger projects harder than it needed to be.
The update also adds the ability to rename type variables. Type variables are placeholders — like blanks in a form — that stand in for a type of data until the program fills them in. Now, when a developer renames one of these placeholders, every reference to it updates automatically throughout the codebase.
Two more language server features round out the release. First, when a developer renames a file in their project, all the files that reference it get their import statements updated automatically. Second, the editor can now generate a starter template for pattern matching. Pattern matching is a way of writing code that checks the shape of data and branches accordingly — it is how Gleam handles most of its decision-making. Having the editor draft the structure for you saves repetitive typing.
On the performance side, Gleam's system for converting code into JavaScript — the language that runs in web browsers — got smarter about memory. When a program creates multiple copies of a piece of data that are all identical, the compiler now reuses a single copy instead of making new ones each time. This matters because creating unnecessary copies puts pressure on the browser's memory cleanup system, which can cause brief pauses that make applications feel janky.
Gleam is a programming language that checks for errors before code runs and can be converted to run on two different systems: Erlang's runtime, which is good at handling many tasks at once, and JavaScript, which runs in web browsers and on servers. This release improves both sides: the editor tools make working with Gleam's type system smoother, and the JavaScript output is more efficient.
The broader context here is about adoption. The language server improvements are the more important changes in this release. How a language feels to use in the editor is one of the biggest factors in whether developers adopt it, and the missing navigation and renaming features have been a real drawback for teams comparing Gleam to more established languages. The JavaScript performance fix is useful but smaller in impact — it will show up in benchmarks more than in a developer's daily routine.
The release continues a steady pattern of improvements to Gleam's tools, each one closing the gap between what the language aims to do and how comfortable it is to use day to day. Whether that progress leads to wider adoption depends on many factors beyond a single release, but v1.18.0 smooths things out in the two places developers spend the most time: their editor and the code their program produces.


