[package]
name                   = "pixtuoid"
description            = "Terminal pixel-art office for AI coding agents"
version.workspace      = true
edition.workspace      = true
rust-version.workspace = true
license.workspace      = true
repository.workspace   = true
authors.workspace      = true
homepage.workspace     = true
keywords.workspace     = true
categories.workspace   = true

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

[dependencies]
pixtuoid-core  = { path = "../pixtuoid-core", version = "0.9.0" }
tokio              = { workspace = true, features = ["rt-multi-thread", "macros", "signal", "sync", "time", "net", "fs", "io-util"] }
ratatui            = { workspace = true }
crossterm          = { workspace = true }
clap               = { workspace = true }
serde              = { workspace = true }
serde_json         = { workspace = true }
toml               = { workspace = true }
toml_edit          = { workspace = true }
anyhow             = { workspace = true }
tracing            = { workspace = true }
tracing-subscriber = { workspace = true }
which              = "8"
# clock feature gives us Local::now() w/ system timezone for the wall clock.
chrono             = { version = "0.4", default-features = false, features = ["clock"] }
# palette gives Lab-space color blending — perceptually-correct twilight
# transitions and dim overlays vs naive sRGB linear blend.
palette            = { version = "0.7", default-features = false, features = ["std"] }
open               = "5"

# GetShortPathNameW for the Codex/Reasonix Windows hook path: resolve a
# space/metacharacter-bearing install path to its DOS 8.3 short form so cmd.exe /C
# can invoke it (#195). Same 0.61 major as pixtuoid-core — no second build.
[target.'cfg(windows)'.dependencies]
windows-sys = { version = "0.61", features = ["Win32_Storage_FileSystem"] }

[dev-dependencies]
tempfile = "3"
# test-util: paused-clock signal-arm tests in runtime/driver.rs (headless_loop).
tokio    = { workspace = true, features = ["test-util"] }
image    = { version = "0.25", default-features = false, features = ["png", "gif"] }
insta    = "1"
font8x8 = "0.3.1"

[[example]]
name = "snapshot"
path = "examples/snapshot.rs"
test = true

[package.metadata.deb]
section = "utils"
assets = [
    ["target/release/pixtuoid", "usr/bin/", "755"],
]
extended-description = "Terminal-native, multi-agent pixel-art visualizer for AI coding agents. Each running Claude Code session appears as an animated sprite in a top-down ASCII office."
