Extraterm is an open source project to build a terminal emulator and expand it with new features to support modern workflows and do more than just act like a glorified teletype.
The software is billed as “The swiss army chainsaw of terminal emulators”.
Extraterm is in active development. The author considers it currently roughly ‘beta’ in quality.
Key Features
- Two modes are available:
- Normal mode – this mode acts as a traditional terminal emulator.
- Cursor mode – allows users to navigate the screen and the contents of the scrollback using a cursor as in a text editor. Command output is editable in place. Multi-cursor editing. This mode, together with frames, lets you edit text already on the screen and prepare a complex command.
- Backwards compatibility with the decades of existing terminal based applications.
- xterm compatible.
- Show images in the terminal. It works across ssh.
- Shell integration unlocks powerful features such as frames around command output, reusing command output and in-place editing of text. bash, zsh and fish shells are supported. Powerful keyboard based cursor mode. Copy and paste without having to leave the keyboard.
- Place frames around the output of commands. Frames also display the command which was executed and warns when a command has indicated failure status.
- The “from” command lets you use previous command output as input for terminal commands. This enables new fast “ad hoc” workflows. Grab the contents of a frame and use it as part of a shell command.
- Easy uploads and downloads using the shell integration, and works transparently across SSH.
- Tabs – lets you run multiple terminal sessions at the same time. With multiple tabs and panes, split and tiled any way you like. The Horizontal Split and Vertical Split commands let you split the window in half with side-by-side groups of tables. These too can be split again.
- Keyboard based selection.
- Previous command output can be used as input for new commands.
- Command Palette makes it easy to find and execute any command without leaving the keyboard. It shows where all relevant commands can be viewed, searched, and executed.
- Text zoom.
- Unicode support.
- Color emoji.
- Tips – helps you learn some of the features of the application.
- Cross-platform support – runs under Linux, macOS, Windows (using Cygwin).
Website: extraterm.org
Support: Documentation, GitHub Code Repository
Developer: Simon Edwards
License: MIT License
Extraterm is built on the following technologies:
- Electron – a platform for running desktop applications made using web technologies.
- TypeScript – superset of JavaScript which adds static typing.
- CodeMirror – text editor component which is used extensively to show terminal output and provide cursor based selections and editing.
- term.js – Terminal emulator component, pulled into the Extraterm code base and heavily modified.
- ptyw.js – PTY support for node.js.
- … plus many other smaller libraries.

Extraterm is written in TypeScript. Learn TypeScript with our recommended free books and free tutorials.
Related Software
| Terminal Emulators | |
|---|---|
| Tabby | (Terminus) Highly configurable terminal emulator, SSH and serial client |
| Alacritty | Hardware-accelerated terminal emulator |
| Wave Terminal | AI-native terminal built for seamless workflows |
| urxvt | RXVT-like terminal emulator with Unicode support |
| Kitty | Like Alacritty, Kitty offers hardware acceleration |
| Ghostty | Feature-rich and cross-platform terminal emulator |
| Guake | Drop-down terminal for GNOME |
| Terminator | Multiple GNOME terminals in one window |
| WezTerm | GPU-accelerated cross-platform terminal emulator and multiplexer |
| rio | Hardware-accelerated GPU terminal emulator |
| electerm | Terminal emulator and much more |
| st | Simple terminal implementation for X which sucks less |
| contour | Aimed at power users with a modern feature mindset |
| Zutty | High-end terminal emulator for low-end systems |
| xterm | Provides DEC VT102 and Tektronix 4014 compatible terminals |
| Extraterm | Swiss army chainsaw of terminal emulators |
| Tilda | Gtk based drop down terminal |
| Ptyxis | Terminal for a container-oriented desktop |
| MATE Terminal | Terminal emulator the MATE desktop environment |
| Hyper | Terminal emulator built with web technologies |
| GNOME Terminal | Terminal emulator for the GNOME desktop environment |
| foot | Fast, lightweight and minimalistic Wayland terminal emulator |
| Xfce Terminal | Lightweight and easy to use terminal emulator application |
| Tilix | Advanced GTK3 tiling emulator |
| Terminology | Fast, lean and visually enhanced open source terminal emulator |
| Konsole | The KDE 5 terminal emulator |
| Black Box | GTK 4 terminal |
| Yakuake | Drop-down terminal emulator based on KDE Konsole technology |
| Station | Convergent terminal emulator |
| Sakura | Vte-based terminal emulator |
| QTerminal | Lightweight Qt-based terminal emulator |
| Zashterminal | Modern, intuitive, and innovative terminal built with GTK4 and Adwaita |
| LazyCat Terminal | Built with Vala and GTK4. |
| Kerminal | Modern terminal emulator and SSH manager |
| Termy | Minimal terminal emulator |
| DomTerm | Terminal emulator, REPL console, and screen multiplexer |
| CRT | Visually expressive terminal emulator written in Rust |
| kermit | VTE-based, simple and froggy terminal emulator |
| ROXTerm | VTE terminal emulator with tabs |
| LXTerminal | Lightweight terminal emulator based on GTK+ for the LXDE desktop |
| Bobcat | Built using the U++ framework and TerminalCtrl widget |
| fortty | GPU-accelerated terminal emulator written in Fortran |
| Tess | Hackable, simple, rapid and beautiful terminal |
| mlterm | Multilingual terminal emulator on X11 |
| Termite | Keyboard-centric VTE-based terminal |
| Packet | Terminal multiplexer and broadcast system |
| fingerterm | Terminal emulator with a custom virtual keyboard |
Read our verdict in the software roundup.
| Terminal Emulators Built on Web Technologies | |
|---|---|
| Tabby | (Terminus) Highly configurable terminal emulator, SSH and serial client |
| Wave Terminal | AI-native terminal built for seamless workflows |
| electerm | Terminal emulator and much more |
| Hyper | Beautiful and extensible experience for command-line interface users |
| Kerminal | Modern terminal emulator and SSH manager |
| DomTerm | Terminal emulator, REPL console, and screen multiplexer |
| Tess | Hackable, simple, rapid and beautiful terminal |
| Packet | Terminal multiplexer and broadcast system |
Read our verdict in the software roundup.
Explore our comprehensive directory of recommended free and open source software. Our carefully curated collection spans every major software category.This directory is part of our ongoing series of informative articles for Linux enthusiasts. It features hundreds of detailed reviews, along with open source alternatives to proprietary solutions from major corporations such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. You’ll also find interesting projects to try, hardware coverage, free programming books and tutorials, and much more. Discovered a useful open source Linux program that we haven’t covered yet? Let us know by completing this form. |

