[package] name = "ratatui" version = "0.22.0" authors = ["Florian Dehau ", "The Ratatui Developers"] description = "A library to build rich terminal user interfaces or dashboards" documentation = "https://docs.rs/ratatui/latest/ratatui/" keywords = ["tui", "terminal", "dashboard"] repository = "https://github.com/tui-rs-revival/ratatui" readme = "README.md" license = "MIT" exclude = [ "assets/*", ".github", "Makefile.toml", "CONTRIBUTING.md", "*.log", "tags", ] autoexamples = true edition = "2021" rust-version = "1.65.0" [badges] [features] default = ["crossterm"] all-widgets = ["widget-calendar"] widget-calendar = ["time"] macros = [] serde = ["dep:serde", "bitflags/serde"] [package.metadata.docs.rs] all-features = true # see https://doc.rust-lang.org/nightly/rustdoc/scraped-examples.html cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"] rustdoc-args = ["--cfg", "docsrs"] [dependencies] bitflags = "2.3" cassowary = "0.3" crossterm = { version = "0.26", optional = true } indoc = "2.0" paste = "1.0" serde = { version = "1", optional = true, features = ["derive"] } termion = { version = "2.0", optional = true } termwiz = { version = "0.20.0", optional = true } time = { version = "0.3.11", optional = true, features = ["local-offset"] } unicode-segmentation = "1.10" unicode-width = "0.1" [dev-dependencies] anyhow = "1.0.71" argh = "0.1" cargo-husky = { version = "1.5.0", default-features = false, features = ["user-hooks"] } criterion = { version = "0.5", features = ["html_reports"] } fakeit = "1.1" itertools = "0.10" rand = "0.8" [[bench]] name = "paragraph" harness = false [[example]] name = "barchart" required-features = ["crossterm"] doc-scrape-examples = true [[example]] name = "block" required-features = ["crossterm"] doc-scrape-examples = true [[example]] name = "canvas" required-features = ["crossterm"] doc-scrape-examples = true [[example]] name = "calendar" required-features = ["crossterm", "widget-calendar"] doc-scrape-examples = true [[example]] name = "chart" required-features = ["crossterm"] doc-scrape-examples = true [[example]] name = "custom_widget" required-features = ["crossterm"] doc-scrape-examples = true [[example]] name = "demo" # this runs for all of the terminal backends, so it can't be built using --all-features or scraped doc-scrape-examples = false [[example]] name = "gauge" required-features = ["crossterm"] doc-scrape-examples = true [[example]] name = "hello_world" required-features = ["crossterm"] doc-scrape-examples = true [[example]] name = "layout" required-features = ["crossterm"] doc-scrape-examples = true [[example]] name = "list" required-features = ["crossterm"] doc-scrape-examples = true [[example]] name = "panic" required-features = ["crossterm"] doc-scrape-examples = true [[example]] name = "paragraph" required-features = ["crossterm"] doc-scrape-examples = true [[example]] name = "popup" required-features = ["crossterm"] doc-scrape-examples = true [[example]] name = "scrollbar" required-features = ["crossterm"] doc-scrape-examples = true [[example]] name = "sparkline" required-features = ["crossterm"] doc-scrape-examples = true [[example]] name = "table" required-features = ["crossterm"] doc-scrape-examples = true [[example]] name = "tabs" required-features = ["crossterm"] doc-scrape-examples = true [[example]] name = "user_input" required-features = ["crossterm"] doc-scrape-examples = true [[example]] name = "inline" required-features = ["crossterm"] doc-scrape-examples = true