[package]
edition = "2024"
name = "ftui-core"
version = "0.2.1"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Terminal lifecycle, capabilities, and event parsing for FrankenTUI."
homepage = "https://github.com/Dicklesworthstone/frankentui"
documentation = "https://docs.rs/ftui-core"
readme = "README.md"
license-file = "LICENSE"
repository = "https://github.com/Dicklesworthstone/frankentui"
resolver = "2"
[features]
caps-probe = []
crossterm = ["dep:crossterm"]
default = []
test-helpers = []
tracing = ["dep:tracing"]
tracing-json = [
"tracing",
"dep:tracing-subscriber",
]
[lib]
name = "ftui_core"
path = "src/lib.rs"
[[test]]
name = "animation_test"
path = "tests/animation_test.rs"
[[test]]
name = "input_parity_test"
path = "tests/input_parity_test.rs"
[[test]]
name = "proptest_geometry_invariants"
path = "tests/proptest_geometry_invariants.rs"
[[test]]
name = "proptest_read_optimized_invariants"
path = "tests/proptest_read_optimized_invariants.rs"
[[test]]
name = "proptest_s3_fifo_invariants"
path = "tests/proptest_s3_fifo_invariants.rs"
[[test]]
name = "pty_terminal_session"
path = "tests/pty_terminal_session.rs"
[[bench]]
name = "read_optimized_bench"
path = "benches/read_optimized_bench.rs"
harness = false
[dependencies.ahash]
version = "0.8"
[dependencies.arc-swap]
version = "1.8.2"
[dependencies.bitflags]
version = "2.10.0"
[dependencies.tracing]
version = "0.1.41"
optional = true
[dependencies.tracing-subscriber]
version = "0.3.20"
features = [
"json",
"env-filter",
]
optional = true
[dependencies.unicode-display-width]
version = "0.3.0"
[dependencies.unicode-segmentation]
version = "1.12.0"
[dependencies.unicode-width]
version = "0.2.2"
[dependencies.web-time]
version = "1.1.0"
[dev-dependencies.criterion]
version = "0.5.1"
features = ["html_reports"]
[dev-dependencies.portable-pty]
version = "0.9.0"
[dev-dependencies.proptest]
version = "1.7.0"
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.crossterm]
version = "0.29.0"
optional = true
[target."cfg(unix)".dependencies.signal-hook]
version = "0.4.3"
features = ["iterator"]