[package]
edition = "2024"
name = "ftui-runtime"
version = "0.1.1"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Elm-style runtime loop and subscriptions for FrankenTUI."
homepage = "https://github.com/Dicklesworthstone/frankentui"
documentation = "https://docs.rs/ftui-runtime"
readme = "README.md"
license = "MIT"
repository = "https://github.com/Dicklesworthstone/frankentui"
resolver = "2"
[features]
default = []
render-thread = []
state-persistence = [
"dep:serde",
"dep:serde_json",
"dep:base64",
]
stdio-capture = []
telemetry = [
"dep:opentelemetry",
"dep:opentelemetry_sdk",
"dep:opentelemetry-otlp",
"dep:tracing-opentelemetry",
"dep:tracing-subscriber",
]
tracing = []
[lib]
name = "ftui_runtime"
path = "src/lib.rs"
[[test]]
name = "batch_quit"
path = "tests/batch_quit.rs"
[[test]]
name = "inline_reflow_policy"
path = "tests/inline_reflow_policy.rs"
[[test]]
name = "mpc_vs_pi_evaluation"
path = "tests/mpc_vs_pi_evaluation.rs"
[[test]]
name = "reactive_bindings_e2e"
path = "tests/reactive_bindings_e2e.rs"
[[test]]
name = "resize_migration_compat"
path = "tests/resize_migration_compat.rs"
[[test]]
name = "state_persistence_e2e"
path = "tests/state_persistence_e2e.rs"
[[bench]]
name = "telemetry_bench"
path = "benches/telemetry_bench.rs"
harness = false
required-features = ["telemetry"]
[dependencies.base64]
version = "0.22"
optional = true
[dependencies.crossterm]
version = "0.29.0"
[dependencies.ftui-core]
version = "0.1.1"
[dependencies.ftui-i18n]
version = "0.1.1"
[dependencies.ftui-layout]
version = "0.1.1"
[dependencies.ftui-render]
version = "0.1.1"
[dependencies.ftui-style]
version = "0.1.1"
[dependencies.ftui-text]
version = "0.1.1"
[dependencies.opentelemetry]
version = "0.31"
optional = true
[dependencies.opentelemetry-otlp]
version = "0.31"
features = [
"grpc-tonic",
"http-proto",
"reqwest-blocking-client",
]
optional = true
default-features = false
[dependencies.opentelemetry_sdk]
version = "0.31"
features = ["rt-tokio"]
optional = true
[dependencies.serde]
version = "1.0.227"
features = ["derive"]
optional = true
[dependencies.serde_json]
version = "1.0.145"
optional = true
[dependencies.tracing]
version = "0.1.41"
[dependencies.tracing-opentelemetry]
version = "0.32"
optional = true
[dependencies.tracing-subscriber]
version = "0.3.20"
features = [
"registry",
"env-filter",
]
optional = true
[dependencies.unicode-segmentation]
version = "1.12.0"
[dependencies.unicode-width]
version = "0.2.2"
[dev-dependencies.base64]
version = "0.22"
[dev-dependencies.criterion]
version = "0.8.2"
features = ["html_reports"]
[dev-dependencies.ftui-core]
version = "0.1.1"
features = ["test-helpers"]
[dev-dependencies.opentelemetry]
version = "0.31"
[dev-dependencies.opentelemetry_sdk]
version = "0.31"
features = ["testing"]
[dev-dependencies.proptest]
version = "1.7.0"
[dev-dependencies.serde]
version = "1.0.227"
features = ["derive"]
[dev-dependencies.serde_json]
version = "1.0.145"
[dev-dependencies.tempfile]
version = "3.22.0"
[dev-dependencies.tracing-opentelemetry]
version = "0.32"
[dev-dependencies.tracing-subscriber]
version = "0.3.20"
features = [
"registry",
"env-filter",
]