Architecture
Monorepo Layout
Data Flow
Muse Player uses a strict offline pre-render pipeline. The browser cannot parse MXL/MusicXML files — all rendering happens server-side, and the browser only consumes pre-rendered static artifacts.
The pipeline runs in two phases:
Phase 1: Pre-rendering (build time)
Pre-rendering can be done via:
- CLI:
muse-render score.mxl -o output/writes static files to disk. - Node.js API:
renderScore(buffer)returns all data in memory.

