Today, the Mojo language officially reaches 1.0: a milestone the language has been building toward since its first release in 2023. Mojo has grown into a general-purpose language with a vibrant developer community writing their own libraries, tools, and applications on top of it. With Mojo 1.0, developers can now build for the long-term on a stable, production-ready language foundation.

Mojo 1.0: A stable foundation for ecosystem growth

Modular has rapidly evolved the Mojo language through extensive internal use. But that pace of progress has come with a tradeoff: frequent changes have made it difficult for the community to maintain long-term projects.

As we stated when we first announced the path to Mojo 1.0, its primary goal is to provide a stable foundation developers can build on. We are making that commitment today because Mojo is ready: it is no longer just a language we are developing; it is a language we rely on every day in production as the foundation of our commercial infrastructure, MAX and Modular Cloud.

Importantly, Mojo 1.0 does not mark the end of the language’s evolution, but it is an important milestone on a longer journey. During the 1.x timeframe, changes should primarily be additive, giving developers confidence that the language will not continually shift beneath them. Breaking changes may still be made, but will be managed with care, following the standards of how mature languages (e.g. C++) evolve over time.

Yet, this milestone belongs just as much to our incredible community as it does to us. Since we open-sourced the standard library, nearly 200 contributors have landed more than 1,100 pull requests, changing over 200,000 lines of code, and more than a thousand others have filed issues that shaped the language. To every developer who filed an issue, opened a pull request, wrote a language proposal, or built a package: thank you for being the architects of this language alongside us.

Mojo improvements in 26.5

Much of this release is focused on completing the work required for Mojo 1.0 – a throughline across our last several releases as we’ve worked to make the language more consistent, predictable, and approachable.

Where Mojo offered multiple ways to express the same idea, we’ve converged on one. Variables are now consistently declared with var, closures have been unified, there is a single Pointer type, and a number of renamings have made the Mojo lexicon more precise and consistent.

This release completes that final round of language simplification and cleanup, giving Mojo 1.0 the stable, coherent foundation we want developers to be able to build on for years to come.

Beyond this foundational work, Mojo 1.0 also includes several new features and improvements since the last beta release:

  • Mojo now supports Python-style “lambda” syntax for inline closures.
  • The Mojo LSP server is far more stable and reliable, greatly improving your everyday experience with VS Code and other editors.
  • The Mojo AI Skills are now “1.0 ready”, covering new project creation, GPU programming, porting from other languages, etc.
  • Mojo now diagnoses memory safety problems involving reference invalidation, e.g. noticing when List.append invalidates a reference into the list.
  • “where” clauses are more consistently used across the standard library, and allow a descriptive message to make failures more actionable.

These are only a few of the highlights. See the full Mojo changelog on mojolang.org for the complete list of changes.

Where Mojo goes from here

Mojo 1.0 is a major milestone, but there’s so much more we are planning for the language. Mojo has already established itself as a powerful language for writing high-performance code across modern CPUs, GPUs, and accelerators. The next phase of its evolution is to broaden that foundation and make Mojo a truly great general-purpose systems programming language.

That means continuing to invest in the core language and developer experience, with major capabilities ahead including a robust asynchronous programming model, pattern matching and unions, and much more. You can see what we are working toward in the Mojo roadmap.

Finally, we will continue to progressively open-source more of the Mojo language, as well as components in MAX that we have built with it. Our commitment remains unchanged – we will open source the Mojo compiler and toolchain in 2026.

MAX enhancements in 26.5

While Mojo 1.0 is the highlight of this release, 26.5 brings improvements to MAX, too.

Installing MAX is now easier: use max[“serve”] and max[“benchmark”] (max-serve and max-benchmark with conda) to install only the dependencies you need, or max[“all”] to install everything. The modular package will be retired in 26.6.

MAX also adds support for two new model families: GLM-5.2 and Nemotron-H, both hybrid Mamba-2 models. And Kimi 2.5 now works with Module V3, our streamlined model-authoring path.

Last, our collection of open source agent skills is a great way to get started with this release. We've used these skills internally to speed up full model lifecycle bring-up, and they've picked up 7.2K+ downloads through skills.sh.

For the full list of updates, see the MAX changelog.

Get started with 26.5 and Mojo 1.0

Install or upgrade to get started in minutes:

1.0 is just the beginning, and we’ll share more on our plans for Mojo, MAX, and open source at ModCon on August 18th in San Francisco. Tune in virtually via the livestream or join the in-person waitlist.