Skip to content
Tech AI Wire
Coding

Mojo goes open source under Apache 2.0, contributions stay closed

3 min read

By Tech AI Wire Team

By the numbers

Apache 2.0
license, with LLVM exceptions
1.0
version shipped the week before, with source stability
2024
year the standard library began taking contributions
The Mojo flame logo printed on a white card with a red open padlock in front of it

Modular open-sourced the Mojo compiler and its tooling on August 18 under the Apache 2.0 licence with LLVM exceptions, putting the last closed piece of the language on GitHub a week after Mojo 1.0 shipped. The catch for anyone hoping to send a patch: Modular says it is not accepting contributions to the compiler or tooling yet, and aims to start "by the end of this year."

What actually opened, and what did not

Mojo's standard library has been open since 2024, along with what Modular's announcement describes as hundreds of thousands of lines of kernel code written in Mojo. The compiler and the tooling around it were the remaining closed components, and those are what moved this week.

PieceStatus
Standard libraryOpen since 2024, accepting contributions
Kernel code written in MojoAlready open
CompilerSource published Aug 18; contributions not yet accepted
ToolingSource published Aug 18; contributions not yet accepted

The distinction matters more than it might sound. Publishing source under Apache 2.0 grants the rights that make a language safe to build a company on - use, modification, redistribution, and an explicit patent grant. Accepting contributions is a separate, governance question, and Modular has put a date on it rather than leaving it open-ended.

Why Apache 2.0 specifically

Modular's announcement makes the licence choice an explicit argument: "The Apache 2.0 license is the gold standard for programming languages and compilers, because it provides great flexibility to be used in all sorts of applications." The LLVM exception attached to it is the same arrangement LLVM itself uses, and it exists to stop the licence's terms from reaching into the output of the compiler - which is what makes it usable for proprietary software built with the toolchain.

That lineage is not a coincidence. Mojo was created by Chris Lattner, who Phoronix notes is the architect behind both LLVM and Swift, and the language leans on the same compiler infrastructure.

The Qualcomm question

Both sources note the announcement lands after Modular's acquisition by Qualcomm; Modular now describes itself as a Qualcomm Company. Phoronix frames the open-sourcing as unexpected in that light, pointing to what it calls Qualcomm's mixed history with open source.

Read the other way, an Apache 2.0 release immediately after an acquisition is the strongest signal an acquired language project can send about continuity - the licence cannot be revoked for code already published. Whether that continuity extends to the roadmap and the promised contribution window is the part still to be demonstrated.

What this means for developers

If you evaluated Mojo before and stopped at the closed compiler, that specific objection is now gone: you can read the compiler, build it, fork it, and ship proprietary software on it without a licence question hanging over the toolchain. That is the difference between a language you can experiment with and one you can justify in a technology review.

What has not changed is the contribution path. Filing an issue is worthwhile; planning work that depends on landing a compiler patch is not, until Modular opens that door - it says by the end of 2026, so treat anything sooner as a bonus rather than a plan.

Two practical notes from Phoronix's coverage are worth checking against your own environment before you commit time. Platform support covers macOS and Linux, with Windows still in development - if your team is Windows-first, the story is WSL or a container, not native tooling. And Mojo interoperates with Python in both directions, calling Python from Mojo and the reverse, which is what makes incremental adoption realistic: you can move one hot path rather than rewriting a codebase to try the language.

The version number is the other signal to weigh. Mojo 1.0 arrived only a week before this release, and Modular pairs it with a source-stability commitment - the point at which a language stops moving under you between releases. For anyone who has been waiting for Mojo to stop being an experiment before spending real engineering time on it, the 1.0 tag plus an Apache 2.0 compiler is the combination that was missing.

The developer AI briefing

3–5 stories a day, what they mean for developers. Free, no spam.