Cursive
Cursive is a TUI (Text User Interface) library for rust. It uses ncurses by default, but other backends are available.
It allows you to build rich user interfaces for terminal applications.
Documentation
It is designed to be safe and easy to use:
[dependencies]
cursive = "0.14"
Or to use the latest git version:
[dependencies]
cursive = { git = "https://github.com/gyscos/cursive" }
(You will also need ncurses installed.)
use cursive::Cursive;
use cursive::views::{Dialog, TextView};
fn main() {
// Creates the cursive root - required for every application.
let mut siv = Cursive::default();
// Creates a dialog with a single "Quit" button
siv.add_layer(Dialog::around(TextView::new("Hello Dialog!"))
.title("Cursive")
.button("Quit",