Nu developer documentation¶
Nu is a maintained, modernized continuation of the Mu editor — a simple Python code editor for beginner programmers.
Note
This documentation is for developers who want to work on Nu itself, not
for end users (who want Using Nu). Much of it is inherited from upstream Mu and still describes
the pre-fork toolchain (PyQt5, setup.py, Sphinx/ReadTheDocs, and the
micro:bit/web modes). Nu has since moved to PyQt6, Python 3.11+,
uv and ruff, and trimmed the mode set to Python 3, Pygame Zero,
CircuitPython and the debugger. For the current, authoritative state of the
project see
README.md,
CLAUDE.md and TODO.md in the repository root. These pages are being
modernized incrementally.
Where to start¶
- New here? Read the developer setup and the first steps for new contributors.
- Want the big picture? Start with the architecture overview.
- Writing a mode? Follow the modes tutorial.
- Curious how the debugger works? See debugger / runner.
- Adding tests or translations? See tests and translations.
How the docs are built¶
These docs are written in Markdown and built with
MkDocs using the
Material theme. The
API reference is generated from the source docstrings with
mkdocstrings. Build locally with
make docs (or live-preview with make docs-serve).