[package]
name = "ssh-portfolio"
version = "0.1.0"
edition = "2021"
description = "no"
authors = ["Erica Marigold <hi@devcomp.xyz>"]
build = "build.rs"

[features]
# TODO: CLI feature
default = ["blog"]
blog = [
    "dep:atrium-api",
    "dep:atrium-xrpc",
    "dep:atrium-xrpc-client",
    "dep:atrium-common",
    "dep:reqwest",
    "dep:ipld-core",
]

[dependencies]
actix-web = "4.11.0"
anyhow = "1.0.90"
async-trait = "0.1.85"
atrium-api = { version = "0.25.4", optional = true }
atrium-common = { version = "0.1.2", optional = true }
atrium-xrpc = { version = "0.12.3", optional = true }
atrium-xrpc-client = { version = "0.5.14", optional = true }
better-panic = "0.3.0"
bstr = "1.11.3"
clap = { version = "4.5.20", features = [
    "derive",
    "cargo",
    "wrap_help",
    "unicode",
    "string",
    "unstable-styles",
] }
color-eyre = "0.6.3"
config = "0.14.0"
crossterm = { version = "0.28.1", features = ["serde", "event-stream"] }
derive_deref = "1.1.1"
directories = "5.0.1"
figlet-rs = "0.1.5"
futures = "0.3.31"
human-panic = "2.0.2"
indoc = "2.0.5"
ipld-core = { version = "0.4.2", optional = true }
json5 = "0.4.1"
lazy_static = "1.5.0"
libc = "0.2.161"
mime_guess = "2.0.5"
pretty_assertions = "1.4.1"
ratatui = { version = "0.29.0", features = ["serde", "macros"] }
reqwest = { version = "0.12", features = ["rustls-tls"], optional = true }
russh = "0.49.2"
rust-embed = { version = "8.7.2", features = ["actix"] }
serde = { version = "1.0.211", features = ["derive"] }
serde_json = "1.0.132"
signal-hook = "0.3.17"
strip-ansi-escapes = "0.2.0"
strum = { version = "0.26.3", features = ["derive"] }
tokio = { version = "1.40.0", features = ["full"] }
tokio-util = "0.7.12"
tracing = "0.1.40"
tracing-error = "0.2.0"
tracing-subscriber = { version = "0.3.18", features = ["env-filter", "serde"] }

[build-dependencies]
anyhow = "1.0.90"
atrium-codegen = { git = "https://github.com/atrium-rs/atrium.git", rev = "ccc0213" }
ssh-key = { version = "0.6.7", features = ["getrandom", "crypto"] }
vergen-gix = { version = "1.0.2", features = ["build", "cargo"] }
