这个项目能做什么
Strasbeat 是一个基于浏览器的实时编码环境,构建在 Strudel(TidalCycles 的 JavaScript 移植版)之上。它将 Strudel 包装在一个功能齐全的 IDE 质量编辑器中,使得模式的创建、编辑和版本控制感觉就像在 VSCode 中进行开发。核心编辑器包含 CodeMirror 6,提供对声音、和弦、音阶、Strudel 函数以及小记号标记的自动补全;悬停文档来源于 JSDoc;签名提示;Prettier 格式化(为 Strudel 的转译器恢复引号);以及 Figma 风格的数字拖动条,用于实时调整数字字面量。自定义的 Canvas2D 钢琴卷轴渲染每层颜色、拍/循环网格线和活动行标签。硬件 MIDI 桥接通过 superdough 支持实时演奏,并提供预设声音以及捕获到文件的流程,将演奏的短句写为真实的 Strudel 模式。离线 WAV 导出器以 48 kHz 16-bit 立体声工作,以规避上游音频图问题。模式是存储在磁盘上的纯 JavaScript 文件,可在浏览器或外部 IDE 中编辑,并通过 Vite HMR 保持同步。`progression()` 辅助函数(及其他运行时扩展)被注入到 eval 作用域中,使得可以使用一行代码进行和弦进行,配有和声音字典、节奏预设、罗马数字输入以及可选的贝司层。UI 包含带搜索的模式库、传输控制、应用内模式窗口以及带有持久强调色的设置抽屉。内置的控制台助手有助于声音发现和离线渲染探测。该项目采用 AGPL-3.0 许可证,继承自 Strudel 相同的许可证。
评论
0 评分人数达到10人后显示
登录后参与讨论。