content: [workspace]
  resolver = "2"
  members = [
      "crates/core",
      "crates/proto", 
      "crates/video",
      "crates/config",
      "crates/discovery",
      "crates/logging",
      "crates/orchestration",
      "crates/client",
      "crates/node", 
      "crates/constellation",
      "crates/tests"
  ]
  
  [workspace.package]
  version = "0.1.0"
  edition = "2021"
  authors = ["Maksym Stepanov master_of_zen@protonmail.com"]
  description = "Distributed Video Encoder"
  repository = "https://github.com/master-of-zen/ferris_swarm"
  keywords = ["av1", "encoder", "video", "multimedia", "rust"]
  categories = ["multimedia::encoding", "command-line-utilities"]
  license = "GPL-3.0"
  readme = "README.md"
  
  [workspace.dependencies]
  # Foundation
  ferris-swarm-core = { path = "crates/core" }
  ferris-swarm-proto = { path = "crates/proto" }
  ferris-swarm-logging = { path = "crates/logging" }
  ferris-swarm-video = { path = "crates/video" }
  ferris-swarm-config = { path = "crates/config" }
  ferris-swarm-discovery = { path = "crates/discovery" }
  ferris-swarm-orchestration = { path = "crates/orchestration" }
  ferris-swarm-client = { path = "crates/client" }
  ferris-swarm-node = { path = "crates/node" }
  ferris-swarm-constellation = { path = "crates/constellation" }
  
  # External dependencies
  tonic = { version = "0.9", features = ["gzip"]}
  prost = "0.11"
  tokio = { version = "1.28", features = ["full"] }
  tracing = "0.1"
  tracing-subscriber = { version = "0.3", features = ["env-filter"] }
  clap = { version = "4.3", features = ["derive", "env"] }
  anyhow = "1.0"
  thiserror = "1.0"
  uuid = { version = "1.3", features = ["v4", "serde"] }
  serde = { version = "1.0", features = ["derive"] }
  serde_json = "1.0"
  tempfile = "3.5"
  which = "4.4"
  config = "0.13"
  sha2 = "0.10"
  hex = "0.4.3"
  futures = "0.3.30"
  tracing-appender = "0.2"
  axum = { version = "0.7", features = ["ws", "macros"] }
  tower = { version = "0.4", features = ["util"] }
  tower-http = { version = "0.5", features = ["cors", "fs"] }
  tokio-tungstenite = "0.21"
  askama = { version = "0.12", features = ["with-axum"] }
  chrono = { version = "0.4", features = ["serde"] }
  toml = "0.8"
  reqwest = { version = "0.11", features = ["json"] }
  num_cpus = "1.16"
  hostname = "0.3"
  mdns = "3.0"
  if-addrs = "0.10"
  tonic-build = "0.9"