kterm 1.0.0 copy "kterm: ^1.0.0" to clipboard
kterm: ^1.0.0 copied to clipboard

kterm is a fast and fully-featured terminal emulator for Flutter applications, with support for mobile and desktop platforms.

kterm (formerly xterm.dart) #

Actions Package version GitHub repo size GitHub issues GitHub pull requests

kterm is a fast and fully-featured terminal emulator for Flutter applications, with support for mobile and desktop platforms. It is a fork of xterm.dart with enhanced modern terminal features.

This package requires Flutter version >=3.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.

kterm vs xterm.dart #

kterm includes all xterm.dart features plus modern terminal enhancements:

  • 🖥️ Modern Key Support: Full Kitty Keyboard Protocol implementation.
  • 📚 Progressive Enhancement: Supports CSI > n u stack (push/pop) for nested terminal modes.
  • 🔍 Zero Ambiguity: No more Tab vs Ctrl+I confusion in Neovim/Helix — modifier keys are always distinguishable.

What's new in 3.0.0:

  • 📱 Enhanced support for mobile platforms.
  • ⌨️ Integrates with Flutter's shortcut system.
  • 🎨 Allows changing theme at runtime.
  • 💪 Better performance. No tree rebuilds anymore.
  • 🈂️ Works with IMEs.

Getting Started #

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

dependencies:
  ...
  kterm: ^3.2.6

2. Create the terminal:

import 'package:kterm/xterm.dart';
...
terminal = Terminal();

Listen to user interaction with the terminal by simply adding a onOutput callback:

terminal = Terminal();

terminal.onOutput = (output) {
  print('output: $output');
}

3. Create the view, attach the terminal to the view:

import 'package:kterm/flutter.dart';
...
child: TerminalView(terminal),

4. Write something to the terminal:

terminal.write('Hello, world!');

Done!

More examples #

For a complete project built with kterm, check out TerminalStudio.

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.

0
likes
0
points
374
downloads

Publisher

unverified uploader

Weekly Downloads

kterm is a fast and fully-featured terminal emulator for Flutter applications, with support for mobile and desktop platforms.

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

convert, equatable, flutter, kitty_key_encoder, meta, quiver, zmodem

More

Packages that depend on kterm