39 lines
1.7 KiB
TOML
39 lines
1.7 KiB
TOML
[package]
|
|
name = "kebab-tui"
|
|
version = { workspace = true }
|
|
edition = { workspace = true }
|
|
rust-version = { workspace = true }
|
|
license = { workspace = true }
|
|
repository = { workspace = true }
|
|
description = "Ratatui shell + Library pane for kebab — UI consumes kebab-app facade only (P9-1)"
|
|
|
|
[dependencies]
|
|
kebab-core = { path = "../kebab-core" }
|
|
kebab-config = { path = "../kebab-config" }
|
|
# UI facade rule (design §8): UI crates may only touch `kebab-app`. The
|
|
# search / store / embed / llm / rag layers stay invisible behind it.
|
|
kebab-app = { path = "../kebab-app" }
|
|
# p9-fb-22: `unstable-rendered-line-info` exposes
|
|
# `Paragraph::line_count(width)` for the Ask follow-tail scroll
|
|
# math. Pinned ratatui 0.28.x means the unstable surface is fixed
|
|
# until we deliberately bump the dep.
|
|
ratatui = { version = "0.28", features = ["unstable-rendered-line-info"] }
|
|
crossterm = "0.28"
|
|
anyhow = { workspace = true }
|
|
tracing = { workspace = true }
|
|
thiserror = { workspace = true }
|
|
time = { workspace = true }
|
|
serde_json = { workspace = true }
|
|
# Korean / wide-char column width — Ratatui's `Span` truncates by chars,
|
|
# not display width, so a list cell with `한` (width 2) followed by `a`
|
|
# (width 1) overflows by one column without explicit width accounting.
|
|
unicode-width = "0.2"
|
|
# p9-fb-11: parse markdown answer bodies into styled `Span`/`Line`s.
|
|
# Same parser the ingest pipeline uses (kebab-parse-md) — keeps the
|
|
# tokenizer behavior aligned with what the corpus is normalized as.
|
|
pulldown-cmark = { version = "0.13", default-features = false }
|
|
|
|
[dev-dependencies]
|
|
tempfile = { workspace = true }
|
|
kebab-app = { path = "../kebab-app" }
|