Popularity
7.9
Growing
Activity
7.4
Declining
467
18
38


Termion aims to be simple and yet expressive. It is bindless, meaning that it is not a front-end to some other library (e.g., ncurses or termbox), but a standalone library directly talking to the TTY.

Termion is quite convenient, due to its complete coverage of essential TTY features, providing one consistent API. Termion is rather low-level containing only abstraction aligned with what actually happens behind the scenes. For something more high-level, refer to inquirer-rs, which uses Termion as backend.

Termion generates escapes and API calls for the user. This makes it a whole lot cleaner to use escapes.

Supports Redox, Mac OS X, BSD, and Linux (or, in general, ANSI terminals).

Monthly Downloads: 1,207
Programming language: Rust
License: MIT License

Termion Recommendations

Ameobea // Jump 'n' Run Puzzle Game for Ludum Dare (Game Jam)
I used Termion as the backend for a Cursive (https://rust.libhunt.com/project/cursive) TUI application that I built to guide users through the configuration process of my application. After struggling to set up the native ncurses backend, I enabled Termion support and found that it solved all the problems. The entire library is implemented in pure Rust without the need for external bindings of any kind (except Termios functions from libc, but that doesn't require any external libraries).

Have you used Termion? Share your experience. Write a short recommendation and Termion, you and your project will be promoted on Awesome Rust.
Recommend Termion

Termion alternatives and related packages

Based on the "ncurses" category

Do you think we are missing an alternative of Termion or a related project?

Add another 'ncurses' Package

Termion Tags

GUI     Asynchronous     Ncurses     Terminal     Tui     TTY     Password     Color