tmux vs Zellij
The 30-year-old terminal multiplexer versus the Rust rewrite that actually makes sense. One requires a cheat sheet. One shows you the keybindings.
Zellij
For new users, Zellij is the clear pick. Discoverable keybindings, sane defaults, and a layout system that doesn't require a PhD. tmux veterans have no reason to switch, but if you're starting fresh, Zellij saves you hours of configuration.
Terminal Multiplexers: Why Bother
A terminal multiplexer lets you split your terminal into panes, create tabs, and keep sessions alive when you disconnect. SSH into a server, start a process in tmux, disconnect, reconnect later ā it's still running.
If you've never used one, you're missing out. If you've tried tmux and bounced off, Zellij might be your way in.
tmux: Power Through Muscle Memory
tmux has been the standard since 2007. Every sysadmin knows it. Every dotfiles repo has a .tmux.conf.
The problem: it's hostile to newcomers. Ctrl-b % to split vertically? Ctrl-b " to split horizontally? Who decided this?
Once you've memorized the bindings and customized your config, tmux is incredibly powerful. Scriptable, lightweight, works everywhere. But that "once" does a lot of heavy lifting.
Zellij: Discoverability First
Zellij shows you available keybindings at the bottom of the screen. Press Ctrl-p for pane mode, and it shows you all pane operations. No memorization needed.
⢠Floating panes: Pop up a terminal on top of your layout. tmux can't do this natively. ⢠Layout system: Define layouts in YAML. Split percentages, default commands, named panes. ⢠Plugin system: Written in WASM. Plugins are sandboxed and can't crash your session. ⢠Sixel support: Render images in your terminal. Actually useful for certain workflows.
The Migration Question
If you're a tmux power user with years of muscle memory and a 200-line .tmux.conf, switching to Zellij costs you all that investment. The keybindings are different, the mental model is different, and your config doesn't translate.
Stick with tmux. It's not broken.
If you're new to multiplexers or frustrated with tmux's learning curve, Zellij is a genuinely better starting point.
Quick Comparison
| Factor | tmux | Zellij |
|---|---|---|
| Learning Curve | Steep (memorize bindings) | Gentle (shows bindings) |
| Default Config | Minimal | Sensible defaults |
| Floating Panes | No (popup only) | Yes |
| Layout System | Manual/scripts | YAML declarative |
| Server Availability | Everywhere (apt/yum) | Less common |
| Resource Usage | Tiny (~2MB) | Light (~15MB) |
| Scripting | Excellent (tmux commands) | Good (WASM plugins) |
| Plugin Ecosystem | tpm + community | Growing (WASM) |
The Verdict
Use tmux if: You already know tmux, work on remote servers regularly, or need the lightest possible multiplexer. Muscle memory is worth keeping.
Use Zellij if: You're new to terminal multiplexers, want floating panes, or hate memorizing keybindings. The onboarding experience is dramatically better.
Consider: If you just need splits and tabs, your terminal emulator (Wezterm, Kitty, WarpTerminal) might already handle it without a multiplexer.
For new users, Zellij is the clear pick. Discoverable keybindings, sane defaults, and a layout system that doesn't require a PhD. tmux veterans have no reason to switch, but if you're starting fresh, Zellij saves you hours of configuration.
Related Comparisons
Disagree? nice@nicepick.dev