#tui #ratatui #terminal-input

tui-input

TUI input library supporting multiple backends

28 releases (14 breaking)

0.15.3 Apr 18, 2026
0.15.0 Dec 28, 2025
0.14.0 Jul 5, 2025
0.11.1 Nov 27, 2024
0.1.2 Nov 4, 2021

#7 in #terminal-input

Download history 3325/week @ 2026-03-03 16597/week @ 2026-03-10 16970/week @ 2026-03-17 17721/week @ 2026-03-24 15390/week @ 2026-03-31 20661/week @ 2026-04-07 22533/week @ 2026-04-14 21387/week @ 2026-04-21 24879/week @ 2026-04-28 28503/week @ 2026-05-05 27103/week @ 2026-05-12 31128/week @ 2026-05-19 48167/week @ 2026-05-26 47009/week @ 2026-06-02

157,903 downloads per month
Used in 239 crates (221 directly)

MIT license

44KB
1K SLoC

tui-input

Crate Status Docs Status

tui-input.gif

A TUI input library supporting multiple backends.

This crate can be used with tui-rs and ratatui.

For people using tui-rs use version v0.6.* for people migrating to ratatui use latest version.

Install

Cargo.toml

# ratatui::crossterm
tui-input = "*"

# Direct crossterm
tui-input = { version = "*", features = ["crossterm"], default-features = false }

# termion
tui-input = { version = "*", features = ["termion"], default-features = false }

Features

  • ratatui-crossterm (default)
  • ratatui-termion
  • crossterm
  • termion
  • serde

Demo

See examples.

# Run the ratatui example
cargo run --example ratatui_crossterm_input

# Run the example with crossterm as backend.
cargo run --example crossterm_input --features crossterm --no-default-features

# Run the example with termion as backend.
cargo run --example termion_input --features termion --no-default-features

Dependencies

~1.7–6MB
~126K SLoC