HTTP REST API server for VibeLang.
Provides a REST API and WebSocket endpoint for querying and controlling a running VibeLang session.
Features
- Full CRUD operations for voices, patterns, melodies, sequences
- Transport control (play, stop, seek, tempo)
- Effect and sample management
- MIDI routing and recording
- Real-time WebSocket events
- Live state queries (active synths, meters)
Usage
use vibelang_http::{start_server, EvalJob, EvalSender};
use vibelang_core::RuntimeHandle;
let (eval_tx, eval_rx) = std::sync::mpsc::channel();
tokio::spawn(async move {
start_server(handle, 1606, Some(eval_tx)).await;
});