[package]
name = "px2ansi-rs"
default-run = "px2ansi-rs"
version.workspace = true
edition.workspace = true
authors.workspace = true
license.workspace = true
repository.workspace = true
readme = "README.md"
keywords = ["ansi", "pixel-art", "oklab", "rasterize", "colorspace"]
categories = ["command-line-utilities", "multimedia::images", "rendering"]
description = "CLI frontend for the px2ansi terminal art engine"
include = [
	"src/**/*",
	"Cargo.toml",
	"README.md",
	"../LICENSE",
	"../CHANGELOG.md",
]

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

[[bin]]
name = "generate-manpage"
path = "src/bin/generate_manpage.rs"

[dependencies]
px2ansi = {workspace = true}
anyhow = {workspace = true}
clap = {workspace = true}
clap_complete = {workspace = true}
clap_mangen = {workspace = true}
serde_json = {workspace = true}
serde = {workspace = true}
rand = {workspace = true}
rayon = {workspace = true, optional = true}
colored = {workspace = true}
fuzzy-matcher = {workspace = true}
dialoguer = {workspace = true}
image = {workspace = true}
ansi-width = "0.1.0"
confy = "2.0.0"
crossterm = {version = "0.29.0", default-features = false}
sysinfo = "0.38.4"
libc = "0.2.186"
unicode-width = "0.2.2"
# mimalloc.workspace = true

[dev-dependencies]
assert_cmd = "2.0"
predicates = {version = "3.0", default-features = false}


[features]
default = ["rasterize", "sixel", "parallel", "simd"]
rasterize = ["px2ansi/rasterize"]
sixel = ["px2ansi/sixel"]
parallel = ["px2ansi/parallel", "dep:rayon"]
simd = ["px2ansi/simd"]
full = ["rasterize", "sixel", "parallel", "simd"]

[lints]
workspace = true
