Expand description
Wavecraft unified development server
This crate provides the complete development server infrastructure for
wavecraft start, including:
- WebSocket server (
ws) — IPC bridge between browser UI and Rust engine - Audio processing (
audio) — Optional real-time audio via OS devices - Hot-reload (
reload) — File watching, rebuild pipeline, and parameter reload - Parameter hosting (
host) — In-memory parameter storage with atomic audio bridge
§Architecture
┌────────────────────────┐
│ CLI (wavecraft start) │
│ thin wrapper │
└───────────┬────────────┘
│
▼
┌────────────────────────────────────────────┐
│ dev-server crate │
│ │
│ ┌──────────┐ ┌──────────┐ ┌───────────┐ │
│ │ WsServer │ │ Audio │ │ Reload │ │
│ │ (ws/) │ │ (audio/) │ │ (reload/) │ │
│ └────┬─────┘ └────┬─────┘ └─────┬─────┘ │
│ │ │ │ │
│ └──────┬───────┴──────────────┘ │
│ ▼ │
│ ┌─────────────────┐ │
│ │ DevServerHost │ │
│ │ (host.rs) │ │
│ └─────────────────┘ │
└────────────────────────────────────────────┘Re-exports§
pub use host::DevServerHost;pub use reload::guard::BuildGuard;pub use reload::rebuild::RebuildCallbacks;pub use reload::rebuild::RebuildPipeline;pub use reload::watcher::FileWatcher;pub use reload::watcher::WatchEvent;pub use session::DevSession;pub use ws::WsHandle;pub use ws::WsServer;pub use audio::atomic_params::AtomicParameterBridge;pub use audio::ffi_processor::DevAudioProcessor;pub use audio::ffi_processor::FfiProcessor;pub use audio::server::AudioConfig;pub use audio::server::AudioHandle;pub use audio::server::AudioServer;