HTTP REST API server for VibeLang (core2 backend).
Provides a REST API and WebSocket endpoint for querying and controlling a running VibeLang session using the vibelang-core2 runtime.
Features
- Full CRUD operations for voices, patterns, melodies, sequences
- Transport control (play, stop, seek, tempo)
- Effect and sample management
- MIDI routing and callbacks
- Real-time WebSocket events
- Live state queries (active synths, meters)
Usage
use vibelang_http::{start_server, AppState};
use vibelang_core::RuntimeHandle;
let handle = runtime.handle();
let state = runtime.state();
tokio::spawn(async move {
start_server(handle, state, 1606, None).await;
});