[package]
name = "rustelo_cli"
version = "0.1.0"
edition = "2021"
description = "Rustelo Framework - Cargo subcommand for project management and build tools"
license = "MIT"
repository = "https://github.com/your-org/rustelo"

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

[dependencies]
# Framework dependencies
rustelo_core = { workspace = true , features = ["http"] }
rustelo_tools = { path = "../../../foundation/crates/rustelo_tools" }

# CLI framework
clap = { workspace = true }

# File system operations
walkdir = { workspace = true }
ignore = { workspace = true }
tempfile = { workspace = true }
notify = { workspace = true, optional = true }

# Configuration and templating
toml = { workspace = true }
serde = { workspace = true }
serde_json = { workspace = true }
serde_yaml = { workspace = true }
tera = { workspace = true, optional = true }

# Process management
tokio = { workspace = true, features = ["rt-multi-thread", "time", "macros", "signal", "fs"] }

# Utilities
uuid = { workspace = true }
chrono = { workspace = true }
reqwest = { workspace = true, features = ["json"] }
shellexpand = { workspace = true }
semver = { workspace = true }
thiserror = { workspace = true }
anyhow = { workspace = true }
tracing = { workspace = true }
tracing-subscriber = { workspace = true, features = ["env-filter"] }
console_log = { workspace = true }
pathdiff = { workspace = true }

# Code generation (optional)
quote = { workspace = true, optional = true }
syn = { workspace = true, optional = true }
proc-macro2 = { workspace = true, optional = true }

[features]
default = ["watch", "generate", "serve"]
watch = ["dep:notify"]
generate = ["dep:tera", "dep:quote", "dep:syn", "dep:proc-macro2"]
serve = []
