Skip to content

The family

mnml is one of two small Rust tools by Chris McLennan. They each solve a different problem — an IDE, a DJ rig — but they ship from the same workshop and share the same design language (the charcoal rounded-square icon, the > shell-prompt wordmark, the monospace identity).

mnml app icon

mnml

A NvChad-style terminal IDE in Rust.

Vim or standard editing — both first-class, both fully remappable, neither buried in if vim . LSP, git, an embedded HTTP client, AI panes, a headless test harness, 94 themes, 39+ tree-sitter languages.

What’s it good for: daily-driving code in a terminal without giving up an IDE’s reach.

Install mnml
mixr app icon

mixr

A full DJ rig in one terminal binary.

Beatport streaming, beat-locked crossfades, a Claude DJ that picks the next track, hardware MIDI controller support. Runs standalone, or opens as a Pty pane inside mnml via mixr.show.

What’s it good for: mixing electronic music from the same terminal you’re coding in.

Install mixr

They share more than a coat of paint:

  • Shared design language. Charcoal rounded-square icons, a > prompt accent in each app’s color (cool blue for mnml, gold for mixr), monospace wordmarks. Same family settings UI idiom — a sectioned scrollable list with ▸ <label>: [active] / other * rows, the same keybindings (←→ adjust, ↑↓ move, r reset row, R reset all, Enter save, Esc cancel).
  • Shared fim-engine. The same in-process FIM (fill-in-the-middle) Rust crate powers mnml’s optional offline inline suggestions. The same quantized model lives in both apps’ caches.

You don’t need both. mnml is happy in any terminal (iTerm2, Alacritty, kitty, Terminal.app, Ghostty, Windows Terminal); mixr runs standalone too. But run them together and the seams disappear.