# ECP-0002: initial technical direction Status: Draft ## Problem We need a coherent starting stack that aligns with the constitution and can evolve without locking the project into fragile dependencies. ## Decision Adopt the following initial technical direction: - Rust-first core for protocol and node runtime. - Media over QUIC (MoQ) for publish/subscribe media delivery. - Deterministic chunking profiles to support de-duplication and availability. - iroh as the programmable mesh substrate for peer routing. - Client surfaces: Tauri desktop app, CLI, and static web UI. These are starting points, not immutable commitments. They may be revised by later ECPs. ## Alternatives considered - HLS/DASH for primary delivery: rejected due to mismatch with low-latency pub/sub goals. - Centralized relay only: rejected due to resilience and user sovereignty goals. - Non-Rust core: deferred to keep early integration cohesive. ## Rollout / teardown - Scaffold crates and documentation that align with this direction. - Revisit once MoQ implementations and browser support stabilize.