[package]
name = "htoprs"
version = "0.1.0"
edition = "2021"
description = "A faithful Rust port of htop — the interactive process viewer"
license = "GPL-2.0-or-later"
authors = ["MenkeTechnologies"]
repository = "https://github.com/MenkeTechnologies/htoprs"
homepage = "https://menketechnologies.github.io/htoprs/"
documentation = "https://docs.rs/htoprs"
readme = "README.md"
keywords = ["htop", "process", "monitor", "top", "terminal"]
categories = ["command-line-utilities"]

[lib]
name = "htoprs"
path = "src/lib.rs"

[[bin]]
name = "htoprs"
path = "src/main.rs"

# Parity suite: run the reference htop (C original, 3.5.x) and htoprs on the
# same inputs and diff the output. Cargo does not auto-discover files under
# tests/parity/, so this aggregator file is the single registered target.
# Run: `cargo test --test parity`  (see tests/parity/main.rs).
[[test]]
name = "parity"
path = "tests/parity/main.rs"

[dependencies]
crossterm = "0.29.0"
libc = "0.2.186"
nix = "0.31.3"
unicode-width = "0.2.2"
serde = { version = "1.0.228", features = ["derive"] }
# Extensions-only: the themed help overlay / chooser / editor render into a
# ratatui Buffer. default-features off so ratatui pulls no terminal backend
# (and therefore no second crossterm) — htoprs drives the terminal via its own
# crossterm 0.29 directly.
ratatui = { version = "0.30.0", default-features = false, features = ["std"] }
# Extensions-only: persist the selected theme to ~/.config/htoprs/prefs.json.
serde_json = "1.0"
