[package]
name = "marten"
version = "0.4.0"
edition = "2021"
description = "A modern, accuracy-first image viewer for Linux."
authors = ["Jeremy Anderson"]
license = "GPL-2.0-or-later"
repository = "http://git.dcos.net/dcosnet/marten"
homepage = "http://git.dcos.net/dcosnet/marten"
keywords = ["image", "viewer", "iced", "linux", "photo"]
categories = ["graphics", "multimedia::images"]

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

[dependencies]
# GUI toolkit
iced = { version = "0.13", features = ["image", "tokio", "advanced", "svg"] }

# Image decoding (Tier 1)
image = { version = "0.25", default-features = false, features = [
    "png", "jpeg", "gif", "webp", "bmp", "ico", "avif",
    "rayon",
] }

# Image decoding (Tier 2)
jxl-oxide = "0.12"      # JPEG XL — pure-Rust decoder
tiff = "0.11"           # TIFF — direct decode (multi-page, 16-bit)
resvg = "0.47"          # SVG rendering (pulls in usvg + tiny-skia)
exr = "1.74"            # OpenEXR — pure-Rust HDR float
flate2 = "1"            # gzip decompression for .svgz

# File dialog
rfd = "0.15"

# Config loading (keymap.toml)
serde = { version = "1", features = ["derive"] }
toml = "0.8"
dirs = "5"

# Error handling
thiserror = "1"

# Async
tokio = { version = "1", features = ["fs", "io-util", "rt-multi-thread"] }

# Logging
log = "0.4"
env_logger = "0.11"

# Context menu actions
arboard = "3"          # clipboard (copy path, copy image)
trash = "5"            # move to trash
kamadak-exif = "0.6"   # EXIF for properties panel

[dev-dependencies]
tempfile = "3"

[profile.release]
opt-level = 3
lto = "thin"
codegen-units = 1
strip = "symbols"
