[package]
edition = "2021"
rust-version = "1.81"
name = "superlighttui"
version = "0.15.0"
build = false
exclude = [
"examples/",
".github/",
"AUDIT-REPORT.md",
"CLAUDE.md",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Super Light TUI - A lightweight, ergonomic terminal UI library"
homepage = "https://github.com/subinium/SuperLightTUI"
documentation = "https://docs.rs/superlighttui"
readme = "README.md"
keywords = [
"tui",
"terminal",
"cli",
"ui",
"immediate-mode",
]
categories = ["command-line-interface"]
license = "MIT"
repository = "https://github.com/subinium/SuperLightTUI"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
"--cfg",
"docsrs",
]
[features]
async = [
"dep:tokio",
"crossterm",
]
crossterm = ["dep:crossterm"]
default = ["crossterm"]
full = [
"crossterm",
"async",
"serde",
"image",
"qrcode",
]
image = ["dep:image"]
qrcode = ["dep:qrcode"]
serde = ["dep:serde"]
syntax = [
"syntax-rust",
"syntax-python",
"syntax-javascript",
"syntax-typescript",
"syntax-go",
"syntax-bash",
"syntax-json",
"syntax-toml",
"syntax-c",
"syntax-cpp",
"syntax-java",
"syntax-ruby",
"syntax-css",
"syntax-html",
"syntax-yaml",
]
syntax-bash = [
"dep:tree-sitter-highlight",
"dep:tree-sitter-bash",
]
syntax-c = [
"dep:tree-sitter-highlight",
"dep:tree-sitter-c",
]
syntax-cpp = [
"dep:tree-sitter-highlight",
"dep:tree-sitter-cpp",
]
syntax-css = [
"dep:tree-sitter-highlight",
"dep:tree-sitter-css",
]
syntax-go = [
"dep:tree-sitter-highlight",
"dep:tree-sitter-go",
]
syntax-html = [
"dep:tree-sitter-highlight",
"dep:tree-sitter-html",
]
syntax-java = [
"dep:tree-sitter-highlight",
"dep:tree-sitter-java",
]
syntax-javascript = [
"dep:tree-sitter-highlight",
"dep:tree-sitter-javascript",
]
syntax-json = [
"dep:tree-sitter-highlight",
"dep:tree-sitter-json",
]
syntax-python = [
"dep:tree-sitter-highlight",
"dep:tree-sitter-python",
]
syntax-ruby = [
"dep:tree-sitter-highlight",
"dep:tree-sitter-ruby",
]
syntax-rust = [
"dep:tree-sitter-highlight",
"dep:tree-sitter-rust",
]
syntax-toml = [
"dep:tree-sitter-highlight",
"dep:tree-sitter-toml-ng",
]
syntax-typescript = [
"dep:tree-sitter-highlight",
"dep:tree-sitter-typescript",
]
syntax-yaml = [
"dep:tree-sitter-highlight",
"dep:tree-sitter-yaml",
]
[lib]
name = "slt"
path = "src/lib.rs"
[[test]]
name = "layout_proptest"
path = "tests/layout_proptest.rs"
[[test]]
name = "render_check"
path = "tests/render_check.rs"
[[test]]
name = "run_static"
path = "tests/run_static.rs"
[[test]]
name = "snapshots"
path = "tests/snapshots.rs"
[[test]]
name = "tooltip"
path = "tests/tooltip.rs"
[[test]]
name = "widgets"
path = "tests/widgets.rs"
[[bench]]
name = "benchmarks"
path = "benches/benchmarks.rs"
harness = false
[dependencies.compact_str]
version = "0.9.0"
default-features = false
[dependencies.crossterm]
version = "0.28"
features = ["bracketed-paste"]
optional = true
[dependencies.image]
version = "0.25"
features = [
"png",
"jpeg",
]
optional = true
default-features = false
[dependencies.qrcode]
version = "0.14"
optional = true
default-features = false
[dependencies.serde]
version = "1"
features = ["derive"]
optional = true
[dependencies.tokio]
version = "1"
features = [
"rt",
"sync",
"macros",
"time",
]
optional = true
[dependencies.tree-sitter-bash]
version = "0.25"
optional = true
[dependencies.tree-sitter-c]
version = "0.24"
optional = true
[dependencies.tree-sitter-cpp]
version = "0.23"
optional = true
[dependencies.tree-sitter-css]
version = "0.25"
optional = true
[dependencies.tree-sitter-go]
version = "0.25"
optional = true
[dependencies.tree-sitter-highlight]
version = "0.26"
optional = true
[dependencies.tree-sitter-html]
version = "0.23"
optional = true
[dependencies.tree-sitter-java]
version = "0.23"
optional = true
[dependencies.tree-sitter-javascript]
version = "0.25"
optional = true
[dependencies.tree-sitter-json]
version = "0.24"
optional = true
[dependencies.tree-sitter-python]
version = "0.25"
optional = true
[dependencies.tree-sitter-ruby]
version = "0.23"
optional = true
[dependencies.tree-sitter-rust]
version = "0.24"
optional = true
[dependencies.tree-sitter-toml-ng]
version = "0.7"
optional = true
[dependencies.tree-sitter-typescript]
version = "0.23"
optional = true
[dependencies.tree-sitter-yaml]
version = "0.7"
optional = true
[dependencies.unicode-width]
version = "0.2"
[dev-dependencies.criterion]
version = "0.5"
features = ["html_reports"]
[dev-dependencies.insta]
version = "1"
[dev-dependencies.proptest]
version = "1"