xterm.dart is a fast and fully-featured terminal emulator for Flutter applications, with support for mobile and desktop platforms.
This package requires Flutter version >=2.0.0
![]() |
![]() |
![]() |
![]() |
- 📦 Works out of the box No special configuration required.
- 🚀 Fast Renders at 60fps.
- 😀 Wide character support Supports CJK and emojis.
- ✂️ Customizable
- ✔ Frontend independent: The terminal core can work without flutter frontend.
1. Add this to your package's pubspec.yaml file:
dependencies:
...
xterm: ^2.2.0-pre
2. Create the terminal:
import 'package:xterm/xterm.dart';
...
terminal = Terminal();
To listen for input, add an onInput handler:
terminal = Terminal(onInput: onInput);
void onInput(String input) {
print('input: $input');
}
3. Create the view, then attach the terminal to the view:
import 'package:xterm/flutter.dart';
...
child: TerminalView(terminal: terminal),
4. Write something to the terminal:
terminal.write('Hello, world!');
Done!
-
local pty example: Terminal Lite
-
ssh example: https://github.com/TerminalStudio/xterm.dart/blob/master/example/lib/ssh.dart
Please file feature requests and bugs at the issue tracker.
Contributions are always welcome!
This project is licensed under an MIT license.