ACORDE · RUST / WASM

可检查、可嵌入的乐谱核心。

Acorde 是平台无关的 Rust 和 WebAssembly 库,提供可序列化乐谱、可撤销编辑、受限记谱 I/O、逻辑布局、确定性 SVG、播放事件投影和分析。

快速开始

乐谱语义、I/O 与布局使用 umbrella crate。渲染 SVG 时直接加入 acorde-render-svg。

[dependencies]
acorde = "1.2.3"
acorde-render-svg = "1.2.3"

最小编辑

ScoreEngine 校验命令并保留历史;UI 和文件仍由宿主负责。

use acorde_core::{Command, ScoreEngine, SetTempoCmd};

let mut engine = ScoreEngine::new();
engine.apply(Command::SetTempo(SetTempoCmd { bpm: 120 }))?;
engine.undo()?;

Crate 边界

acorde-core 负责语义和校验;acorde-io 负责记谱格式;acorde-layout 提供不依赖像素的逻辑几何;acorde-render-svg 生成确定性 SVG;acorde-wasm 提供 JavaScript 绑定。