The open-source stack behind mojojojo
mojosub, the compiler, the coding agent, and the Mojo port factory are separate projects on purpose. Here is what each one owns, what is ready today, and where the hard gates sit.
Mojojojo is not one repository with a public folder. Its compiler path, coding agent, and library ports are separate MIT-licensed projects with separate tests and failure modes. The hosted service is a consumer of those projects.
| Project | Owns | Status |
|---|---|---|
| mojosub | Deterministic Python-subset transpilation, cache, and hot dispatch | Working subset; refuses unsupported Python |
| mojojojo-compiler | Hybrid bundles with CPython fallback and safe native hot functions | Early working slice |
| mojojojo-agent | Grounded repository search, tools, sessions, and execution | Early, installable, MIT |
| mojo-factory | Scaffold, build, test, benchmark, review, and publish library ports | Active factory with hard gates |
A repository count is not a readiness claim
The factory workspace contains a large and growing set of
mojo-* projects. The live service currently knows about
108 ports and marks 49 ready for its runtime. Those are different numbers on
purpose: a generated repository, a port that builds, a port that passes parity
tests, and a port integrated into the hosted runtime are four different states.
Why split the projects?
Someone using mojosub locally should not need a mojojojo account. Someone auditing the agent should not have to understand the hosting database. A library port should reproduce its tests and benchmark from its own lockfile. Keeping those boundaries visible makes the hosted convenience optional.
It also lets each layer be blunt about limitations. mojosub accepts a typed numeric subset. The compiler falls back to CPython. The agent is a generator, not an authority. The factory publishes slower-than-upstream rows when that is what the machine measured.
Where to start
- Read how generated Mojo is gated.
- Try a small function in the browser editor.
- Use the API when the same run belongs in a program.
- Open an individual repository before depending on a port; its own tests and notes are the source of truth.
Product notes describe what is live at publication time. Anything still being designed is marked as a preview; source repositories carry their own build and test instructions.
