[package]
edition = "2024"
rust-version = "1.98.0"
name = "clankerdiff-ratatui"
version = "0.1.3"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Embeddable Ratatui diff review widget"
readme = "README.md"
license = "MIT"
repository = "https://github.com/contextbridge/diff"
[features]
crossterm-backend = [
"ratatui/crossterm",
"dep:crossterm",
]
default = []
test-support = []
[lib]
name = "clankerdiff_ratatui"
path = "src/lib.rs"
[[example]]
name = "chat_embedding"
path = "examples/chat_embedding.rs"
[[example]]
name = "embedded_review"
path = "examples/embedded_review.rs"
required-features = ["crossterm-backend"]
[[example]]
name = "markdown_review"
path = "examples/markdown_review.rs"
required-features = ["crossterm-backend"]
[[example]]
name = "review"
path = "examples/review.rs"
required-features = ["crossterm-backend"]
[[example]]
name = "source_lines"
path = "examples/source_lines.rs"
[[example]]
name = "streaming_markdown"
path = "examples/streaming_markdown.rs"
[[example]]
name = "terminal_markdown"
path = "examples/terminal_markdown.rs"
[[test]]
name = "color_test"
path = "tests/color_test.rs"
[[test]]
name = "commands_test"
path = "tests/commands_test.rs"
[[test]]
name = "counting_backend"
path = "tests/counting_backend.rs"
[[test]]
name = "diff_preview_test"
path = "tests/diff_preview_test.rs"
[[test]]
name = "interaction_test"
path = "tests/interaction_test.rs"
[[test]]
name = "markdown_layout_test"
path = "tests/markdown_layout_test.rs"
[[test]]
name = "markdown_review_component_test"
path = "tests/markdown_review/component_test.rs"
[[test]]
name = "markdown_review_render_test"
path = "tests/markdown_review/render_test.rs"
required-features = ["test-support"]
[[test]]
name = "options_test"
path = "tests/options_test.rs"
[[test]]
name = "performance_contract"
path = "tests/performance_contract.rs"
required-features = ["test-support"]
[[test]]
name = "terminal_streaming"
path = "tests/terminal_streaming.rs"
required-features = ["test-support"]
[[test]]
name = "theme_picker_test"
path = "tests/theme_picker_test.rs"
[[bench]]
name = "markdown"
path = "benches/markdown.rs"
harness = false
required-features = ["test-support"]
[[bench]]
name = "rendering"
path = "benches/rendering.rs"
harness = false
required-features = ["test-support"]
[dependencies.bitflags]
version = "2.13.1"
[dependencies.clankerdiff-core]
version = "0.1.3"
[dependencies.clankerdiff-markdown]
version = "0.1.3"
features = ["review"]
[dependencies.clankerdiff-syntax]
version = "0.1.3"
[dependencies.clankerdiff-theme]
version = "0.1.3"
[dependencies.crossterm]
version = "0.29.0"
optional = true
[dependencies.imbl]
version = "7.0.1"
[dependencies.ratatui]
version = "0.30.0"
features = [
"std",
"layout-cache",
]
default-features = false
[dependencies.similar]
version = "3.2.0"
[dependencies.thiserror]
version = "2.0.20"
[dependencies.unicode-segmentation]
version = "1.13.3"
[dependencies.unicode-width]
version = "0.2.2"
[dev-dependencies.criterion]
version = "0.7.0"
[dev-dependencies.serde_json]
version = "1.0.151"
[dev-dependencies.tokio]
version = "1.47.1"
features = [
"fs",
"process",
"rt-multi-thread",
"macros",
"rt-multi-thread",
]
[lints.clippy.all]
level = "warn"
priority = -1
[lints.clippy.missing_errors_doc]
level = "allow"
priority = 0
[lints.clippy.missing_panics_doc]
level = "allow"
priority = 0
[lints.clippy.pedantic]
level = "warn"
priority = -1
[lints.rust]
unsafe_code = "forbid"