/xterm.dart

💻 xterm.dart is a fast and fully-featured terminal emulator for Flutter, with support for mobile and desktop platforms.

Primary LanguageDartMIT LicenseMIT

xterm.dart 1.0.0+ is available! 🎉

xterm.dart

GitHub repo size GitHub issues GitHub pull requests

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

Screenshots

Features

  • 📦 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.

Getting Started

1. Add this to your package's pubspec.yaml file:

dependencies:
  ...
  xterm: ^2.0.0

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!

Example

Features and bugs

Please file feature requests and bugs at the issue tracker.

Contributions are always welcome!

License

This project is licensed under an MIT license.