Skip to content

Architecture

Prest is a Rust workspace with a Dioxus WASM frontend and host-specific DAW integrations.

Area Responsibility
domain Songs, setlists, transport state, and core models
application Host-agnostic operations, transport contracts, invalidation, and notifications
protocol Protobuf envelopes and codecs
frontend Static Dioxus browser application for Editor, Performance, and Setup
server Axum/Tokio HTTP and WebSocket runtime plus embedded assets
discovery Canonical local identity and mDNS claims
daws/reaper Native plugin, REAPER API loader, and main-thread dispatch
daws/ableton Rust bridge and Python Remote Script
  1. The browser loads static WASM application assets from the local runtime.
  2. It opens a binary WebSocket to /ws.
  3. Client and server exchange protobuf envelopes.
  4. The server dispatches host operations through the active DAW boundary.
  5. Invalidation and state messages keep browser views aligned with host state.

REAPER embeds the runtime directly in its plugin. Ableton’s Remote Script launches the separate bridge runtime.

The runtime binds to local interfaces and has no authentication. Development changes must preserve prominent private-network guidance and must not imply that local-only operation is itself a security guarantee.