Modular · 2026-08-18 · major
Mojo goes open source — Modular ships the compiler under Apache 2.0
Mojo is now fully open source. Modular published the compiler, the tooling and the standard library under Apache 2.0 with LLVM exceptions, in the modular/modular repository, one week after Mojo 1.0 froze the language.

Modular published the Mojo compiler and toolchain under Apache 2.0, four years after the language first appeared.
Key specs
| GitHub stars | 27k+ |
|---|
Quick facts
| Maker | Modular |
|---|---|
| License | Apache 2.0 with LLVM exceptions |
| What opened | Compiler, tooling and standard library |
| Repository | github.com/modular/modular |
| Build system | Bazel, via the bundled ./bazelw wrapper |
| Compiler contributions | Not accepted yet; planned by end of the year |
| Context | Follows the Mojo 1.0 release the week before |
What is it?
The Mojo compiler source is public for the first time. Modular released it under the Apache 2.0 license with LLVM exceptions, together with the tooling and the standard library, all inside the modular/modular repository on GitHub. For four years Mojo grew with an open community but a closed compiler, and that last closed piece is now gone.
How does it work?
Everything needed to build the language from scratch is in one repository. You clone modular/modular and compile it with Bazel through the bundled ./bazelw wrapper, then run a Mojo file with the toolchain you just built. Patches are a different story: the standard library has accepted outside contributions since 2024, but Modular says it is not ready to take compiler and tooling contributions yet and is aiming to open those by the end of the year.
Why does it matter?
Teams writing AI kernels can now read, fork and audit the compiler they depend on instead of trusting a closed binary. The timing helps too — Mojo 1.0 shipped the week before with source stability, so the code people can finally read is the version they will build on, not a moving target.
Who is it for?
systems and GPU programmers
Frequently asked questions
- Can I send patches to the Mojo compiler now?
- Not yet. Modular says in the announcement that it is not ready to take contributions to the Mojo compiler and tooling, and that it aims to accept them by the end of this year. The Mojo standard library is the exception — it has accepted outside contributions since 2024, so that part of the codebase is already open to patches.
- What was already open before this release?
- Modular opened the Mojo standard library in 2024, then published hundreds of thousands of lines of kernel code written in Mojo, plus tools and support. The compiler stayed closed through all of it. Today's release fills that gap: the compiler and tooling that turn Mojo source into a running program are now in the same public repository.
- How does this relate to the Mojo 1.0 release?
- Mojo 1.0 landed the week before and froze the language with source stability guarantees. Modular opened the compiler right after, so the public code corresponds to a stable version of the language rather than one still changing under contributors. The blog post presents the two events as one plan finishing.
- Which license did Modular pick, and why that one?
- Mojo uses Apache 2.0 with LLVM exceptions. Modular calls this pairing the gold standard for programming languages and compilers, and says it lets people use Mojo flexibly across applications. It is the same license family the LLVM project itself uses, which matters because Mojo's toolchain sits close to LLVM.
Try it
git clone https://github.com/modular/modular.git